From f11ad9a6751b7d4b3681540ca0329f2a67a968c6 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期三, 26 八月 2026 14:58:16 +0800
Subject: [PATCH] feat: 质检添加采购单号、工单号、销售单号搜索

---
 src/views/qualityManagement/processInspection/index.vue |   68 ++++++++++++++++++++++++++--------
 1 files changed, 52 insertions(+), 16 deletions(-)

diff --git a/src/views/qualityManagement/processInspection/index.vue b/src/views/qualityManagement/processInspection/index.vue
index 178e81a..15ce00b 100644
--- a/src/views/qualityManagement/processInspection/index.vue
+++ b/src/views/qualityManagement/processInspection/index.vue
@@ -2,7 +2,16 @@
   <div class="app-container">
     <div class="search_form mb20">
       <div>
-        <span class="search_title">宸ュ簭锛�</span>
+        <span class="search_title">鐢熶骇宸ュ崟鍙凤細</span>
+        <el-input
+            v-model="searchForm.workOrderNo"
+            style="width: 240px"
+            placeholder="璇疯緭鍏ョ敓浜у伐鍗曞彿鎼滅储"
+            @change="handleQuery"
+            clearable
+            :prefix-icon="Search"
+        />
+        <span style="margin-left: 10px" class="search_title">宸ュ簭锛�</span>
         <el-input
             v-model="searchForm.process"
             style="width: 240px"
@@ -39,7 +48,7 @@
     </div>
     <InspectionFormDia ref="inspectionFormDia" @close="handleQuery"></InspectionFormDia>
     <FormDia ref="formDia" @close="handleQuery"></FormDia>
-    <files-dia ref="filesDia" @close="handleQuery"></files-dia>
+    <files-dia ref="filesDia"></files-dia>
 		<el-dialog v-model="dialogFormVisible" title="缂栬緫妫�楠屽憳" width="30%"
 							 @close="closeDia">
 			<el-form :model="form" label-width="140px" label-position="top" :rules="rules" ref="formRef">
@@ -79,6 +88,7 @@
 
 const data = reactive({
   searchForm: {
+    workOrderNo: "",
     process: "",
     entryDate: undefined, // 褰曞叆鏃ユ湡
     entryDateStart: undefined,
@@ -142,27 +152,43 @@
     width: 120
   },
   {
-    label: "妫�娴嬬粨鏋�",
-    prop: "checkResult",
+    label: "鍚堟牸鐜�",
+    prop: "passRate",
+    width: 100,
     dataType: "tag",
+    formatData: (params) => {
+      if (params == null || params === '') return '鈥�';
+      const n = Number(params);
+      if (Number.isNaN(n)) return '鈥�';
+      return `${n.toFixed(2)}%`;
+    },
     formatType: (params) => {
-      if (params == '涓嶅悎鏍�') {
-        return "danger";
-      } else if (params == '鍚堟牸') {
-        return "success";
-      } else {
-        return 'danger';
-      }
+      if (params == null || params === '') return 'info';
+      const n = Number(params);
+      if (Number.isNaN(n)) return 'info';
+      if (n === 100) return 'success';
+      if (n >= 75) return 'primary';
+      if (n >= 50) return 'warning';
+      if (n >= 25) return 'danger';
+      return 'danger';
     },
   },
 	{
 		label: "鎻愪氦鐘舵��",
 		prop: "inspectState",
+		dataType: "tag",
 		formatData: (params) => {
 			if (params) {
 				return "宸叉彁浜�";
 			} else {
 				return "鏈彁浜�";
+			}
+		},
+		formatType: (params) => {
+			if (params) {
+				return "success";
+			} else {
+				return "info";
 			}
 		},
 	},
@@ -209,6 +235,7 @@
 				clickFun: (row) => {
 					submit(row.id);
 				},
+				loading: (row) => submitLoadingId.value === row.id,
 				disabled: (row) => {
 					// 宸叉彁浜ゅ垯绂佺敤
 					if (row.inspectState == 1) return true;
@@ -248,6 +275,7 @@
 const tableData = ref([]);
 const selectedRows = ref([]);
 const tableLoading = ref(false);
+const submitLoadingId = ref(null);
 const dialogFormVisible = ref(false);
 const form = ref({
 	checkName: ""
@@ -317,12 +345,20 @@
     filesDia.value?.openDialog(type, row)
   })
 };
-// 鎻愪环
+// 鎻愪氦
 const submit = async (id) => {
-	const res = await submitQualityInspect({id: id})
-	if (res.code === 200) {
-		proxy.$modal.msgSuccess("鎻愪氦鎴愬姛");
-		getList();
+	submitLoadingId.value = id;
+	try {
+		const res = await submitQualityInspect({ id });
+		if (res.code === 200) {
+			proxy.$modal.msgSuccess("鎻愪氦鎴愬姛");
+			const row = tableData.value.find(item => item.id === id);
+			if (row) {
+				row.inspectState = 1;
+			}
+		}
+	} finally {
+		submitLoadingId.value = null;
 	}
 }
 const open = async (row) => {

--
Gitblit v1.9.3