From 21599300cc73ff7384b74cc5e4ac2cbd82bdc293 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期三, 28 十月 2026 18:34:29 +0800
Subject: [PATCH] feat(wls): 更新销售退货功能支持关联销售出库单

---
 src/api/mes/pro/bagCode/index.ts |   86 +++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 82 insertions(+), 4 deletions(-)

diff --git a/src/api/mes/pro/bagCode/index.ts b/src/api/mes/pro/bagCode/index.ts
index 5504d17..54cb12d 100644
--- a/src/api/mes/pro/bagCode/index.ts
+++ b/src/api/mes/pro/bagCode/index.ts
@@ -5,9 +5,11 @@
 export namespace MesProBagCodeApi {
   /** 琚嬬爜锛堜竴琚嬩竴鐮侊級 */
   export interface BagCode {
+    inboundTime?: string;
     id?: number; // 缂栧彿
     uuid?: string; // 鐢熸垚缁� UUID
     code?: string; // 琚嬬爜锛堜簩缁寸爜鍐呭锛�
+    businessCode?: string; // 鍐呴儴鍑哄叆搴撲笟鍔$爜锛堢函鐮佸�硷級
     bagNo?: number; // 鎵规鍐呰搴忓彿
     batchId?: number; // 鐢熶骇鎵规缂栧彿
     batchCode?: string; // 鎵规鍙�
@@ -29,6 +31,7 @@
   /** 琚嬬爜鍒嗛〉鏌ヨ鍙傛暟 */
   export interface PageParams extends PageParam {
     code?: string;
+    businessCode?: string;
     batchId?: number;
     batchCode?: string;
     uuid?: string;
@@ -38,20 +41,24 @@
     createTime?: string[];
   }
 
-  /** 鐢熸垚鏁版嵁鍖呰姹傦紙鍝佺涓昏閲忓崟浣嶇被鍨嬩负 N鍗冨厠 鏃舵寜鎵樼洏鏁版崲绠楄鏁帮紱涓� 鍚� 鏃舵棤鎵樼洏銆佺洿鎺ヨ緭鍏ヨ鐮佹暟锛� */
+  /** 鐢熸垚鏁版嵁鍖呰姹傦紙鍝佺涓昏閲忓崟浣嶇被鍨嬩负 N琚� 鏃舵寜鎵樼洏鏁版崲绠楄鏁帮紱涓� 鍚� 鏃舵棤鎵樼洏銆佺洿鎺ヨ緭鍏ヨ鐮佹暟锛� */
   export interface GenerateParams {
     itemId: number; // 鍝佺锛堢墿鏂欙級缂栧彿
-    palletCount?: number; // 鎵樼洏鏁帮紙48鍗冨厠/100鍗冨厠 鍝佺蹇呭~锛�
+    palletCount?: number; // 鎵樼洏鏁帮紙48琚�/100琚� 鍝佺蹇呭~锛�
     bagCount?: number; // 琚嬬爜鏁帮紙鍚ㄥ搧绉嶅繀濉級
     remark?: string; // 澶囨敞
+    requestId?: string; // 骞傜瓑閿細缃戠粶閲嶈瘯澶嶇敤鍚屼竴涓��
   }
 
   export interface GenerateResult {
     uuid?: string; // 鐢熸垚缁� UUID
-    type?: string; // 鍝佺涓昏閲忓崟浣嶇被鍨嬶紙48鍗冨厠/100鍗冨厠/鍚級
+    type?: string; // 鍝佺涓昏閲忓崟浣嶇被鍨嬶紙48琚�/100琚�/鍚級
     perPallet?: number; // 姣忔墭琚嬫暟锛堝惃鍝佺涓� 0锛�
     totalCount?: number; // 鐢熸垚琚嬬爜鎬绘暟
-    palletIds?: number[]; // 鑷姩鐢熸垚鐨勬墭鐩樼紪鍙峰垪琛紙鍚ㄥ搧绉嶄负绌猴級
+    palletCount?: number; // 鎵樼洏鎬绘暟锛堝師濮嬫暟鎹负 0锛�
+    palletIds?: number[]; // 鑷姩鐢熸垚鐨勬墭鐩樼紪鍙峰垪琛紙浠呭悓姝ュ畬鎴愯繑鍥烇紝鍚ㄥ搧绉嶄负绌猴級
+    async?: boolean; // true=宸茶浆鍚庡彴浠诲姟
+    taskId?: number; // 鍚庡彴浠诲姟缂栧彿锛堝紓姝ユā寮忚繑鍥烇級
   }
 
   /** 鐢熸垚鍘熷琚嬬爜璇锋眰锛堜粎鍝佺+琚嬬爜鏁伴噺锛屼笉鍏宠仈璁¢噺鍗曚綅绫诲瀷銆佷笉鐢熸垚鎵樼洏锛� */
@@ -59,6 +66,28 @@
     itemId: number; // 鍝佺锛堢墿鏂欙級缂栧彿
     count: number; // 琚嬬爜鏁伴噺
     remark?: string; // 澶囨敞
+    requestId?: string; // 骞傜瓑閿細缃戠粶閲嶈瘯澶嶇敤鍚屼竴涓��
+  }
+
+  /** 琚嬬爜鐢熸垚浠诲姟锛堝ぇ鎵归噺鐢熸垚杞悗鍙板悗鐨勮繘搴︼級 */
+  export interface GenerateTask {
+    id: number; // 浠诲姟缂栧彿
+    bizType?: string; // PACKAGE锛堟暟鎹寘锛�/ RAW锛堝師濮嬫暟鎹級
+    status?: number; // 10 鎺掗槦涓� / 20 鐢熸垚涓� / 25 鍙栨秷涓� / 30 宸插畬鎴� / 40 宸插彇娑� / 50 宸插け璐�
+    statusName?: string; // 鐘舵�佸悕绉�
+    progress?: number; // 杩涘害鐧惧垎姣� 0~100
+    uuid?: string; // 鐢熸垚缁� UUID
+    itemId?: number; // 鍝佺缂栧彿
+    itemCode?: string; // 鍝佺缂栫爜
+    itemName?: string; // 鍝佺鍚嶇О
+    unitType?: string; // 璁¢噺鍗曚綅绫诲瀷
+    perPallet?: number; // 姣忔墭琚嬫暟
+    palletCount?: number; // 鎵樼洏鏁�
+    totalCount?: number; // 琚嬬爜鎬绘暟
+    finishedCount?: number; // 宸茬敓鎴愯鐮佹暟
+    errorMsg?: string; // 澶辫触鍘熷洜
+    createTime?: string; // 鍒涘缓鏃堕棿
+    finishTime?: string; // 瀹屾垚/缁堟鏃堕棿
   }
 
   export interface BindBatchParams {
@@ -107,8 +136,10 @@
 
   /** 鎵爜杩芥函淇℃伅 */
   export interface BagCodeTrace {
+    inboundTime?: string;
     id?: number; // 琚嬬爜缂栧彿
     code?: string; // 琚嬬爜锛堜簩缁寸爜鍐呭锛�
+    businessCode?: string; // 鍐呴儴鍑哄叆搴撲笟鍔$爜
     bagNo?: number; // 琚嬪簭鍙�
     status?: number; // 琚嬬爜鐘舵��
     printTime?: string; // 瀵煎嚭鍗板埛鏃堕棿
@@ -147,6 +178,21 @@
   return requestClient.post<MesProBagCodeApi.GenerateResult>(
     '/mes/pro/bag-code/raw-generate',
     data,
+  );
+}
+
+/** 鏌ヨ琚嬬爜鐢熸垚浠诲姟锛堝ぇ鎵归噺鐢熸垚鐨勮繘搴﹁疆璇級 */
+export function getBagCodeGenerateTask(id: number) {
+  return requestClient.get<MesProBagCodeApi.GenerateTask>(
+    '/mes/pro/bag-code/generate-task/get',
+    { params: { id } },
+  );
+}
+
+/** 鍙栨秷琚嬬爜鐢熸垚浠诲姟锛堝仠姝㈢敓鎴愬苟娓呯悊鍗婃垚鍝侊級 */
+export function cancelBagCodeGenerateTask(id: number) {
+  return requestClient.post<boolean>(
+    `/mes/pro/bag-code/generate-task/cancel?id=${id}`,
   );
 }
 
@@ -192,6 +238,16 @@
   );
 }
 
+/**
+ * 鎵爜杩芥函锛氭牴鎹紪鐮佽В鏋愬叾绫诲瀷锛坆ag / pallet / batch锛夈��
+ * 缂栫爜缁熶竴涓恒��16 浣嶇函鏁板瓧銆嶅悗鏃犳硶鎸夊墠缂�鍒ゆ柇绫诲瀷锛屾敼鐢卞悗绔В鏋愶紱鍧囦笉鍖归厤杩斿洖 null銆�
+ */
+export function resolveTraceType(code: string) {
+  return requestClient.get<'bag' | 'batch' | 'pallet' | null>(
+    `/mes/pro/trace/resolve-type?code=${encodeURIComponent(code)}`,
+  );
+}
+
 /** 鏌ヨ琚嬬爜鍒嗛〉 */
 export function getBagCodePage(params: MesProBagCodeApi.PageParams) {
   return requestClient.get<PageResult<MesProBagCodeApi.BagCode>>(
@@ -207,6 +263,18 @@
   );
 }
 
+/** 鍒嗛〉鏌ヨ鍙粦瀹氭壒娆$殑鍚ㄨ锛堟棤鎵樼洏涓旀湭缁戝畾鎵规锛屽搧绉嶈閲忓崟浣嶄负鍚級 */
+export function getUnboundTonBagPage(params: {
+  keyword?: string;
+  pageNo: number;
+  pageSize: number;
+}) {
+  return requestClient.get<PageResult<MesProBagCodeApi.BagCode>>(
+    '/mes/pro/bag-code/unbound-ton-bag-page',
+    { params },
+  );
+}
+
 /** 鎵归噺瀵煎嚭琚嬬爜 Excel锛堜氦浠樺嵃鍒凤級 */
 export function exportBagCodeExcel(params: MesProBagCodeApi.PageParams) {
   return requestClient.download('/mes/pro/bag-code/export-excel', { params });
@@ -216,3 +284,13 @@
 export function exportBagQr(params: { uuid?: string; batchId?: number }) {
   return requestClient.download('/mes/pro/bag-code/export-qr', { params });
 }
+
+/** 琛ョ敓鎴愬凡鏈夎鐮佺殑涓氬姟鐮侊紝閲嶅鎿嶄綔涓嶆洿鎹㈠凡鏈夌爜鍊笺�� */
+export function generateBagBusinessCodes(ids: number[]) {
+  return requestClient.post<number>('/mes/pro/bag-code/generate-business-code', { ids });
+}
+
+/** 涓氬姟浜岀淮鐮佷粎缂栫爜瀛樺偍鐨勪笟鍔$爜鍊硷紝涓嶆嫾鎺ヨ拷婧綉鍧�銆� */
+export function exportBagBusinessQr(params: { uuid?: string; batchId?: number }) {
+  return requestClient.download('/mes/pro/bag-code/export-business-qr', { params });
+}

--
Gitblit v1.9.3