diff --git a/src/views/business/comps/template/comps/gsp/GSP002.vue b/src/views/business/comps/template/comps/gsp/GSP002.vue index 925098f..3f79e3d 100644 --- a/src/views/business/comps/template/comps/gsp/GSP002.vue +++ b/src/views/business/comps/template/comps/gsp/GSP002.vue @@ -8,18 +8,18 @@
- - + + - - - - - - - + + + + + +
@@ -624,25 +624,7 @@ export default { showParalleConfig: true }); }, - //新增阶梯配制 - handleAddLadder() { - // 初始化阶梯配制配置列表 - if (!this.formData.ladderConfigs) { - this.$set(this.formData, 'ladderConfigs', []); - } - - // 添加新的阶梯配制配置 - this.formData.ladderConfigs.push({ - ladderStepData: [], - ladderTableFormData: [], - showLadderConfig: true - }); - }, - // 删除阶梯配制配置 - deleteLadderConfig(index) { - this.formData.ladderConfigs.splice(index, 1); - }, - // 删除平行配制配置 + //删除平行配制配置 deleteParalleConfig(index) { this.formData.paralleConfigs.splice(index, 1); }, @@ -661,11 +643,9 @@ export default { tableRef[0].deleteRow(rowIndex); } }, - // 表格失去焦点事件 onHandleTableBlur(type, configIndex, e) { const { colKey = "", item, rowIndex } = e; - debugger if (colKey === "targetStartSolutionConcentration" || colKey === "targetSolutionVolume" || colKey === "targetSolutionConcentration" || colKey === "targetStartSolutionVolumePrecision" || colKey === "targetDiluentVolumePrecision") { if (type === "paralle") { const volumne = item.targetStartSolutionConcentration || 0; @@ -677,7 +657,15 @@ export default { if (type === "paralle") { const targetAcSolution = item.targetAcSolution || 0;//获取实际起始溶液浓度 if (targetAcSolution) { - const volResult = this.updateSjmbrynd(item, targetAcSolution); + const tableRef = this.$refs[`paralleStepTableRef_${configIndex}`][0]; + //实际起始溶液体积和实际目标溶液体积 + const formData = tableRef.getFilledFormData(); + const headerSelectFields = formData.headerSelectFields; + const p = { + targetStartSolutionUnit: rowData.targetStartSolutionConcentrationPrecision, + headerSelectFields + } + const volResult = this.updateSjmbrynd(item, targetAcSolution,p); if (!volResult) { return } @@ -696,14 +684,21 @@ export default { callback.prevent('浓度单位与预制不符,请重新选择或申请废止并重新预制。'); } }, - //平行配置 table选择试剂确定弹窗 + // table选择试剂确定弹窗 onTableRegentSubmit(type, configIndex, data) { const { selectInfo, rowIndex, key, rowData } = data; const { row, selectedId } = selectInfo; if (key === "actStartSolutionCode") {//实际原始溶液编号点击事件 const tableRef = this.$refs[`paralleStepTableRef_${configIndex}`][0]; + //实际起始溶液体积和实际目标溶液体积 + const formData = tableRef.getFilledFormData(); + const headerSelectFields = formData.headerSelectFields; + const p = { + targetStartSolutionUnit: rowData.targetStartSolutionConcentrationPrecision, + headerSelectFields + } if (tableRef) { - const volResult = this.updateSjmbrynd(rowData, row.nd); + const volResult = this.updateSjmbrynd(rowData, row.nd, p); //第一次选择溶液的时候,可能其他值没填入,就需要先把浓度和code一起更新 tableRef.updateDataSourceByRowIndex(rowIndex, { actStartSolutionCode: selectedId, @@ -719,54 +714,6 @@ export default { } } }, - //选择试剂提交事件 - onRegentSubmit(type, rowIndex, data) { - const { selectInfo, key } = data; - const { row } = selectInfo; - if (key) { - debugger - const packageRef = this.$refs[`paralleStepFormPackageRef_${rowIndex}`][0]; - if (key === "subStartSolution") { - packageRef.updateFormData("targetAcSolution", row.nd); - packageRef.onValueChangeCompareTo("targetAcSolution", row.nd, "targetStartSolution"); - this.updateTableNd(row, rowIndex); - } - } - }, - updateRecord() { - this.$nextTick(() => { - EventBus.$emit('onModifyRecord', { - type: "fieldChanged", - newRecord: null, - resourceList: null, - },) - }) - }, - //选择实际的时候更新table的浓度 - updateTableNd(row, rowIndex) { - const { stepTableFormData = [] } = this.$refs[`ladderStepTableRef_${rowIndex}`][0].getFilledFormData(); - const newData = JSON.parse(JSON.stringify(stepTableFormData)); - // 遍历数据,按要求更新起始溶液编号 - newData.forEach((item, index) => { - let initNd = row.nd;//起始浓度是上一条记录的实际目标溶液浓度 - if (index === 0) { - item.startSolutionCode = row.bh; - } else { - item.startSolutionCode = newData[index - 1].targetSolutionCode + newData[index - 1].subTargetSolutionCode; - initNd = newData[i - 1].actSolutionConcentration; - } - const volResult = this.updateSjmbrynd(item, initNd); - if (!volResult) { - return - } - - item.actSolutionVolume = volResult.actVol; - item.actSolutionConcentration = volResult.actNd; - // 更新stepTableRef组件的数据 - }) - this.$refs[`ladderStepTableRef_${rowIndex}`][0].updateDataSource(newData); - - }, //只做校验 async validFields() { // 构建需要验证的引用数组 @@ -792,7 +739,6 @@ export default { 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, @@ -838,7 +784,7 @@ export default { //生成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]