From 70551b35cac6dd0262f644cb248ba1d03ff2fa08 Mon Sep 17 00:00:00 2001
From: buhuazhen <hua100783@gmail.com>
Date: 星期五, 22 五月 2026 14:53:10 +0800
Subject: [PATCH]   feat: 质量管理检验员筛选和传递优化   1. 检验员下拉框筛选:过程检验、出厂检验、原材料检验的检验员下拉框只显示 roleIds 包含 106 的用户,包括列表页的"检验"弹窗、"分配检验员"弹窗,以及新增/编辑弹窗     2. 检验员默认值优化:点击"检验"按钮时检验员默认为当前登录用户;选择"不合格"打开详情页时检验员从上个页面带入,修复 closeQuickCheck() 重置表单导致检验员值丢失的问题   3. 材料信息新增行修复:生产工单绑定工艺路线弹窗中,新增材料行时根据 productById 是否有值判断显示选择器还是文本

---
 src/views/qualityManagement/finalInspection/components/formDia.vue |   23 +++++++++++++++++------
 1 files changed, 17 insertions(+), 6 deletions(-)

diff --git a/src/views/qualityManagement/finalInspection/components/formDia.vue b/src/views/qualityManagement/finalInspection/components/formDia.vue
index 5f4c975..2866cca 100644
--- a/src/views/qualityManagement/finalInspection/components/formDia.vue
+++ b/src/views/qualityManagement/finalInspection/components/formDia.vue
@@ -80,7 +80,7 @@
         <el-row :gutter="30">
           <el-col :span="12">
             <el-form-item label="妫�楠屽憳锛�" prop="checkName">
-							<el-select v-model="form.checkName" placeholder="璇烽�夋嫨" clearable>
+							<el-select v-model="form.checkName" placeholder="璇烽�夋嫨" clearable filterable>
 								<el-option v-for="item in userList" :key="item.nickName" :label="item.nickName"
 													 :value="item.nickName"/>
 							</el-select>
@@ -203,13 +203,13 @@
 const modelOptions = ref([]);
 
 // 鎵撳紑寮规
-const openDialog = async (type, row) => {
+const openDialog = async (type, row, defaultCheckResult = "", defaultCheckName = "") => {
   operationType.value = type;
   dialogFormVisible.value = true;
   // 鍏堟竻绌鸿〃鍗曢獙璇佺姸鎬侊紝閬垮厤闂儊
   await nextTick();
   proxy.$refs.formRef?.clearValidate();
-  
+
   // 骞惰鍔犺浇鍩虹鏁版嵁
   const [userListsRes] = await Promise.all([
     userListNoPage(),
@@ -218,17 +218,28 @@
       supplierList.value = res.data;
     })
   ]);
-  userList.value = userListsRes.data;
-  
+  // 绛涢�� roleIds 鍖呭惈 106 鐨勭敤鎴�
+  userList.value = (userListsRes.data || []).filter(user => {
+    const roleIds = user.roleIds || [];
+    return roleIds.includes(106) || roleIds.includes('106');
+  });
+
   form.value = {}
   testStandardOptions.value = [];
   tableData.value = [];
-  
+
   if (operationType.value === 'edit') {
     // 鍏堜繚瀛� testStandardId锛岄伩鍏嶈娓呯┖
     const savedTestStandardId = row.testStandardId;
     // 鍏堣缃〃鍗曟暟鎹紝浣嗘殏鏃舵竻绌� testStandardId锛岀瓑閫夐」鍔犺浇瀹屾垚鍚庡啀璁剧疆
     form.value = {...row, testStandardId: ''}
+    // 濡傛灉浼犲叆浜嗛粯璁ゆ娴嬬粨鏋滐紝瑕嗙洊row涓殑鍊�
+    if (defaultCheckResult) {
+      form.value.checkResult = defaultCheckResult;
+    }
+    // 濡傛灉浼犲叆浜嗛粯璁ゆ楠屽憳锛岃鐩杛ow涓殑鍊硷紙浼樺厛浣跨敤浼犲叆鐨勬楠屽憳锛�
+    console.log('formDia checkName debug:', { defaultCheckName, rowCheckName: row.checkName });
+    form.value.checkName = defaultCheckName || row.checkName || "";
     currentProductId.value = row.productId || 0
     // 娓呯┖楠岃瘉鐘舵�侊紝閬垮厤鏁版嵁鍔犺浇杩囩▼涓殑鏍¢獙闂儊
     nextTick(() => {

--
Gitblit v1.9.3