From 53499f59c890387d8077ff3a9e81ee18e389e0e8 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期三, 15 四月 2026 15:16:35 +0800
Subject: [PATCH] fix:生产-质量-库存(合格,不合格批号,供应商)

---
 src/views/qualityManagement/rawMaterialInspection/components/formDia.vue |  497 +++++++++++++++++++++--------------
 src/views/productionManagement/productionOrder/index.vue                 |  310 +++++++++++----------
 2 files changed, 461 insertions(+), 346 deletions(-)

diff --git a/src/views/productionManagement/productionOrder/index.vue b/src/views/productionManagement/productionOrder/index.vue
index 788d5d6..2e86842 100644
--- a/src/views/productionManagement/productionOrder/index.vue
+++ b/src/views/productionManagement/productionOrder/index.vue
@@ -1,100 +1,104 @@
 <template>
   <div class="app-container">
     <div class="search_form">
-      <el-form :model="searchForm"
-               :inline="true">
-        <el-form-item label="瀹㈡埛鍚嶇О:">
-          <el-input v-model="searchForm.customerName"
-                    placeholder="璇疯緭鍏�"
-                    clearable
-                    prefix-icon="Search"
-                    style="width: 160px;"
-                    @change="handleQuery"/>
-        </el-form-item>
-        <el-form-item label="鍚堝悓鍙�:">
-          <el-input v-model="searchForm.salesContractNo"
-                    placeholder="璇疯緭鍏�"
-                    clearable
-                    prefix-icon="Search"
-                    style="width: 160px;"
-                    @change="handleQuery"/>
-        </el-form-item>
+      <el-form :model="searchForm" :inline="true">
         <el-form-item label="浜у搧鍚嶇О:">
-          <el-input v-model="searchForm.productCategory"
-                    placeholder="璇疯緭鍏�"
-                    clearable
-                    prefix-icon="Search"
-                    style="width: 160px;"
-                    @change="handleQuery"/>
+          <el-input
+            v-model="searchForm.productCategory"
+            placeholder="璇疯緭鍏�"
+            clearable
+            prefix-icon="Search"
+            style="width: 160px"
+            @change="handleQuery"
+          />
         </el-form-item>
         <el-form-item label="瑙勬牸:">
-          <el-input v-model="searchForm.specificationModel"
-                    placeholder="璇疯緭鍏�"
-                    clearable
-                    prefix-icon="Search"
-                    style="width: 160px;"
-                    @change="handleQuery"/>
+          <el-input
+            v-model="searchForm.specificationModel"
+            placeholder="璇疯緭鍏�"
+            clearable
+            prefix-icon="Search"
+            style="width: 160px"
+            @change="handleQuery"
+          />
         </el-form-item>
         <el-form-item>
-          <el-button type="primary"
-                     @click="handleQuery">鎼滅储
-          </el-button>
+          <el-button type="primary" @click="handleQuery">鎼滅储 </el-button>
         </el-form-item>
       </el-form>
       <div>
-        <el-button type="primary" @click="isShowNewModal = true">鏂板</el-button>
+        <el-button type="primary" @click="isShowNewModal = true"
+          >鏂板</el-button
+        >
         <el-button type="danger" @click="handleDelete">鍒犻櫎</el-button>
         <el-button @click="handleOut">瀵煎嚭</el-button>
       </div>
     </div>
     <div class="table_list">
-      <PIMTable rowKey="id"
-                :column="tableColumn"
-                :tableData="tableData"
-                :page="page"
-                :tableLoading="tableLoading"
-                :row-class-name="tableRowClassName"
-                :isSelection="true"
-                @selection-change="handleSelectionChange"
-                @pagination="pagination">
+      <PIMTable
+        rowKey="id"
+        :column="tableColumn"
+        :tableData="tableData"
+        :page="page"
+        :tableLoading="tableLoading"
+        :row-class-name="tableRowClassName"
+        :isSelection="true"
+        @selection-change="handleSelectionChange"
+        @pagination="pagination"
+      >
         <template #completionStatus="{ row }">
           <el-progress
-              :percentage="toProgressPercentage(row?.completionStatus)"
-              :color="progressColor(toProgressPercentage(row?.completionStatus))"
-              :status="toProgressPercentage(row?.completionStatus) >= 100 ? 'success' : ''"
+            :percentage="toProgressPercentage(row?.completionStatus)"
+            :color="progressColor(toProgressPercentage(row?.completionStatus))"
+            :status="
+              toProgressPercentage(row?.completionStatus) >= 100
+                ? 'success'
+                : ''
+            "
           />
         </template>
       </PIMTable>
     </div>
-    <el-dialog v-model="bindRouteDialogVisible"
-               title="缁戝畾宸ヨ壓璺嚎"
-               width="500px">
+    <el-dialog
+      v-model="bindRouteDialogVisible"
+      title="缁戝畾宸ヨ壓璺嚎"
+      width="500px"
+    >
       <el-form label-width="90px">
         <el-form-item label="宸ヨ壓璺嚎">
-          <el-select v-model="bindForm.routeId"
-                     placeholder="璇烽�夋嫨宸ヨ壓璺嚎"
-                     style="width: 100%;"
-                     :loading="bindRouteLoading">
-            <el-option v-for="item in routeOptions"
-                       :key="item.id"
-                       :label="`${item.processRouteCode || ''}`"
-                       :value="item.id"/>
+          <el-select
+            v-model="bindForm.routeId"
+            placeholder="璇烽�夋嫨宸ヨ壓璺嚎"
+            style="width: 100%"
+            :loading="bindRouteLoading"
+          >
+            <el-option
+              v-for="item in routeOptions"
+              :key="item.id"
+              :label="`${item.processRouteCode || ''}`"
+              :value="item.id"
+            />
           </el-select>
         </el-form-item>
       </el-form>
       <template #footer>
         <span class="dialog-footer">
-          <el-button type="primary"
-                     :loading="bindRouteSaving"
-                     @click="handleBindRouteConfirm">纭� 璁�</el-button>
+          <el-button
+            type="primary"
+            :loading="bindRouteSaving"
+            @click="handleBindRouteConfirm"
+            >纭� 璁�</el-button
+          >
           <el-button @click="bindRouteDialogVisible = false">鍙� 娑�</el-button>
         </span>
       </template>
     </el-dialog>
 
-    <new-product-order v-if="isShowNewModal"
-                       v-model:visible="isShowNewModal"
-                       @completed="handleQuery"/>
+    <new-product-order
+      v-if="isShowNewModal"
+      v-model:visible="isShowNewModal"
+      @completed="handleQuery"
+    />
 
     <!-- 娓呭満璁板綍寮规 -->
     <clearance-record-dialog
@@ -113,26 +117,37 @@
 </template>
 
 <script setup>
-import {onMounted, ref} from "vue";
-import {ElMessageBox} from "element-plus";
+import { onMounted, ref } from "vue";
+import { ElMessageBox } from "element-plus";
 import dayjs from "dayjs";
-import {useRouter} from "vue-router";
+import { useRouter } from "vue-router";
 import {
   productOrderListPage,
   listProcessRoute,
   bindingRoute,
-  delProductOrder, finishOrder,
+  delProductOrder,
+  finishOrder,
   saveCleanRecord,
 } from "@/api/productionManagement/productionOrder.js";
-import {listMain as getOrderProcessRouteMain} from "@/api/productionManagement/productProcessRoute.js";
-import {fileDel} from "@/api/financialManagement/revenueManagement.js";
+import { listMain as getOrderProcessRouteMain } from "@/api/productionManagement/productProcessRoute.js";
+import { fileDel } from "@/api/financialManagement/revenueManagement.js";
 import PIMTable from "@/components/PIMTable/PIMTable.vue";
 
-const NewProductOrder = defineAsyncComponent(() => import("@/views/productionManagement/productionOrder/New.vue"));
-const ClearanceRecordDialog = defineAsyncComponent(() => import("@/views/productionManagement/productionOrder/ClearanceRecordDialog.vue"));
-const MaterialRequisitionDialog = defineAsyncComponent(() => import("@/views/productionManagement/productionOrder/MaterialRequisitionDialog.vue"));
+const NewProductOrder = defineAsyncComponent(() =>
+  import("@/views/productionManagement/productionOrder/New.vue")
+);
+const ClearanceRecordDialog = defineAsyncComponent(() =>
+  import(
+    "@/views/productionManagement/productionOrder/ClearanceRecordDialog.vue"
+  )
+);
+const MaterialRequisitionDialog = defineAsyncComponent(() =>
+  import(
+    "@/views/productionManagement/productionOrder/MaterialRequisitionDialog.vue"
+  )
+);
 
-const {proxy} = getCurrentInstance();
+const { proxy } = getCurrentInstance();
 
 const router = useRouter();
 const isShowNewModal = ref(false);
@@ -141,37 +156,37 @@
   {
     label: "鐢熶骇璁㈠崟鍙�",
     prop: "npsNo",
-    width: '120px',
+    width: "120px",
   },
   {
     label: "浜у搧鍚嶇О",
     prop: "productCategory",
-    width: '120px',
+    width: "120px",
   },
   {
     label: "瑙勬牸",
     prop: "specificationModel",
-    width: '120px',
+    width: "120px",
   },
   {
     label: "UID鐮�",
     prop: "uidNo",
-    width: '120px',
+    width: "120px",
   },
   {
     label: "鎵瑰彿",
     prop: "batchNo",
-    width: '120px',
+    width: "120px",
   },
   {
     label: "宸ヨ壓璺嚎缂栧彿",
     prop: "processRouteCode",
-    width: '200px',
+    width: "200px",
   },
   {
     label: "棰勮鐢熶骇鏁伴噺",
     prop: "quantity",
-    width: '140px',
+    width: "140px",
   },
   {
     label: "瀹屾垚鏁伴噺",
@@ -187,19 +202,19 @@
   {
     label: "寮�濮嬫棩鏈�",
     prop: "startTime",
-    formatData: val => (val ? dayjs(val).format("YYYY-MM-DD") : ""),
+    formatData: (val) => (val ? dayjs(val).format("YYYY-MM-DD") : ""),
     width: 120,
   },
   {
     label: "缁撴潫鏃ユ湡",
     prop: "endTime",
-    formatData: val => (val ? dayjs(val).format("YYYY-MM-DD") : ""),
+    formatData: (val) => (val ? dayjs(val).format("YYYY-MM-DD") : ""),
     width: 120,
   },
   {
     label: "浜や粯鏃ユ湡",
     prop: "deliveryDate",
-    formatData: val => (val ? dayjs(val).format("YYYY-MM-DD") : ""),
+    formatData: (val) => (val ? dayjs(val).format("YYYY-MM-DD") : ""),
     width: 120,
   },
   {
@@ -222,46 +237,46 @@
       {
         name: "宸ヨ壓璺嚎",
         type: "text",
-        clickFun: row => {
+        clickFun: (row) => {
           showRouteItemModal(row);
         },
       },
       {
         name: "缁戝畾宸ヨ壓璺嚎",
         type: "text",
-        showHide: row => !row.processRouteCode,
-        clickFun: row => {
+        showHide: (row) => !row.processRouteCode,
+        clickFun: (row) => {
           openBindRouteDialog(row);
         },
       },
       {
         name: "浜у搧缁撴瀯",
         type: "text",
-        clickFun: row => {
+        clickFun: (row) => {
           showProductStructure(row);
         },
       },
       {
         name: "缁撴潫鐢熶骇",
         type: "text",
-        showHide: row => !row.isEnd,
-        clickFun: row => {
+        showHide: (row) => !row.isEnd,
+        clickFun: (row) => {
           handleFinishOrder(row);
         },
       },
       {
         name: "娓呭満璁板綍",
         type: "text",
-        showHide: row => !row.isEnd,
-        clickFun: row => {
+        showHide: (row) => !row.isEnd,
+        clickFun: (row) => {
           handleClearanceRecord(row);
         },
       },
       {
         name: "棰嗘枡",
         type: "text",
-        showHide: row => !row.isEnd,
-        clickFun: row => {
+        showHide: (row) => !row.isEnd,
+        clickFun: (row) => {
           handleMaterialRequisition(row);
         },
       },
@@ -286,9 +301,9 @@
     specificationModel: "",
   },
 });
-const {searchForm} = toRefs(data);
+const { searchForm } = toRefs(data);
 
-const toProgressPercentage = val => {
+const toProgressPercentage = (val) => {
   const n = Number(val);
   if (!Number.isFinite(n)) return 0;
   if (n <= 0) return 0;
@@ -297,7 +312,7 @@
 };
 
 // 30/50/80/100 鍒嗘棰滆壊锛氱孩/姗�/钃�/缁�
-const progressColor = percentage => {
+const progressColor = (percentage) => {
   const p = toProgressPercentage(percentage);
   if (p < 30) return "#f56c6c";
   if (p < 50) return "#e6a23c";
@@ -306,19 +321,19 @@
 };
 
 // 娣诲姞琛ㄨ绫诲悕鏂规硶
-const tableRowClassName = ({row}) => {
-  if (!row.deliveryDate) return '';
-  if (row.isFh) return '';
+const tableRowClassName = ({ row }) => {
+  if (!row.deliveryDate) return "";
+  if (row.isFh) return "";
 
   const diff = row.deliveryDaysDiff;
   if (diff === 15) {
-    return 'yellow';
+    return "yellow";
   } else if (diff === 10) {
-    return 'pink';
+    return "pink";
   } else if (diff === 2) {
-    return 'purple';
+    return "purple";
   } else if (diff < 2) {
-    return 'red';
+    return "red";
   }
 };
 
@@ -339,7 +354,7 @@
   routeId: null,
 });
 
-const openBindRouteDialog = async row => {
+const openBindRouteDialog = async (row) => {
   bindForm.orderId = row.id;
   bindForm.routeId = null;
   bindRouteDialogVisible.value = true;
@@ -351,7 +366,7 @@
   }
   bindRouteLoading.value = true;
   try {
-    const res = await listProcessRoute({productModelId: row.productModelId});
+    const res = await listProcessRoute({ productModelId: row.productModelId });
     routeOptions.value = res.data || [];
   } catch (e) {
     console.error("鑾峰彇宸ヨ壓璺嚎鍒楄〃澶辫触锛�", e);
@@ -389,12 +404,12 @@
   page.current = 1;
   getList();
 };
-const pagination = obj => {
+const pagination = (obj) => {
   page.current = obj.page;
   page.size = obj.limit;
   getList();
 };
-const changeDaterange = value => {
+const changeDaterange = (value) => {
   if (value) {
     searchForm.value.entryDateStart = value[0];
     searchForm.value.entryDateEnd = value[1];
@@ -407,20 +422,20 @@
 const getList = () => {
   tableLoading.value = true;
   // 鏋勯�犱竴涓柊鐨勫璞★紝涓嶅寘鍚玡ntryDate瀛楁
-  const params = {...searchForm.value, ...page};
+  const params = { ...searchForm.value, ...page };
   params.entryDate = undefined;
   productOrderListPage(params)
-      .then(res => {
-        tableLoading.value = false;
-        tableData.value = res.data.records;
-        page.total = res.data.total;
-      })
-      .catch(() => {
-        tableLoading.value = false;
-      });
+    .then((res) => {
+      tableLoading.value = false;
+      tableData.value = res.data.records;
+      page.total = res.data.total;
+    })
+    .catch(() => {
+      tableLoading.value = false;
+    });
 };
 
-const showRouteItemModal = async row => {
+const showRouteItemModal = async (row) => {
   const orderId = row.id;
   try {
     const res = await getOrderProcessRouteMain(orderId);
@@ -449,7 +464,7 @@
   }
 };
 
-const showProductStructure = row => {
+const showProductStructure = (row) => {
   router.push({
     path: "/productionManagement/productStructureDetail",
     query: {
@@ -481,14 +496,16 @@
     confirmButtonText: "纭",
     cancelButtonText: "鍙栨秷",
     type: "warning",
-  }).then(() => {
-    delProductOrder(ids).then((res) => {
-      proxy.$modal.msgSuccess("鍒犻櫎鎴愬姛");
-      getList();
+  })
+    .then(() => {
+      delProductOrder(ids).then((res) => {
+        proxy.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+        getList();
+      });
+    })
+    .catch(() => {
+      proxy.$modal.msg("宸插彇娑�");
     });
-  }).catch(() => {
-    proxy.$modal.msg("宸插彇娑�");
-  });
 };
 
 // 瀵煎嚭
@@ -498,16 +515,19 @@
     cancelButtonText: "鍙栨秷",
     type: "warning",
   })
-      .then(() => {
-        proxy.download("/productOrder/export", {...searchForm.value}, "鐢熶骇璁㈠崟.xlsx");
-      })
-      .catch(() => {
-        proxy.$modal.msg("宸插彇娑�");
-      });
+    .then(() => {
+      proxy.download(
+        "/productOrder/export",
+        { ...searchForm.value },
+        "鐢熶骇璁㈠崟.xlsx"
+      );
+    })
+    .catch(() => {
+      proxy.$modal.msg("宸插彇娑�");
+    });
 };
 
-const handleConfirmRoute = () => {
-};
+const handleConfirmRoute = () => {};
 
 const handleFinishOrder = (row) => {
   ElMessageBox.confirm("鏄惁纭缁撴潫锛�", "缁撴潫", {
@@ -515,15 +535,15 @@
     cancelButtonText: "鍙栨秷",
     type: "warning",
   })
-      .then(() => {
-        finishOrder(row.id).then(res => {
-          proxy.$modal.msgSuccess("缁撴潫鎴愬姛");
-          getList()
-        })
-      })
-      .catch(() => {
-        proxy.$modal.msg("宸插彇娑�");
+    .then(() => {
+      finishOrder(row.id).then((res) => {
+        proxy.$modal.msgSuccess("缁撴潫鎴愬姛");
+        getList();
       });
+    })
+    .catch(() => {
+      proxy.$modal.msg("宸插彇娑�");
+    });
 };
 
 // 鎵撳紑娓呭満璁板綍寮规
@@ -547,7 +567,7 @@
     if (callback) callback();
     getList();
   } catch (error) {
-    console.error('淇濆瓨娓呭満璁板綍澶辫触:', error);
+    console.error("淇濆瓨娓呭満璁板綍澶辫触:", error);
     proxy.$modal.msgError("娓呭満璁板綍淇濆瓨澶辫触");
   }
 };
@@ -569,11 +589,11 @@
 }
 
 ::v-deep .yellow {
-  background-color: #FAF0DE;
+  background-color: #faf0de;
 }
 
 ::v-deep .pink {
-  background-color: #FAE1DE;
+  background-color: #fae1de;
 }
 
 ::v-deep .red {
@@ -581,6 +601,6 @@
 }
 
 ::v-deep .purple {
-  background-color: #F4DEFA;
+  background-color: #f4defa;
 }
 </style>
diff --git a/src/views/qualityManagement/rawMaterialInspection/components/formDia.vue b/src/views/qualityManagement/rawMaterialInspection/components/formDia.vue
index 7ac310a..12f5d71 100644
--- a/src/views/qualityManagement/rawMaterialInspection/components/formDia.vue
+++ b/src/views/qualityManagement/rawMaterialInspection/components/formDia.vue
@@ -1,26 +1,32 @@
 <template>
   <div>
     <el-dialog
-        v-model="dialogFormVisible"
-        :title="operationType === 'add' ? '鏂板鍘熸潗鏂欐楠�' : '缂栬緫鍘熸潗鏂欐楠�'"
-        width="70%"
-        @close="closeDia"
+      v-model="dialogFormVisible"
+      :title="operationType === 'add' ? '鏂板鍘熸潗鏂欐楠�' : '缂栬緫鍘熸潗鏂欐楠�'"
+      width="70%"
+      @close="closeDia"
     >
-      <el-form :model="form" label-width="140px" label-position="top" :rules="rules" ref="formRef">
+      <el-form
+        :model="form"
+        label-width="140px"
+        label-position="top"
+        :rules="rules"
+        ref="formRef"
+      >
         <el-row :gutter="30">
           <el-col :span="12">
             <el-form-item label="渚涘簲鍟嗭細" prop="supplier">
               <el-select
-                  v-model="form.supplier"
-                  placeholder="璇烽�夋嫨"
-                  clearable
-                  :disabled="supplierQuantityDisabled"
+                v-model="form.supplier"
+                placeholder="璇烽�夋嫨"
+                clearable
+                :disabled="supplierQuantityDisabled"
               >
                 <el-option
-                    v-for="item in supplierList"
-                    :key="item.id"
-                    :label="item.supplierName"
-                    :value="item.supplierName"
+                  v-for="item in supplierList"
+                  :key="item.id"
+                  :label="item.supplierName"
+                  :value="item.supplierName"
                 />
               </el-select>
             </el-form-item>
@@ -28,15 +34,15 @@
           <el-col :span="12">
             <el-form-item label="浜у搧鍚嶇О锛�" prop="productId">
               <el-tree-select
-                  v-model="form.productId"
-                  placeholder="璇烽�夋嫨"
-                  clearable
-                  check-strictly
-                  @change="getModels"
-                  :data="productOptions"
-                  :render-after-expand="false"
-                  :disabled="operationType === 'edit'"
-                  style="width: 100%"
+                v-model="form.productId"
+                placeholder="璇烽�夋嫨"
+                clearable
+                check-strictly
+                @change="getModels"
+                :data="productOptions"
+                :render-after-expand="false"
+                :disabled="operationType === 'edit'"
+                style="width: 100%"
               />
             </el-form-item>
           </el-col>
@@ -44,9 +50,21 @@
         <el-row :gutter="30">
           <el-col :span="12">
             <el-form-item label="瑙勬牸鍨嬪彿锛�" prop="productModelId">
-              <el-select v-model="form.productModelId" placeholder="璇烽�夋嫨" clearable :disabled="operationType === 'edit'"
-                         filterable readonly @change="handleChangeModel">
-                <el-option v-for="item in modelOptions" :key="item.id" :label="item.model" :value="item.id" />
+              <el-select
+                v-model="form.productModelId"
+                placeholder="璇烽�夋嫨"
+                clearable
+                :disabled="operationType === 'edit'"
+                filterable
+                readonly
+                @change="handleChangeModel"
+              >
+                <el-option
+                  v-for="item in modelOptions"
+                  :key="item.id"
+                  :label="item.model"
+                  :value="item.id"
+                />
               </el-select>
             </el-form-item>
           </el-col>
@@ -72,34 +90,49 @@
         <el-row :gutter="30">
           <el-col :span="12">
             <el-form-item label="鍗曚綅锛�" prop="unit">
-              <el-input v-model="form.unit" disabled/>
+              <el-input v-model="form.unit" disabled />
             </el-form-item>
           </el-col>
           <el-col :span="12">
             <el-form-item label="鎬绘暟閲忥細" prop="quantity">
-              <el-input-number :step="0.01" :min="0" style="width: 100%" v-model="form.quantity" placeholder="璇疯緭鍏�"
-                               clearable :precision="2" :disabled="supplierQuantityDisabled"/>
+              <el-input-number
+                :step="0.01"
+                :min="0"
+                style="width: 100%"
+                v-model="form.quantity"
+                placeholder="璇疯緭鍏�"
+                clearable
+                :precision="2"
+                :disabled="supplierQuantityDisabled"
+              />
             </el-form-item>
           </el-col>
         </el-row>
         <el-row :gutter="30">
           <el-col :span="12">
             <el-form-item label="妫�鍝佹暟閲忥細" prop="inspectedQuantity">
-              <el-input-number :step="0.01" :min="0" style="width: 100%" v-model="form.inspectedQuantity" placeholder="璇疯緭鍏ワ紝涓嶅ぇ浜庢�绘暟閲�"
-                               clearable :precision="2" :disabled="supplierQuantityDisabled"/>
+              <el-input-number
+                :step="0.01"
+                :min="0"
+                style="width: 100%"
+                v-model="form.inspectedQuantity"
+                placeholder="璇疯緭鍏ワ紝涓嶅ぇ浜庢�绘暟閲�"
+                clearable
+                :precision="2"
+              />
             </el-form-item>
           </el-col>
           <el-col :span="12">
             <el-form-item label="鐢熶骇鏃ユ湡锛�" prop="productionDate">
               <el-date-picker
-                  v-model="form.productionDate"
-                  type="date"
-                  placeholder="璇烽�夋嫨鏃ユ湡"
-                  value-format="YYYY-MM-DD"
-                  format="YYYY-MM-DD"
-                  clearable
-                  style="width: 100%"
-                  @change="calculateValidityDate"
+                v-model="form.productionDate"
+                type="date"
+                placeholder="璇烽�夋嫨鏃ユ湡"
+                value-format="YYYY-MM-DD"
+                format="YYYY-MM-DD"
+                clearable
+                style="width: 100%"
+                @change="calculateValidityDate"
               />
             </el-form-item>
           </el-col>
@@ -118,7 +151,7 @@
           </el-col> -->
           <el-col :span="12">
             <el-form-item label="UID鐮侊細" prop="uidNo">
-              <el-input v-model="form.uidNo" disabled/>
+              <el-input v-model="form.uidNo" disabled />
             </el-form-item>
           </el-col>
           <el-col :span="12">
@@ -135,76 +168,93 @@
         <el-row :gutter="30">
           <el-col :span="12">
             <el-form-item label="妫�娴嬪崟浣嶏細" prop="checkCompany">
-              <el-input v-model="form.checkCompany" placeholder="璇疯緭鍏�" clearable/>
+              <el-input
+                v-model="form.checkCompany"
+                placeholder="璇疯緭鍏�"
+                clearable
+              />
             </el-form-item>
           </el-col>
           <el-col :span="12">
             <el-form-item label="妫�娴嬬粨鏋滐細" prop="checkResult">
               <el-select v-model="form.checkResult">
-                <el-option label="鍚堟牸" value="鍚堟牸"/>
-                <el-option label="涓嶅悎鏍�" value="涓嶅悎鏍�"/>
+                <el-option label="鍚堟牸" value="鍚堟牸" />
+                <el-option label="涓嶅悎鏍�" value="涓嶅悎鏍�" />
               </el-select>
             </el-form-item>
           </el-col>
           <el-col :span="12">
             <el-form-item label="妫�楠屽憳锛�" prop="checkName">
-              <el-select v-model="form.checkName" placeholder="璇烽�夋嫨" clearable style="width: 100%">
-                <el-option v-for="item in userList" :key="item.nickName" :label="item.nickName" :value="item.nickName"/>
+              <el-select
+                v-model="form.checkName"
+                placeholder="璇烽�夋嫨"
+                clearable
+                style="width: 100%"
+              >
+                <el-option
+                  v-for="item in userList"
+                  :key="item.nickName"
+                  :label="item.nickName"
+                  :value="item.nickName"
+                />
               </el-select>
             </el-form-item>
           </el-col>
           <el-col :span="12">
             <el-form-item label="妫�娴嬫棩鏈燂細" prop="checkTime">
               <el-date-picker
-                  v-model="form.checkTime"
-                  type="date"
-                  placeholder="璇烽�夋嫨鏃ユ湡"
-                  value-format="YYYY-MM-DD"
-                  format="YYYY-MM-DD"
-                  clearable
-                  style="width: 100%"
+                v-model="form.checkTime"
+                type="date"
+                placeholder="璇烽�夋嫨鏃ユ湡"
+                value-format="YYYY-MM-DD"
+                format="YYYY-MM-DD"
+                clearable
+                style="width: 100%"
               />
             </el-form-item>
           </el-col>
         </el-row>
       </el-form>
-<!--      <div style="margin-bottom: 10px;text-align: right">-->
-<!--        <el-button type="danger" plain @click="handleDelete">鍒犻櫎</el-button>-->
-<!--      </div>-->
+      <!--      <div style="margin-bottom: 10px;text-align: right">-->
+      <!--        <el-button type="danger" plain @click="handleDelete">鍒犻櫎</el-button>-->
+      <!--      </div>-->
       <PIMTable
-          rowKey="id"
-          :column="tableColumn"
-          :tableData="tableData"
-          :tableLoading="tableLoading"
-          height="400"
+        rowKey="id"
+        :column="tableColumn"
+        :tableData="tableData"
+        :tableLoading="tableLoading"
+        height="400"
       >
         <template #instrument="{ row }">
           <el-select
-              v-model="row.instrument"
-              placeholder="璇烽�夋嫨鎴栬緭鍏�"
-              filterable
-              allow-create
-              default-first-option
-              clearable
-              style="width: 100%"
-              @change="handleInstrumentChange(row)"
+            v-model="row.instrument"
+            placeholder="璇烽�夋嫨鎴栬緭鍏�"
+            filterable
+            allow-create
+            default-first-option
+            clearable
+            style="width: 100%"
+            @change="handleInstrumentChange(row)"
           >
             <el-option label="鐩祴" value="鐩祴" />
             <el-option
-                v-for="item in deviceList"
-                :key="item.id"
-                :label="item.deviceName + (item.deviceModel ? ' / ' + item.deviceModel : '')"
-                :value="item.deviceName"
+              v-for="item in deviceList"
+              :key="item.id"
+              :label="
+                item.deviceName +
+                (item.deviceModel ? ' / ' + item.deviceModel : '')
+              "
+              :value="item.deviceName"
             />
           </el-select>
         </template>
         <template #deviceStatus="{ row }">
           <el-select
-              v-model="row.deviceStatus"
-              placeholder="璇烽�夋嫨"
-              default-first-option
-              clearable
-              style="width: 100%"
+            v-model="row.deviceStatus"
+            placeholder="璇烽�夋嫨"
+            default-first-option
+            clearable
+            style="width: 100%"
           >
             <el-option label="姝e父" value="姝e父" />
             <el-option label="鍋滄満" value="鍋滄満" />
@@ -217,7 +267,13 @@
           <el-input v-model="row.result" placeholder="璇疯緭鍏�" clearable />
         </template>
         <template #resultJudgment="{ row }">
-          <el-select v-model="row.resultJudgment" placeholder="璇烽�夋嫨" clearable style="width: 100%" @change="changeResult">
+          <el-select
+            v-model="row.resultJudgment"
+            placeholder="璇烽�夋嫨"
+            clearable
+            style="width: 100%"
+            @change="changeResult"
+          >
             <el-option label="鍚堟牸" value="鍚堟牸" />
             <el-option label="涓嶅悎鏍�" value="涓嶅悎鏍�" />
             <el-option label="/" value="/" />
@@ -235,24 +291,40 @@
 </template>
 
 <script setup>
-import {ref, reactive, toRefs, computed, getCurrentInstance, nextTick} from "vue";
-import {getOptions} from "@/api/procurementManagement/procurementLedger.js";
-import {modelList, productTreeList} from "@/api/basicData/product.js";
-import {qualityInspectAdd, qualityInspectUpdate} from "@/api/qualityManagement/rawMaterialInspection.js";
-import {qualityInspectParamDel, qualityInspectParamInfo} from "@/api/qualityManagement/qualityInspectParam.js";
-import {qualityInspectDetailByProductId, getQualityTestStandardParamByTestStandardId} from "@/api/qualityManagement/metricMaintenance.js";
-import {deviceList as qualityInspectParamDeviceList} from "@/api/energyManagement/index.js";
-import {userListNoPage} from "@/api/system/user.js";
+import {
+  ref,
+  reactive,
+  toRefs,
+  computed,
+  getCurrentInstance,
+  nextTick,
+} from "vue";
+import { getOptions } from "@/api/procurementManagement/procurementLedger.js";
+import { modelList, productTreeList } from "@/api/basicData/product.js";
+import {
+  qualityInspectAdd,
+  qualityInspectUpdate,
+} from "@/api/qualityManagement/rawMaterialInspection.js";
+import {
+  qualityInspectParamDel,
+  qualityInspectParamInfo,
+} from "@/api/qualityManagement/qualityInspectParam.js";
+import {
+  qualityInspectDetailByProductId,
+  getQualityTestStandardParamByTestStandardId,
+} from "@/api/qualityManagement/metricMaintenance.js";
+import { deviceList as qualityInspectParamDeviceList } from "@/api/energyManagement/index.js";
+import { userListNoPage } from "@/api/system/user.js";
 
-const {proxy} = getCurrentInstance()
-const emit = defineEmits(['close'])
+const { proxy } = getCurrentInstance();
+const emit = defineEmits(["close"]);
 
 const dialogFormVisible = ref(false);
-const operationType = ref('')
+const operationType = ref("");
 
 const validateBatchNo = (rule, value, callback) => {
-  if (value === undefined || value === null || String(value).trim() === '') {
-    callback(new Error('璇疯緭鍏ユ壒鍙�'));
+  if (value === undefined || value === null || String(value).trim() === "") {
+    callback(new Error("璇疯緭鍏ユ壒鍙�"));
     return;
   }
   callback();
@@ -280,19 +352,23 @@
     checkResult: "",
   },
   rules: {
-    checkTime: [{required: true, message: "璇疯緭鍏�", trigger: "blur"},],
-    supplier: [{required: true, message: "璇疯緭鍏�", trigger: "blur"}],
-    checkName: [{required: false, message: "璇疯緭鍏�", trigger: "blur"}],
-    productId: [{required: true, message: "璇疯緭鍏�", trigger: "blur"}],
-    productModelId: [{required: true, message: "璇烽�夋嫨浜у搧鍨嬪彿", trigger: "change"}],
-    testStandardId: [{required: false, message: "璇烽�夋嫨鎸囨爣", trigger: "change"}],
-    unit: [{required: false, message: "璇疯緭鍏�", trigger: "blur"}],
-    quantity: [{required: true, message: "璇疯緭鍏�", trigger: "blur"}],
+    checkTime: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
+    supplier: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
+    checkName: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
+    productId: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
+    productModelId: [
+      { required: true, message: "璇烽�夋嫨浜у搧鍨嬪彿", trigger: "change" },
+    ],
+    testStandardId: [
+      { required: false, message: "璇烽�夋嫨鎸囨爣", trigger: "change" },
+    ],
+    unit: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
+    quantity: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
     inspectedQuantity: [
-      {required: true, message: "璇疯緭鍏ユ鍝佹暟閲�", trigger: "blur"},
+      { required: true, message: "璇疯緭鍏ユ鍝佹暟閲�", trigger: "blur" },
       {
         validator: (rule, value, callback) => {
-          if (value !== '' && value !== null && value !== undefined) {
+          if (value !== "" && value !== null && value !== undefined) {
             const qty = Number(form.value.quantity);
             const inspectedQty = Number(value);
             if (!isNaN(qty) && !isNaN(inspectedQty) && inspectedQty > qty) {
@@ -304,63 +380,65 @@
             callback();
           }
         },
-        trigger: "blur"
-      }
+        trigger: "blur",
+      },
     ],
-    checkCompany: [{required: false, message: "璇疯緭鍏�", trigger: "blur"}],
+    checkCompany: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
     batchNo: [{ required: true, validator: validateBatchNo, trigger: "blur" }],
-    checkResult: [{required: true, message: "璇烽�夋嫨妫�娴嬬粨鏋�", trigger: "change"}],
+    checkResult: [
+      { required: true, message: "璇烽�夋嫨妫�娴嬬粨鏋�", trigger: "change" },
+    ],
   },
 });
 const tableColumn = ref([
   {
     label: "妫�娴嬮」鐩�",
     prop: "parameterItem",
-    width: 150
+    width: 150,
   },
   {
     label: "鏍囧噯瑕佹眰",
     prop: "standardValue",
-    width: 180
+    width: 180,
   },
   {
     label: "鍗曚綅",
     prop: "unit",
-    width: 70
+    width: 70,
   },
   {
     label: "妫�娴嬪櫒鍏�",
     prop: "instrument",
-    dataType: 'slot',
-    slot: 'instrument',
-    width: 220
+    dataType: "slot",
+    slot: "instrument",
+    width: 220,
   },
   {
     label: "璁惧鐘舵��",
     prop: "deviceStatus",
-    dataType: 'slot',
-    slot: 'deviceStatus',
-    width: 120
+    dataType: "slot",
+    slot: "deviceStatus",
+    width: 120,
   },
   {
     label: "妫�娴嬬粨鏋�",
     prop: "result",
-    dataType: 'slot',
-    slot: 'result',
-    width: 150
+    dataType: "slot",
+    slot: "result",
+    width: 150,
   },
   {
     label: "缁撴灉鍒ゆ柇",
     prop: "resultJudgment",
-    dataType: 'slot',
-    slot: 'resultJudgment',
-    width: 120
+    dataType: "slot",
+    slot: "resultJudgment",
+    width: 120,
   },
 ]);
 const tableData = ref([]);
 const tableLoading = ref(false);
 
-const {form, rules} = toRefs(data);
+const { form, rules } = toRefs(data);
 const supplierList = ref([]);
 const productOptions = ref([]);
 const currentProductId = ref(0);
@@ -393,7 +471,7 @@
   // 鍔犺浇璁惧鍙拌处鍒楄〃
   loadDeviceList();
   // 鍏堥噸缃〃鍗曟暟鎹紙淇濇寔瀛楁瀹屾暣锛岄伩鍏嶅脊绐楅娆℃覆鏌撴椂瑙﹀彂蹇呭~绾㈡鈥滈棯涓�涓嬧�濓級
-	form.value = {
+  form.value = {
     checkTime: "",
     supplier: "",
     checkName: "",
@@ -412,16 +490,16 @@
     validityDate: "",
     checkCompany: "",
     checkResult: "",
-  }
+  };
   testStandardOptions.value = [];
   tableData.value = [];
   // 鍏堢‘淇濅骇鍝佹爲宸插姞杞斤紝鍚﹀垯缂栬緫鏃朵骇鍝�/瑙勬牸鍨嬪彿鏃犳硶鍙嶆樉
   await getProductOptions();
-  if (operationType.value === 'edit') {
+  if (operationType.value === "edit") {
     // 鍏堜繚瀛� testStandardId锛岄伩鍏嶈娓呯┖
     const savedTestStandardId = row.testStandardId;
-    form.value = {...row}
-    currentProductId.value = row.productId || 0
+    form.value = { ...row };
+    currentProductId.value = row.productId || 0;
     // 鍏抽敭锛氱紪杈戞椂鍔犺浇瑙勬牸鍨嬪彿涓嬫媺閫夐」锛屾墠鑳藉弽鏄� productModelId
     if (currentProductId.value) {
       try {
@@ -441,9 +519,9 @@
       // 鍏堝姞杞芥寚鏍囬�夐」
       let params = {
         productId: currentProductId.value,
-        inspectType: 0
-      }
-      qualityInspectDetailByProductId(params).then(res => {
+        inspectType: 0,
+      };
+      qualityInspectDetailByProductId(params).then((res) => {
         testStandardOptions.value = res.data || [];
         // 浣跨敤 nextTick 鍜� setTimeout 纭繚閫夐」宸茬粡娓叉煋鍒� DOM
         nextTick(() => {
@@ -451,8 +529,10 @@
             // 濡傛灉缂栬緫鏁版嵁涓湁 testStandardId锛屽垯璁剧疆骞跺姞杞藉搴旂殑鍙傛暟
             if (savedTestStandardId) {
               // 纭繚绫诲瀷鍖归厤锛坕tem.id 鍙兘鏄暟瀛楁垨瀛楃涓诧級
-              const matchedOption = testStandardOptions.value.find(item => 
-                item.id == savedTestStandardId || String(item.id) === String(savedTestStandardId)
+              const matchedOption = testStandardOptions.value.find(
+                (item) =>
+                  item.id == savedTestStandardId ||
+                  String(item.id) === String(savedTestStandardId)
               );
               if (matchedOption) {
                 // 纭繚浣跨敤鍖归厤椤圭殑 id锛堜繚鎸佺被鍨嬩竴鑷达級
@@ -461,7 +541,12 @@
                 getQualityInspectParamList(row.id);
               } else {
                 // 濡傛灉鎵句笉鍒板尮閰嶉」锛屽皾璇曠洿鎺ヤ娇鐢ㄥ師鍊�
-                console.warn('鏈壘鍒板尮閰嶇殑鎸囨爣閫夐」锛宼estStandardId:', savedTestStandardId, '鍙敤閫夐」:', testStandardOptions.value);
+                console.warn(
+                  "鏈壘鍒板尮閰嶇殑鎸囨爣閫夐」锛宼estStandardId:",
+                  savedTestStandardId,
+                  "鍙敤閫夐」:",
+                  testStandardOptions.value
+                );
                 form.value.testStandardId = savedTestStandardId;
                 getQualityInspectParamList(row.id);
               }
@@ -481,7 +566,7 @@
   nextTick(() => {
     proxy.$refs?.formRef?.clearValidate?.();
   });
-}
+};
 const getProductOptions = () => {
   return productTreeList().then((res) => {
     productOptions.value = convertIdToValue(res);
@@ -494,25 +579,28 @@
   form.value.uidNo = undefined;
   form.value.batchNo = "";
   modelOptions.value = [];
-  currentProductId.value = value
+  currentProductId.value = value;
   form.value.productName = findNodeById(productOptions.value, value);
   modelList({ id: value }).then((res) => {
     modelOptions.value = res;
-  })
+  });
   if (currentProductId.value) {
     getList();
   }
 };
 
 const handleChangeModel = (value) => {
-  form.value.model = modelOptions.value.find(item => item.id == value)?.model || '';
-  form.value.unit = modelOptions.value.find(item => item.id == value)?.unit || '';
-  form.value.uidNo = modelOptions.value.find(item => item.id == value)?.uidNo || '';
+  form.value.model =
+    modelOptions.value.find((item) => item.id == value)?.model || "";
+  form.value.unit =
+    modelOptions.value.find((item) => item.id == value)?.unit || "";
+  form.value.uidNo =
+    modelOptions.value.find((item) => item.id == value)?.uidNo || "";
   // 閫夋嫨瑙勬牸鍨嬪彿鍚庯紝濡傛灉宸叉湁鐢熶骇鏃ユ湡鍒欓噸鏂拌绠楁湁鏁堟湡
   if (form.value.productionDate) {
     calculateValidityDate();
   }
-}
+};
 
 const findNodeById = (nodes, productId) => {
   for (let i = 0; i < nodes.length; i++) {
@@ -531,7 +619,7 @@
 
 function convertIdToValue(data) {
   return data.map((item) => {
-    const {id, children, ...rest} = item;
+    const { id, children, ...rest } = item;
     const newItem = {
       ...rest,
       value: id, // 灏� id 鏀逛负 value
@@ -546,29 +634,29 @@
 
 // 鎻愪氦浜у搧琛ㄥ崟
 const submitForm = () => {
-  proxy.$refs.formRef.validate(valid => {
+  proxy.$refs.formRef.validate((valid) => {
     if (valid) {
-      form.value.inspectType = 0
-			if (operationType.value === "add") {
-				tableData.value.forEach((item) => {
-					delete item.id
-				})
-			}
-      const data = {...form.value, qualityInspectParams: tableData.value}
+      form.value.inspectType = 0;
       if (operationType.value === "add") {
-        qualityInspectAdd(data).then(res => {
+        tableData.value.forEach((item) => {
+          delete item.id;
+        });
+      }
+      const data = { ...form.value, qualityInspectParams: tableData.value };
+      if (operationType.value === "add") {
+        qualityInspectAdd(data).then((res) => {
           proxy.$modal.msgSuccess("鎻愪氦鎴愬姛");
           closeDia();
-        })
+        });
       } else {
-        qualityInspectUpdate(data).then(res => {
+        qualityInspectUpdate(data).then((res) => {
           proxy.$modal.msgSuccess("鎻愪氦鎴愬姛");
           closeDia();
-        })
+        });
       }
     }
-  })
-}
+  });
+};
 
 const getList = () => {
   if (!currentProductId.value) {
@@ -578,17 +666,17 @@
   }
   let params = {
     productId: currentProductId.value,
-    inspectType: 0
-  }
-  qualityInspectDetailByProductId(params).then(res => {
+    inspectType: 0,
+  };
+  qualityInspectDetailByProductId(params).then((res) => {
     // 淇濆瓨涓嬫媺妗嗛�夐」鏁版嵁
     testStandardOptions.value = res.data || [];
     // 娓呯┖琛ㄦ牸鏁版嵁锛岀瓑寰呯敤鎴烽�夋嫨鎸囨爣
     tableData.value = [];
     // 娓呯┖鎸囨爣閫夋嫨
-    form.value.testStandardId = '';
-  })
-}
+    form.value.testStandardId = "";
+  });
+};
 
 // 鎸囨爣閫夋嫨鍙樺寲澶勭悊
 const handleTestStandardChange = (testStandardId) => {
@@ -597,25 +685,28 @@
     return;
   }
   tableLoading.value = true;
-  getQualityTestStandardParamByTestStandardId(testStandardId).then(res => {
-    tableData.value = res.data || [];
-  }).catch(error => {
-    console.error('鑾峰彇鏍囧噯鍙傛暟澶辫触:', error);
-    tableData.value = [];
-  }).finally(() => {
-    tableLoading.value = false;
-  })
-}
+  getQualityTestStandardParamByTestStandardId(testStandardId)
+    .then((res) => {
+      tableData.value = res.data || [];
+    })
+    .catch((error) => {
+      console.error("鑾峰彇鏍囧噯鍙傛暟澶辫触:", error);
+      tableData.value = [];
+    })
+    .finally(() => {
+      tableLoading.value = false;
+    });
+};
 
 const getQualityInspectParamList = (id) => {
-  qualityInspectParamInfo(id).then(res => {
-    tableData.value = (res.data || []).map(item => ({...item}));
-  })
-}
+  qualityInspectParamInfo(id).then((res) => {
+    tableData.value = (res.data || []).map((item) => ({ ...item }));
+  });
+};
 
 // 鑾峰彇璁惧鍙拌处鍒楄〃
 const loadDeviceList = () => {
-  qualityInspectParamDeviceList().then(res => {
+  qualityInspectParamDeviceList().then((res) => {
     deviceList.value = res.data || [];
   });
 };
@@ -623,49 +714,55 @@
 // 璁惧鐘舵�侀鑹叉槧灏�
 const getDeviceStatusType = (status) => {
   const map = {
-    '姝e父': 'success',
-    '杩愯': 'primary',
-    '鍋滄満': 'warning',
-    '缁翠慨': 'danger'
+    姝e父: "success",
+    杩愯: "primary",
+    鍋滄満: "warning",
+    缁翠慨: "danger",
   };
-  return map[status] || 'info';
+  return map[status] || "info";
 };
 
 // 妫�娴嬪櫒鍏峰彉鍖栨椂锛岃嚜鍔ㄥ~鍏呰澶囩姸鎬�
 const handleInstrumentChange = (row) => {
-  if (row.instrument === '鐩祴') {
+  if (row.instrument === "鐩祴") {
     row.deviceId = null;
-    row.deviceName = '鐩祴';
-    row.deviceStatus = '';
+    row.deviceName = "鐩祴";
+    row.deviceStatus = "";
     return;
   }
-  const device = deviceList.value.find(d => d.deviceName === row.instrument);
+  const device = deviceList.value.find((d) => d.deviceName === row.instrument);
   if (device) {
     row.deviceId = device.id;
     row.deviceName = device.deviceName;
-    row.deviceStatus = device.status || '';
+    row.deviceStatus = device.status || "";
   } else {
     row.deviceId = null;
-    row.deviceName = row.instrument || '';
-    row.deviceStatus = '';
+    row.deviceName = row.instrument || "";
+    row.deviceStatus = "";
   }
 };
 
 // 璁$畻鏈夋晥鏈燂紙鐢熶骇鏃ユ湡 + 瑙勬牸鍨嬪彿涓殑鏈夋晥鏈燂級
 const calculateValidityDate = async () => {
   if (!form.value.productionDate) {
-    form.value.validityDate = '';
+    form.value.validityDate = "";
     return;
   }
   // 鑾峰彇瑙勬牸鍨嬪彿鐨勬湁鏁堟湡
-  const selectedModel = modelOptions.value.find(item => item.id == form.value.productModelId);
+  const selectedModel = modelOptions.value.find(
+    (item) => item.id == form.value.productModelId
+  );
   if (selectedModel && selectedModel.validityPeriod) {
     const productionDate = new Date(form.value.productionDate);
     const validityPeriod = parseFloat(selectedModel.validityPeriod);
     const validityDate = new Date(productionDate);
-    validityDate.setFullYear(validityDate.getFullYear() + Math.floor(validityPeriod));
-    validityDate.setMonth(validityDate.getMonth() + Math.round((validityPeriod % 1) * 12));
-    form.value.validityDate = validityDate.toISOString().split('T')[0];
+    validityDate.setFullYear(
+      validityDate.getFullYear() + Math.floor(validityPeriod)
+    );
+    validityDate.setMonth(
+      validityDate.getMonth() + Math.round((validityPeriod % 1) * 12)
+    );
+    form.value.validityDate = validityDate.toISOString().split("T")[0];
   }
 };
 
@@ -674,28 +771,26 @@
   proxy.resetForm("formRef");
   tableData.value = [];
   testStandardOptions.value = [];
-  form.value.testStandardId = '';
+  form.value.testStandardId = "";
   dialogFormVisible.value = false;
-  emit('close')
+  emit("close");
 };
 
 // 淇敼妫�娴嬬粨鏋�
 const changeResult = () => {
-  let result = '鍚堟牸'
-  tableData.value.forEach(item => {
-    if (item.resultJudgment !== '/') {
-      if (item.resultJudgment === '涓嶅悎鏍�') {
-        result = '涓嶅悎鏍�'
+  let result = "鍚堟牸";
+  tableData.value.forEach((item) => {
+    if (item.resultJudgment !== "/") {
+      if (item.resultJudgment === "涓嶅悎鏍�") {
+        result = "涓嶅悎鏍�";
       }
     }
   });
-  form.value.checkResult = result
+  form.value.checkResult = result;
 };
 defineExpose({
   openDialog,
 });
 </script>
 
-<style scoped>
-
-</style>
\ No newline at end of file
+<style scoped></style>

--
Gitblit v1.9.3