From b8de520fa696d8a95393aa3ff544c5a6f5c36001 Mon Sep 17 00:00:00 2001
From: 吴羡 <16976746+Xian-TT3@user.noreply.gitee.com>
Date: 星期三, 30 九月 2026 15:33:41 +0800
Subject: [PATCH] 宁夏万通需求:出库单行支持主/辅单位录入;物料型号维护;考勤节假日配置时间段;设备批量删除;质检导出按筛选条件

---
 src/views/wls/returnvendor/data.ts |   43 +++++++++++++++++++++++++++++--------------
 1 files changed, 29 insertions(+), 14 deletions(-)

diff --git a/src/views/wls/returnvendor/data.ts b/src/views/wls/returnvendor/data.ts
index 7a4442d..cc98016 100644
--- a/src/views/wls/returnvendor/data.ts
+++ b/src/views/wls/returnvendor/data.ts
@@ -1,5 +1,6 @@
 import type { VbenFormApi, VbenFormSchema } from '#/adapter/form';
 import type { VxeTableGridOptions } from '#/adapter/vxe-table';
+import type { MesMdItemApi } from '#/api/mes/md/item';
 import type { MesWmMaterialStockApi } from '#/api/mes/wm/materialstock';
 import type { MesWmReturnVendorApi } from '#/api/mes/wm/returnvendor';
 import type { MesWmReturnVendorDetailApi } from '#/api/mes/wm/returnvendor/detail';
@@ -17,6 +18,10 @@
 import { ErpPurchaseOrderSelect } from '#/views/erp/purchase/order/components';
 import { WmBatchSelect } from '#/views/wls/batch/components';
 import { WmMaterialStockSelect } from '#/views/wls/materialstock/components';
+import {
+  buildItemUnitSchema,
+  useLineUnitHandlers,
+} from '#/views/wls/utils/item-unit-convert';
 import {
   WmWarehouseAreaSelect,
   WmWarehouseLocationSelect,
@@ -301,9 +306,24 @@
       minWidth: 120,
     },
     {
+      field: 'itemModel',
+      title: '鐗╂枡鍨嬪彿',
+      minWidth: 120,
+    },
+    {
       field: 'unitMeasureName',
-      title: '鍗曚綅',
-      width: 80,
+      title: '涓昏閲忓崟浣�',
+      width: 100,
+    },
+    {
+      field: 'enterUnitMeasureName',
+      title: '褰曞叆鍗曚綅',
+      width: 90,
+    },
+    {
+      field: 'enterQuantity',
+      title: '褰曞叆鏁伴噺',
+      width: 100,
     },
     {
       field: 'quantity',
@@ -333,6 +353,7 @@
   vendorId?: number,
   formApi?: VbenFormApi,
 ): VbenFormSchema[] {
+  const unitHandlers = useLineUnitHandlers(formApi);
   return [
     {
       fieldName: 'itemId',
@@ -340,21 +361,15 @@
       component: markRaw(MdItemSelect),
       componentProps: {
         placeholder: '璇烽�夋嫨浜у搧鐗╂枡',
+        // 鍒囨崲浜у搧鍚庯紝閲嶆柊璁板綍鐗╂枡涓诲崟浣嶅苟娓呯┖鍨嬪彿銆佸綍鍏ュ崟浣嶅彛寰�
+        onChange: async (item?: MesMdItemApi.Item) => {
+          await unitHandlers.handleItemChange(item?.id);
+        },
       },
       rules: 'selectRequired',
     },
-    {
-      fieldName: 'quantity',
-      label: '閫�璐ф暟閲�',
-      component: 'InputNumber',
-      componentProps: {
-        class: '!w-full',
-        min: 0,
-        placeholder: '璇疯緭鍏ラ��璐ф暟閲�',
-        precision: 2,
-      },
-      rules: 'required',
-    },
+    // 鐗╂枡鍨嬪彿 / 褰曞叆鍗曚綅 / 褰曞叆鏁伴噺 / 閫�璐ф暟閲忥紙鐗╂枡涓诲崟浣嶅彛寰勶級
+    ...buildItemUnitSchema(formApi, { quantityLabel: '閫�璐ф暟閲�' }),
     {
       fieldName: 'batchId',
       label: '鎵规鍙�',

--
Gitblit v1.9.3