From 1c1af9b0fc10778ae5ac13cc68fd4030affbcfe1 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期三, 09 九月 2026 10:59:53 +0800
Subject: [PATCH] feat(wm): 新增SN码管理和设备入库功能

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

diff --git a/src/api/mes/wm/sn/index.ts b/src/api/mes/wm/sn/index.ts
index 5f0da60..bac987e 100644
--- a/src/api/mes/wm/sn/index.ts
+++ b/src/api/mes/wm/sn/index.ts
@@ -1,4 +1,4 @@
-import type { PageParam, PageResult } from '../../../../packages/effects/request/src';
+锘縤mport type { PageParam, PageResult } from '@vben/request';
 
 import { requestClient } from '#/api/request';
 
@@ -13,7 +13,7 @@
     specification?: string; // 瑙勬牸鍨嬪彿
     unitName?: string; // 鍗曚綅鍚嶇О
     batchCode?: string; // 鎵规鍙�
-    workOrderId?: number; // 鐢熶骇宸ュ崟缂栧彿
+    workOrderId?: number; // 鐢熶骇璁㈠崟缂栧彿
     createTime?: Date; // 鐢熸垚鏃堕棿
   }
 
@@ -28,15 +28,68 @@
     specification?: string; // 瑙勬牸鍨嬪彿
     unitName?: string; // 鍗曚綅鍚嶇О
     batchCode?: string; // 鎵规鍙�
-    workOrderId?: number; // 鐢熶骇宸ュ崟缂栧彿
+    workOrderId?: number; // 鐢熶骇璁㈠崟缂栧彿
+    status?: number; // 鐘舵�侊紙1-鍦ㄥ簱 2-宸插嚭搴擄級
+    warehouseId?: number; // 鍦ㄥ簱浠撳簱 ID
+    locationId?: number; // 鍦ㄥ簱搴撳尯 ID
+    areaId?: number; // 鍦ㄥ簱搴撲綅 ID
     createTime?: Date; // 鐢熸垚鏃堕棿
+  }
+
+  /** MES SN 鐮佸崟浠惰鎯� */
+  export interface SnDetail {
+    id?: number; // 缂栧彿
+    code?: string; // SN 鐮�
+    itemId?: number; // 鐗╂枡缂栧彿
+    itemCode?: string; // 鐗╂枡缂栫爜
+    itemName?: string; // 鐗╂枡鍚嶇О
+    batchCode?: string; // 鎵规鍙�
+    status?: number; // 鐘舵�侊紙1-鍦ㄥ簱 2-宸插嚭搴擄級
+    warehouseId?: number; // 鍦ㄥ簱浠撳簱 ID
+    locationId?: number; // 鍦ㄥ簱搴撳尯 ID
+    areaId?: number; // 鍦ㄥ簱搴撲綅 ID
+    lastTransactionType?: number; // 鏈�杩戜簨鍔$被鍨嬶紙1-鍏ュ簱 2-鍑哄簱锛�
+    lastTransactionTypeName?: string; // 鏈�杩戜簨鍔$被鍨嬪悕绉�
+    lastTransactionQuantity?: number; // 鏈�杩戜簨鍔″彉鍔ㄦ暟閲�
+    lastTransactionBizType?: number; // 鏈�杩戜簨鍔′笟鍔$被鍨�
+    lastTransactionBizCode?: string; // 鏈�杩戜簨鍔′笟鍔″崟鍙�
+    lastTransactionTime?: string; // 鏈�杩戜簨鍔″彂鐢熸椂闂�
+  }
+
+  /** SN 鐮佸叆搴撶櫥璁板弬鏁� */
+  export interface SnInStock {
+    code?: string; // SN 鐮�
+    itemId?: number; // 鐗╂枡缂栧彿
+    warehouseId?: number; // 浠撳簱 ID
+    locationId?: number; // 搴撳尯 ID
+    areaId?: number; // 搴撲綅 ID
+    batchCode?: string; // 鎵规鍙�
+    remark?: string; // 澶囨敞
+  }
+
+  /** SN 鐮佸嚭搴撴牳閿�鍙傛暟 */
+  export interface SnOutStock {
+    code?: string; // SN 鐮�
+    itemId?: number; // 鐗╂枡缂栧彿
+    remark?: string; // 澶囨敞
+  }
+
+  /** SN 鐮佸湪搴�/鐘舵�佸垎椤垫煡璇㈠弬鏁� */
+  export interface SnInStockPageParams extends PageParam {
+    code?: string; // SN 鐮�
+    itemId?: number; // 鐗╂枡缂栧彿
+    batchCode?: string; // 鎵规鍙�
+    warehouseId?: number; // 浠撳簱 ID
+    locationId?: number; // 搴撳尯 ID
+    areaId?: number; // 搴撲綅 ID
+    status?: number; // 鐘舵�侊紙1-鍦ㄥ簱 2-宸插嚭搴擄級
   }
 
   /** MES SN 鐮佺敓鎴愬弬鏁� */
   export interface SnGenerate {
     itemId?: number; // 鐗╂枡缂栧彿
     batchCode?: string; // 鎵规鍙�
-    workOrderId?: number; // 鐢熶骇宸ュ崟缂栧彿
+    workOrderId?: number; // 鐢熶骇璁㈠崟缂栧彿
     count?: number; // 鐢熸垚鏁伴噺
   }
 
@@ -77,6 +130,31 @@
   });
 }
 
+/** SN 鐮佸叆搴撶櫥璁� */
+export function registerSnInStock(data: MesWmSnApi.SnInStock) {
+  return requestClient.post<boolean>('/mes/wm/sn/in-stock', data);
+}
+
+/** SN 鐮佸嚭搴撴牳閿� */
+export function outboundSn(data: MesWmSnApi.SnOutStock) {
+  return requestClient.post<boolean>('/mes/wm/sn/out-stock', data);
+}
+
+/** 鏌ヨ SN 鐮佸崟浠惰鎯� */
+export function getSnDetail(code: string) {
+  return requestClient.get<MesWmSnApi.SnDetail>('/mes/wm/sn/detail', {
+    params: { code },
+  });
+}
+
+/** 鏌ヨ SN 鐮佸湪搴�/鐘舵�佸垎椤� */
+export function getSnInStockPage(params: MesWmSnApi.SnInStockPageParams) {
+  return requestClient.get<PageResult<MesWmSnApi.Sn>>(
+    '/mes/wm/sn/in-stock-page',
+    { params },
+  );
+}
+
 /** 瀵煎嚭 SN 鐮佸垎缁� Excel */
 export function exportSnGroupExcel(params: MesWmSnApi.PageParams) {
   return requestClient.download('/mes/wm/sn/group-export-excel', { params });

--
Gitblit v1.9.3