From e4994fccfb49ebfb108ba62cbd82aea4e004f6d8 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期四, 15 十月 2026 10:02:46 +0800
Subject: [PATCH] fix(mes/qc): 不合格品处理单的不合格物料改查 MDM 物料

---
 src/views/wls/miscissue/data.ts |   57 +++++++++++++++++++++++++++++----------------------------
 1 files changed, 29 insertions(+), 28 deletions(-)

diff --git a/src/views/wls/miscissue/data.ts b/src/views/wls/miscissue/data.ts
index 03c9a89..bb784d5 100644
--- a/src/views/wls/miscissue/data.ts
+++ b/src/views/wls/miscissue/data.ts
@@ -6,13 +6,17 @@
 
 import { h, markRaw } from 'vue';
 
-import { DICT_TYPE, MesAutoCodeRuleCode } from '../../../packages/constants/src';
-import { getDictOptions } from '../../../packages/effects/hooks/src';
+import { DICT_TYPE, MesAutoCodeRuleCode } from '@vben/constants';
+import { getDictOptions } from '@vben/hooks';
 
 import { Button } from 'ant-design-vue';
 
 import { generateAutoCode } from '#/api/mes/md/autocode/record';
 import { getRangePickerDefaultProps } from '#/utils';
+import {
+  useLineUnitHandlers,
+  buildItemUnitSchema,
+} from '#/views/wls/utils/item-unit-convert';
 import { WmMaterialStockSelect } from '#/views/wls/materialstock/components';
 import {
   WmWarehouseAreaSelect,
@@ -101,7 +105,7 @@
       componentProps: {
         format: 'YYYY-MM-DD',
         placeholder: '璇烽�夋嫨鍑哄簱鏃ユ湡',
-        valueFormat: 'x',
+        valueFormat: 'YYYY-MM-DD',
       },
       rules: 'required',
     },
@@ -283,9 +287,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',
@@ -327,6 +346,7 @@
 
 /** 鍑哄簱鍗曡鏂板/淇敼鐨勮〃鍗� */
 export function useLineFormSchema(formApi?: VbenFormApi): VbenFormSchema[] {
+  const unitHandlers = useLineUnitHandlers(formApi);
   return [
     {
       fieldName: 'itemId',
@@ -351,10 +371,11 @@
       componentProps: {
         // 閫夋嫨搴撳瓨鐗╄祫鍚庯紝鑷姩鍥炲~鐗╂枡銆佹壒娆″彿銆佷粨搴撲綅缃拰鏈�澶у彲鍑哄簱鏁伴噺
         onChange: async (stock?: MesWmMaterialStockApi.MaterialStock) => {
+          // 鍒囨崲搴撳瓨鐗╄祫绛変簬鍒囨崲鐗╂枡锛屽厛娓呮帀涓婁竴浠藉瀷鍙蜂笌褰曞叆鍗曚綅鍙e緞
+          await unitHandlers.handleItemChange(stock?.itemId);
           await formApi?.setValues({
             areaId: stock?.areaId,
             batchCode: stock?.batchCode,
-            itemId: stock?.itemId,
             locationId: stock?.locationId,
             quantityMax: stock?.quantity,
             warehouseId: stock?.warehouseId,
@@ -369,28 +390,8 @@
         }),
       },
     },
-    {
-      fieldName: 'quantity',
-      label: '鍑哄簱鏁伴噺',
-      component: 'InputNumber',
-      componentProps: {
-        class: '!w-full',
-        min: 0.01,
-        placeholder: '璇疯緭鍏ュ嚭搴撴暟閲�',
-        precision: 2,
-      },
-      rules: 'required',
-      dependencies: {
-        triggerFields: ['quantityMax'],
-        componentProps: (values) => ({
-          class: '!w-full',
-          max: values.quantityMax,
-          min: 0.01,
-          placeholder: '璇疯緭鍏ュ嚭搴撴暟閲�',
-          precision: 2,
-        }),
-      },
-    },
+    // 鐗╂枡鍨嬪彿 / 褰曞叆鍗曚綅 / 褰曞叆鏁伴噺 / 鍑哄簱鏁伴噺锛堜富鍗曚綅鍙e緞锛�
+    ...buildItemUnitSchema(formApi),
     {
       fieldName: 'batchCode',
       label: '鎵规鍙�',

--
Gitblit v1.9.3