|
|
|
@ -155,6 +155,7 @@ export default { |
|
|
|
label: 'template.lba.lba006.jg', |
|
|
|
type: "select", |
|
|
|
fillType: "actFill", |
|
|
|
otherLabel: " ", |
|
|
|
otherCode: "jgOther", |
|
|
|
otherMaxlength: 100, |
|
|
|
multiple: false, |
|
|
|
@ -184,8 +185,6 @@ export default { |
|
|
|
//获取已填写的表单数据 |
|
|
|
getFilledFormData() { |
|
|
|
const baseData = this.$refs.baseInfoRef.getFilledFormData(); |
|
|
|
const jcbData = this.$refs.jcbRef.getFilledFormData(); |
|
|
|
const fjData = this.$refs.fjRef.getFilledFormData(); |
|
|
|
const remarkData = this.$refs.remarkRef.getFilledFormData(); |
|
|
|
|
|
|
|
// 获取所有平行配制数据 |
|
|
|
@ -193,21 +192,15 @@ export default { |
|
|
|
if (this.formData.paralleConfigs && this.formData.paralleConfigs.length > 0) { |
|
|
|
for (let i = 0; i < this.formData.paralleConfigs.length; i++) { |
|
|
|
const paralleFormData = this.$refs[`paralleStepFormPackageRef_${i}`][0].getFilledFormData(); |
|
|
|
const paralleTableFormData = this.$refs[`paralleStepTableRef_${i}`][0].getFilledFormData(); |
|
|
|
const paralleStepData = this.$refs[`paralleStepRef_${i}`][0].getFilledFormData(); |
|
|
|
|
|
|
|
paralleConfigsData.push({ |
|
|
|
...paralleFormData, |
|
|
|
...paralleTableFormData, |
|
|
|
paralleStepData: paralleStepData.stepData, |
|
|
|
showParalleConfig: true |
|
|
|
}); |
|
|
|
} |
|
|
|
} |
|
|
|
return { |
|
|
|
...baseData, |
|
|
|
...jcbData, |
|
|
|
...fjData, |
|
|
|
...remarkData, |
|
|
|
paralleConfigs: paralleConfigsData, |
|
|
|
} |
|
|
|
@ -225,79 +218,27 @@ export default { |
|
|
|
//只做校验 |
|
|
|
async validFields() { |
|
|
|
// 构建需要验证的引用数组 |
|
|
|
let refsToValidate = ["baseInfoRef","jcbRef","fjRef", "remarkRef"]; |
|
|
|
let refsToValidate = ["baseInfoRef", "remarkRef"]; |
|
|
|
|
|
|
|
// 添加平行配制相关的引用 |
|
|
|
if (this.formData.paralleConfigs && this.formData.paralleConfigs.length > 0) { |
|
|
|
for (let i = 0; i < this.formData.paralleConfigs.length; i++) { |
|
|
|
refsToValidate.push(`paralleStepFormPackageRef_${i}`); |
|
|
|
refsToValidate.push(`paralleStepTableRef_${i}`); |
|
|
|
refsToValidate.push(`paralleStepRef_${i}`); |
|
|
|
} |
|
|
|
} |
|
|
|
return await this.validFormFields(refsToValidate); |
|
|
|
}, |
|
|
|
getResource() { |
|
|
|
let content = this.getFilledFormData(); |
|
|
|
//生成resource |
|
|
|
let tmpResource = [] |
|
|
|
if (this.fillType === "actFill") { |
|
|
|
//平行配置 |
|
|
|
if (content.paralleConfigs && content.paralleConfigs.length > 0) { |
|
|
|
for (let i = 0; i < content.paralleConfigs.length; i++) { |
|
|
|
let paralleConfigs = content.paralleConfigs[i] |
|
|
|
let stepTableFormData = paralleConfigs.stepTableFormData |
|
|
|
for (let j = 0; j < stepTableFormData.length; j++) { |
|
|
|
//稀释液 |
|
|
|
tmpResource.push({ |
|
|
|
mc: null, |
|
|
|
bh: paralleConfigs.jzCode, |
|
|
|
ph: null, |
|
|
|
nd: null, |
|
|
|
nddw: null, |
|
|
|
ndz: null, |
|
|
|
ly: null, |
|
|
|
sxrq: null, |
|
|
|
kc: null, |
|
|
|
kcdw: null, |
|
|
|
type: 1, |
|
|
|
syl: stepTableFormData[j].sjjzjrz, |
|
|
|
syldw: paralleConfigs.headerSelectFields.sjjzjrzUnit, |
|
|
|
yxzq: null, |
|
|
|
yxzqdw: null, |
|
|
|
}) |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
if (tmpResource.length > 0) { |
|
|
|
tmpResource = uniqeResourceOne(tmpResource) |
|
|
|
} |
|
|
|
//使用的试剂、仪器 |
|
|
|
const stepResource = this.getStepResource() |
|
|
|
this.resourceTmp = uniqeResource(tmpResource, stepResource.sjResource || []) |
|
|
|
this.yqResourceTmp = stepResource.yqResource || [] |
|
|
|
this.resourceTmp = tmpResource |
|
|
|
this.resourceTmp = [] |
|
|
|
this.yqResourceTmp = [] |
|
|
|
return this.resourceTmp; |
|
|
|
}, |
|
|
|
getStepResource() { |
|
|
|
const sjResource = [], yqResource = []; |
|
|
|
if (this.formData.paralleConfigs && this.formData.paralleConfigs.length > 0) { |
|
|
|
for (let i = 0; i < this.formData.paralleConfigs.length; i++) { |
|
|
|
const paralleResource = this.$refs[`paralleStepRef_${i}`][0].getStepResource(); |
|
|
|
sjResource.push(...paralleResource.sjResource); |
|
|
|
yqResource.push(...paralleResource.yqResource); |
|
|
|
} |
|
|
|
} |
|
|
|
//去重 |
|
|
|
const { sj, yq } = duplicateResource(sjResource, yqResource) |
|
|
|
return { sjResource: sj, yqResource: yq }; |
|
|
|
}, |
|
|
|
//保存 |
|
|
|
async onSave() { |
|
|
|
const formData = this.getStepResource(); |
|
|
|
console.log(formData, "formData") |
|
|
|
|
|
|
|
}, |
|
|
|
//新增平行配制 |
|
|
|
handleAddParalle(init) { |
|
|
|
@ -312,8 +253,6 @@ export default { |
|
|
|
} |
|
|
|
// 添加新的平行配制配置 |
|
|
|
this.formData.paralleConfigs.push({ |
|
|
|
paralleStepData: [], |
|
|
|
paralleTableFormData: [], |
|
|
|
showParalleConfig: true |
|
|
|
}); |
|
|
|
} |
|
|
|
@ -326,12 +265,6 @@ export default { |
|
|
|
} |
|
|
|
this.formData.paralleConfigs.splice(index, 1); |
|
|
|
}, |
|
|
|
deleteJcbRow(rowIndex){ |
|
|
|
const jcbRef = this.$refs['jcbRef']; |
|
|
|
if (jcbRef) { |
|
|
|
jcbRef.deleteRow(rowIndex); |
|
|
|
} |
|
|
|
}, |
|
|
|
// 删除表格行 |
|
|
|
deleteRow(rowIndex, type, configIndex = 0) { |
|
|
|
// 根据类型删除对应的表格行 |
|
|
|
|