liyong
5 天以前 c935ca9c67f391615c63dadf822c45e6eb8be4f0
fix(form): 修正表单字段绑定和初始化问题

- 将表单项绑定从 model 改为 productModelId
- 初始化 quantity 字段为 undefined 而不是空字符串
- 添加 productModelId 字段到表单数据结构
- 实现模型选择变化时自动更新模型名称的功能
- 修复表单重置时的数据初始化逻辑
已修改1个文件
14 ■■■■ 文件已修改
src/views/qualityManagement/nonconformingManagement/components/formDia.vue 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/qualityManagement/nonconformingManagement/components/formDia.vue
@@ -35,7 +35,7 @@
          </el-col>
          <el-col :span="12">
            <el-form-item label="规格型号:" prop="model">
              <el-select v-model="form.model" placeholder="请选择" clearable :disabled="operationType === 'edit'"
              <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>
@@ -149,7 +149,7 @@
    productId: "",
    model: "",
    unit: "",
    quantity: "",
    quantity: undefined,
    checkCompany: "",
    checkResult: "",
    inspectType: '',
@@ -157,6 +157,7 @@
    dealResult: '',
    dealName: '',
    dealTime: '',
    productModelId: undefined,
  },
  rules: {
    checkTime: [{ required: false, message: "请输入", trigger: "blur" },],
@@ -199,8 +200,9 @@
      productId: '',
      model: '',
      unit: '',
      quantity: '',
      quantity: undefined,
      productName: '',
      productModelId: undefined,
    };
  } else {
    form.value = {};
@@ -224,6 +226,12 @@
    modelOptions.value = res;
  })
};
const handleChangeModel = (value) => {
  const selectedModel = modelOptions.value.find(item => item.id === value);
  if (selectedModel) {
    form.value.model = selectedModel.model;
  }
};
const findNodeById = (nodes, productId) => {
  for (let i = 0; i < nodes.length; i++) {
    if (nodes[i].value === productId) {