From 955c05d19906b0c37c295935943f623bba04995b Mon Sep 17 00:00:00 2001
From: buhuazhen <hua100783@gmail.com>
Date: 星期三, 27 五月 2026 11:48:25 +0800
Subject: [PATCH] feat 质检检测调整

---
 src/views/qualityManagement/rawMaterialInspection/components/formDia.vue |   44 +++++++++++++++++++++++++++-----------------
 1 files changed, 27 insertions(+), 17 deletions(-)

diff --git a/src/views/qualityManagement/rawMaterialInspection/components/formDia.vue b/src/views/qualityManagement/rawMaterialInspection/components/formDia.vue
index bec44df..4559db9 100644
--- a/src/views/qualityManagement/rawMaterialInspection/components/formDia.vue
+++ b/src/views/qualityManagement/rawMaterialInspection/components/formDia.vue
@@ -228,7 +228,7 @@
 });
 
 // 鎵撳紑寮规
-const openDialog = async (type, row, defaultCheckResult = "", defaultCheckName = "") => {
+const openDialog = async (type, row, defaultCheckResult = "", defaultCheckName = "", defaultTestStandardId = "", defaultCheckCompany = "", defaultQualityInspectParams = []) => {
   operationType.value = type;
   getOptions().then((res) => {
     supplierList.value = res.data;
@@ -254,14 +254,19 @@
     productId: "",
     productModelId: "",
     model: "",
-    testStandardId: "",
+    testStandardId: defaultTestStandardId || "",
     unit: "",
     quantity: "",
-    checkCompany: "",
+    checkCompany: defaultCheckCompany || "",
     checkResult: defaultCheckResult || "",
   }
   testStandardOptions.value = [];
-  tableData.value = [];
+  // 濡傛灉浠庢楠屽脊绐椾紶鍏ヤ簡鍙傛暟鏁版嵁锛岀洿鎺ヤ娇鐢紱鍚﹀垯娓呯┖
+  if (defaultQualityInspectParams && defaultQualityInspectParams.length > 0) {
+    tableData.value = defaultQualityInspectParams;
+  } else {
+    tableData.value = [];
+  }
   // 鍏堢‘淇濅骇鍝佹爲宸插姞杞斤紝鍚﹀垯缂栬緫鏃朵骇鍝�/瑙勬牸鍨嬪彿鏃犳硶鍙嶆樉
   await getProductOptions();
   if (operationType.value === 'edit') {
@@ -273,8 +278,15 @@
       form.value.checkResult = defaultCheckResult;
     }
     // 濡傛灉浼犲叆浜嗛粯璁ゆ楠屽憳锛岃鐩杛ow涓殑鍊硷紙浼樺厛浣跨敤浼犲叆鐨勬楠屽憳锛�
-    console.log('formDia checkName debug:', { defaultCheckName, rowCheckName: row.checkName });
     form.value.checkName = defaultCheckName || row.checkName || "";
+    // 濡傛灉浼犲叆浜嗛粯璁ゆ寚鏍囬�夋嫨锛岃鐩杛ow涓殑鍊�
+    if (defaultTestStandardId) {
+      form.value.testStandardId = defaultTestStandardId;
+    }
+    // 濡傛灉浼犲叆浜嗛粯璁ゆ娴嬪崟浣嶏紝瑕嗙洊row涓殑鍊�
+    if (defaultCheckCompany) {
+      form.value.checkCompany = defaultCheckCompany;
+    }
     currentProductId.value = row.productId || 0
     // 鍏抽敭锛氱紪杈戞椂鍔犺浇瑙勬牸鍨嬪彿涓嬫媺閫夐」锛屾墠鑳藉弽鏄� productModelId
     if (currentProductId.value) {
@@ -290,37 +302,35 @@
         modelOptions.value = [];
       }
     }
-    // 缂栬緫妯″紡涓嬶紝鍏堝姞杞芥寚鏍囬�夐」锛岀劧鍚庡姞杞藉弬鏁板垪琛�
+    // 缂栬緫妯″紡涓嬶紝鍏堝姞杞芥寚鏍囬�夐」
     if (currentProductId.value) {
-      // 鍏堝姞杞芥寚鏍囬�夐」
       let params = {
         productId: currentProductId.value,
         inspectType: 0
       }
       qualityInspectDetailByProductId(params).then(res => {
         testStandardOptions.value = res.data || [];
-        // 浣跨敤 nextTick 鍜� setTimeout 纭繚閫夐」宸茬粡娓叉煋鍒� DOM
         nextTick(() => {
           setTimeout(() => {
-            // 濡傛灉缂栬緫鏁版嵁涓湁 testStandardId锛屽垯璁剧疆骞跺姞杞藉搴旂殑鍙傛暟
-            if (savedTestStandardId) {
-              // 纭繚绫诲瀷鍖归厤锛坕tem.id 鍙兘鏄暟瀛楁垨瀛楃涓诧級
-              const matchedOption = testStandardOptions.value.find(item => 
+            // 濡傛灉浠庢楠屽脊绐椾紶鍏ヤ簡鍙傛暟鏁版嵁锛岀洿鎺ヤ娇鐢紱鍚﹀垯鍔犺浇鍘熷弬鏁版暟鎹�
+            if (defaultQualityInspectParams && defaultQualityInspectParams.length > 0) {
+              // 宸茬粡鍦ㄤ笂闈㈣缃簡 tableData锛岃繖閲屽彧闇�瑕佽缃� testStandardId
+              if (defaultTestStandardId) {
+                form.value.testStandardId = defaultTestStandardId;
+              }
+            } else if (savedTestStandardId) {
+              // 娌℃湁浼犲叆鍙傛暟鏁版嵁锛屼娇鐢ㄥ師鏈夐�昏緫
+              const matchedOption = testStandardOptions.value.find(item =>
                 item.id == savedTestStandardId || String(item.id) === String(savedTestStandardId)
               );
               if (matchedOption) {
-                // 纭繚浣跨敤鍖归厤椤圭殑 id锛堜繚鎸佺被鍨嬩竴鑷达級
                 form.value.testStandardId = matchedOption.id;
-                // 缂栬緫淇濈暀鍘熸楠屽�硷紝鐩存帴鎷夊彇鍘熷弬鏁版暟鎹�
                 getQualityInspectParamList(row.id);
               } else {
-                // 濡傛灉鎵句笉鍒板尮閰嶉」锛屽皾璇曠洿鎺ヤ娇鐢ㄥ師鍊�
-                console.warn('鏈壘鍒板尮閰嶇殑鎸囨爣閫夐」锛宼estStandardId:', savedTestStandardId, '鍙敤閫夐」:', testStandardOptions.value);
                 form.value.testStandardId = savedTestStandardId;
                 getQualityInspectParamList(row.id);
               }
             } else {
-              // 鍚﹀垯浣跨敤鏃х殑閫昏緫
               getQualityInspectParamList(row.id);
             }
           }, 100);

--
Gitblit v1.9.3