From 9689c0418e2a71a36ae2ebef79a0db329ca428bf Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期一, 20 四月 2026 11:33:16 +0800
Subject: [PATCH] feat: 添加厚度字段

---
 src/views/qualityManagement/processInspection/components/formDia.vue |   48 +++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 43 insertions(+), 5 deletions(-)

diff --git a/src/views/qualityManagement/processInspection/components/formDia.vue b/src/views/qualityManagement/processInspection/components/formDia.vue
index e0d226e..d9dbee3 100644
--- a/src/views/qualityManagement/processInspection/components/formDia.vue
+++ b/src/views/qualityManagement/processInspection/components/formDia.vue
@@ -10,7 +10,9 @@
         <el-row :gutter="30">
           <el-col :span="12">
             <el-form-item label="宸ュ簭锛�" prop="process">
-              <el-input v-model="form.process" placeholder="璇疯緭鍏ュ伐搴�" clearable :disabled="processQuantityDisabled" />
+              <el-select v-model="form.process" placeholder="璇烽�夋嫨宸ュ簭" clearable :disabled="processQuantityDisabled" style="width: 100%">
+                <el-option v-for="item in processList" :key="item.name" :label="item.name" :value="item.name"/>
+              </el-select>
             </el-form-item>
           </el-col>
           <el-col :span="12">
@@ -60,9 +62,16 @@
         <el-row :gutter="30">
           <el-col :span="12">
             <el-form-item label="鍗曚綅锛�" prop="unit">
-              <el-input v-model="form.unit" placeholder="璇疯緭鍏�" disabled/>
+              <el-input v-model="form.unit" placeholder="鑷姩甯﹀嚭" readonly class="readonly-display"/>
             </el-form-item>
           </el-col>
+          <el-col :span="12">
+            <el-form-item label="鍘氬害锛�" prop="thickness">
+              <el-input v-model="form.thickness" placeholder="鑷姩甯﹀嚭" readonly class="readonly-display"/>
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row :gutter="30">
           <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="processQuantityDisabled"/>
@@ -137,8 +146,11 @@
 import {qualityInspectDetailByProductId, getQualityTestStandardParamByTestStandardId} from "@/api/qualityManagement/metricMaintenance.js";
 import {userListNoPage} from "@/api/system/user.js";
 import {qualityInspectParamInfo} from "@/api/qualityManagement/qualityInspectParam.js";
+import { list } from "@/api/productionManagement/productionProcess";
 const { proxy } = getCurrentInstance()
 const emit = defineEmits(['close'])
+
+
 
 const dialogFormVisible = ref(false);
 const operationType = ref('')
@@ -153,18 +165,20 @@
     model: "",
     testStandardId: "",
     unit: "",
+    thickness: "",
     quantity: "",
     checkCompany: "",
     checkResult: "",
   },
   rules: {
     checkTime: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" },],
-    process: [{ required: true, message: "璇疯緭鍏ュ伐搴�", trigger: "blur" }],
+    process: [{ required: true, message: "璇烽�夋嫨宸ュ簭", trigger: "change" }],
     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" }],
+    thickness: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
     quantity: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
     checkCompany: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
     checkResult: [{ required: true, message: "璇疯緭鍏�", trigger: "change" }],
@@ -177,6 +191,7 @@
   const v = form.value || {};
   return !!(v.productMainId != null || v.purchaseLedgerId != null);
 });
+const processList = ref([]); // 宸ュ簭涓嬫媺鍒楄〃锛堝伐搴忓悕绉� name锛�
 const supplierList = ref([]);
 const productOptions = ref([]);
 const tableColumn = ref([
@@ -215,6 +230,14 @@
 	getOptions().then((res) => {
 		supplierList.value = res.data;
 	});
+	// 鍔犺浇宸ュ簭涓嬫媺鍒楄〃
+	try {
+		const res = await list();
+		processList.value = res.data || [];
+	} catch (e) {
+		console.error("鍔犺浇宸ュ簭鍒楄〃澶辫触", e);
+		processList.value = [];
+	}
 	let userLists = await userListNoPage();
 	userList.value = userLists.data;
 	// 鍏堥噸缃〃鍗曟暟鎹紙淇濇寔瀛楁瀹屾暣锛岄伩鍏嶅脊绐楅娆℃覆鏌撴椂瑙﹀彂蹇呭~绾㈡鈥滈棯涓�涓嬧�濓級
@@ -228,6 +251,7 @@
 		model: "",
 		testStandardId: "",
 		unit: "",
+		thickness: "",
 		quantity: "",
 		checkCompany: "",
 		checkResult: "",
@@ -312,6 +336,7 @@
 const getModels = (value) => {
   form.value.productModelId = undefined;
   form.value.unit = undefined;
+  form.value.thickness = undefined;
   modelOptions.value = [];
   currentProductId.value = value
   form.value.productName = findNodeById(productOptions.value, value);
@@ -324,8 +349,10 @@
 };
 
 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 || '';
+  const selectedModel = modelOptions.value.find(item => item.id == value);
+  form.value.model = selectedModel?.model || '';
+  form.value.unit = selectedModel?.unit || '';
+  form.value.thickness = selectedModel?.thickness ?? '';
 }
 
 const findNodeById = (nodes, productId) => {
@@ -446,4 +473,15 @@
 
 <style scoped>
 
+:deep(.readonly-display .el-input__wrapper) {
+  background-color: var(--el-disabled-bg-color);
+  box-shadow: 0 0 0 1px var(--el-disabled-border-color) inset;
+}
+
+:deep(.readonly-display .el-input__inner) {
+  color: var(--el-disabled-text-color);
+  -webkit-text-fill-color: var(--el-disabled-text-color);
+  cursor: not-allowed;
+}
+
 </style>
\ No newline at end of file

--
Gitblit v1.9.3