From 6c0b0dd81a98a3163e45f1b5b5417e02af165fd8 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期六, 29 八月 2026 10:04:13 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_pro2.0' into dev_pro2.0

---
 src/views/mes/pro/task/modules/task-form.vue |   44 ++++++++++++++++++++++++++++----------------
 1 files changed, 28 insertions(+), 16 deletions(-)

diff --git a/src/views/mes/pro/task/modules/task-form.vue b/src/views/mes/pro/task/modules/task-form.vue
index ce33356..acb2de8 100644
--- a/src/views/mes/pro/task/modules/task-form.vue
+++ b/src/views/mes/pro/task/modules/task-form.vue
@@ -1,9 +1,9 @@
-锘�<script lang="ts" setup>
+<script lang="ts" setup>
 import type { MesProTaskApi } from '#/api/mes/pro/task';
 
 import { computed, ref } from 'vue';
 
-import { useVbenModal } from '../../../../../packages/effects/common-ui/src';
+import { useVbenModal } from '@vben/common-ui';
 
 import { message } from 'ant-design-vue';
 
@@ -15,6 +15,7 @@
 
 const emit = defineEmits(['success']);
 const formData = ref<MesProTaskApi.Task>();
+const workOrderQuantity = ref<number>(); // 璁㈠崟鏁伴噺锛堢敤浜庢彁绀猴級
 const context = ref<{
   colorCode?: string;
   itemId?: number;
@@ -67,41 +68,52 @@
   async onOpenChange(isOpen: boolean) {
     if (!isOpen) {
       formData.value = undefined;
+      workOrderQuantity.value = undefined;
       context.value = {};
       return;
     }
-    formApi.setState({ schema: useTaskFormSchema(formApi) });
-    // 鍔犺浇鏁版嵁
     const data = modalApi.getData<{
       colorCode?: string;
       id?: number;
       itemId?: number;
       processId?: number;
+      quantity?: number;
       routeId?: number;
       workOrderId?: number;
     }>();
+
+    let wid: number | undefined;
+
     if (data?.id) {
+      // 缂栬緫妯″紡锛氬厛璁剧疆琛ㄥ崟 schema锛屽啀鍥炲~浠诲姟鏁版嵁锛岄伩鍏嶅瓧娈垫湭寤虹珛鏃� setValues 涓㈠け
+      formApi.setState({ schema: useTaskFormSchema(formApi, workOrderQuantity) });
       modalApi.lock();
       try {
         formData.value = await getTask(data.id);
+        wid = formData.value.workOrderId;
         // 璁剧疆鍒� values
         await formApi.setValues(formData.value);
       } finally {
         modalApi.unlock();
       }
-      return;
+    } else {
+      context.value = {
+        colorCode: data.colorCode,
+        itemId: data.itemId,
+        processId: data.processId,
+        routeId: data.routeId,
+        workOrderId: data.workOrderId,
+      };
+      wid = data.workOrderId;
+      workOrderQuantity.value = data.quantity;
+      // 鏂板妯″紡锛氬厛璁剧疆琛ㄥ崟 schema锛屽啀璁剧疆鍒濆鍊�
+      formApi.setState({ schema: useTaskFormSchema(formApi, workOrderQuantity) });
+      await formApi.setValues({
+        colorCode: data.colorCode || '#00AEF3',
+        duration: 1,
+        quantity: data.quantity,
+      });
     }
-    context.value = {
-      colorCode: data.colorCode,
-      itemId: data.itemId,
-      processId: data.processId,
-      routeId: data.routeId,
-      workOrderId: data.workOrderId,
-    };
-    await formApi.setValues({
-      colorCode: data.colorCode || '#00AEF3',
-      duration: 1,
-    });
   },
 });
 </script>

--
Gitblit v1.9.3