yuan
2 天以前 09ce99b6d33ec58d462da5b5fd65927d7ef98f60
fix: 终检表单优化检验用粉剂/液数据加载
已修改1个文件
50 ■■■■■ 文件已修改
src/views/qualityManagement/finalInspection/components/formDia.vue 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/qualityManagement/finalInspection/components/formDia.vue
@@ -502,9 +502,14 @@
          // 编辑场景保留已有检验值,直接拉取原参数数据
          getQualityInspectParamList(row.id);
        });
        // 编辑模式下,加载检验用粉剂/液相关数据
        loadInspectMaterialData();
      });
    } else {
      getQualityInspectParamList(row.id);
      // 即使没有主产品,也尝试加载检验用粉剂/液数据
      loadInspectMaterialData();
    }
  }
}
@@ -652,31 +657,45 @@
  }
};
// 加载检验用粉剂/液情况相关数据(编辑模式回显用)
const loadInspectMaterialData = () => {
  // 如果有检验用粉剂/液产品ID,加载对应的规格型号
  if (form.value.inspectMaterialConditionId) {
    modelList({ id: form.value.inspectMaterialConditionId }).then((res) => {
      inspectProductModel.value = res || [];
      // 如果有规格型号ID,加载批号列表
      if (form.value.inspectProductModelId && inspectProductModel.value.length > 0) {
        const selectedModel = inspectProductModel.value.find(item => item.id == form.value.inspectProductModelId);
        if (selectedModel) {
          form.value.inspectProductModel = selectedModel.model || '';
        }
        // 根据规格型号查询批号列表
        getStockInventoryListPage({
          model: form.value.inspectProductModel,
          pageNum: 1,
          pageSize: -1
        }).then((res) => {
          inspectBatchOptions.value = res.data.records || [];
        });
      }
    });
  }
};
// 选择检验用粉剂/液情况后,根据产品ID查询库存批号列表
const handleInspectMaterialChange = (productId) => {
  inspectBatchOptions.value = [];
  form.value.inspectBatchNo = "";
  form.value.inspectProductModel = "";
  form.value.inspectProductModelId = "";
  form.value.inspectProductionDate = "";
  form.value.inspectValidityDate = "";
  form.value.inspectValidityPeriod = "";
  // let productName = findNodeById(productOptions.value, productId);
  form.value.inspectMaterialCondition = findNodeById(productOptions.value, productId);
  modelList({ id: productId }).then((res) => {
    inspectProductModel.value = res;
  })
  /*getStockInventoryListPage({
    productName: productName,
    pageNum: 1,
    pageSize: -1
  }).then(res => {
    inspectBatchOptions.value = res.data || []
    // 清空已选择的批号和新字段
    form.value.inspectBatchNo = "";
    form.value.inspectProductModel = "";
    form.value.inspectProductionDate = "";
    form.value.inspectValidityDate = "";
  });*/
};
const handleChangeModels = (value) => {
@@ -687,13 +706,12 @@
    pageNum: 1,
    pageSize: -1
  }).then(res => {
    inspectBatchOptions.value = res.data || []
    inspectBatchOptions.value = res.data.records || []
    // 清空已选择的批号和新字段
    form.value.inspectBatchNo = "";
    form.value.inspectProductionDate = "";
    form.value.inspectValidityDate = "";
  });
  if (form.value.productionDate) {
    calculateInspectValidityDate();
  }
@@ -709,7 +727,7 @@
  const selectedModel = inspectProductModel.value.find(item => item.id == form.value.inspectProductModelId);
  if (selectedModel && selectedModel.validityPeriod) {
    const inspectProductionDate = new Date(form.value.inspectProductionDate);
    const validityPeriod = parseFloat(selectedModel.inspectValidityDate);
    const validityPeriod = parseFloat(selectedModel.validityPeriod);
    const validityDate = new Date(inspectProductionDate);
    validityDate.setFullYear(validityDate.getFullYear() + Math.floor(validityPeriod));
    validityDate.setMonth(validityDate.getMonth() + Math.round((validityPeriod % 1) * 12));