From bdaa472dc215775e5d306b7046af0bc1111c718d Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期五, 14 八月 2026 15:58:06 +0800
Subject: [PATCH] feat(bpm): 添加业务附件配置功能

---
 src/views/mes/qc/batchtrace/index.vue |   28 ++++++++++++++++++++++++++--
 1 files changed, 26 insertions(+), 2 deletions(-)

diff --git a/src/views/mes/qc/batchtrace/index.vue b/src/views/mes/qc/batchtrace/index.vue
index 729d9e3..1762b35 100644
--- a/src/views/mes/qc/batchtrace/index.vue
+++ b/src/views/mes/qc/batchtrace/index.vue
@@ -2,10 +2,12 @@
 import type { VxeTableGridOptions } from '#/adapter/vxe-table';
 import type { MesWmBatchApi } from '#/api/mes/wm/batch';
 
-import { Page, useVbenModal } from '../../../../packages/effects/common-ui/src';
+import { Page, useVbenModal } from '@vben/common-ui';
+
+import { Input, message } from 'ant-design-vue';
 
 import { ACTION_ICON, TableAction, useVbenVxeGrid } from '#/adapter/vxe-table';
-import { getBatchPage } from '#/api/mes/wm/batch';
+import { getBatchBySn, getBatchPage } from '#/api/mes/wm/batch';
 
 import { useGridColumns, useGridFormSchema } from './data';
 import TraceDetail from './modules/trace-detail.vue';
@@ -18,6 +20,19 @@
 /** 鎵撳紑鎵规杩芥函璇︽儏 */
 function handleTrace(row: MesWmBatchApi.Batch) {
   detailModalApi.setData(row).open();
+}
+
+/** 鏍规嵁 SN 鍙嶆煡鎵规骞舵墦寮�璇︽儏 */
+async function handleSearchBySn(sn: string) {
+  if (!sn) {
+    return;
+  }
+  const batch = await getBatchBySn(sn.trim());
+  if (batch) {
+    handleTrace(batch);
+  } else {
+    message.warning(`鏈壘鍒� SN銆�${sn}銆嶅搴旂殑鎵规`);
+  }
 }
 
 const [Grid] = useVbenVxeGrid({
@@ -54,6 +69,15 @@
 <template>
   <Page auto-content-height><DetailModal />
 
+    <div class="mb-3 w-80">
+      <Input.Search
+        placeholder="杈撳叆 SN 搴忓垪鍙峰弽鏌ユ壒娆�"
+        enter-button="鍙嶆煡"
+        allow-clear
+        @search="handleSearchBySn"
+      />
+    </div>
+
     <Grid table-title="鎵规杩芥函鍒楄〃">
       <template #actions="{ row }">
         <TableAction

--
Gitblit v1.9.3