buhuazhen
2026-05-22 008672d6215dcf02a9cb027ccfb972f4ce10ee4c
src/views/qualityManagement/rawMaterialInspection/components/formDia.vue
@@ -100,7 +100,7 @@
        <el-row :gutter="30">
          <el-col :span="12">
            <el-form-item label="检验员:" prop="checkName">
              <el-select v-model="form.checkName" placeholder="请选择" clearable style="width: 100%">
              <el-select v-model="form.checkName" placeholder="请选择" clearable style="width: 100%" filterable>
                <el-option v-for="item in userList" :key="item.nickName" :label="item.nickName" :value="item.nickName"/>
              </el-select>
            </el-form-item>
@@ -228,7 +228,7 @@
});
// 打开弹框
const openDialog = async (type, row) => {
const openDialog = async (type, row, defaultCheckResult = "") => {
  operationType.value = type;
  getOptions().then((res) => {
    supplierList.value = res.data;
@@ -236,12 +236,16 @@
  try {
    const userRes = await userListNoPage();
    userList.value = userRes.data || [];
    // 筛选 roleIds 包含 106 的用户
    userList.value = (userRes.data || []).filter(user => {
      const roleIds = user.roleIds || [];
      return roleIds.includes(106) || roleIds.includes('106');
    });
  } catch (e) {
    console.error("加载检验员列表失败", e);
    userList.value = [];
  }
  // 先重置表单数据(保持字段完整,避免弹窗首次渲染时触发必填红框“闪一下”)
  // 先重置表单数据(保持字段完整,避免弹窗首次渲染时触发必填红框"闪一下")
   form.value = {
    checkTime: "",
    supplier: "",
@@ -254,7 +258,7 @@
    unit: "",
    quantity: "",
    checkCompany: "",
    checkResult: "",
    checkResult: defaultCheckResult || "",
  }
  testStandardOptions.value = [];
  tableData.value = [];
@@ -264,6 +268,10 @@
    // 先保存 testStandardId,避免被清空
    const savedTestStandardId = row.testStandardId;
    form.value = {...row}
    // 如果传入了默认检测结果,覆盖row中的值
    if (defaultCheckResult) {
      form.value.checkResult = defaultCheckResult;
    }
    currentProductId.value = row.productId || 0
    // 关键:编辑时加载规格型号下拉选项,才能反显 productModelId
    if (currentProductId.value) {