From 15e8569c2384e8cebe74c76c1556bbc3e436f185 Mon Sep 17 00:00:00 2001 From: lslaiwy <1209768238@qq.com> Date: Thu, 12 Mar 2026 23:21:15 +0800 Subject: [PATCH] =?UTF-8?q?fix[=E6=A8=A1=E6=9D=BF=E5=BC=80=E5=8F=91]DL018-?= =?UTF-8?q?024=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../business/comps/template/comps/dl/DL018.vue | 22 ++-- .../business/comps/template/comps/dl/DL022.vue | 43 +++---- .../business/comps/template/comps/dl/DL023.vue | 33 +++--- .../business/comps/template/comps/dl/DL024.vue | 127 +++++++++------------ 4 files changed, 98 insertions(+), 127 deletions(-) diff --git a/src/views/business/comps/template/comps/dl/DL018.vue b/src/views/business/comps/template/comps/dl/DL018.vue index fd828e8..0353d8f 100644 --- a/src/views/business/comps/template/comps/dl/DL018.vue +++ b/src/views/business/comps/template/comps/dl/DL018.vue @@ -192,10 +192,13 @@ export default { width: 180, bodyType: "input", bodyFillType: "actFill", - disabled: true, - subType: 'button', - subKey: 'rsks', - buttonName: 'template.dl.dl018.ksButton', + // disabled: true, + // showOtherLabel: false, + + bodySubType: 'button', + subodySubKeybKey: 'rsks', + bodySubButtonName: 'template.dl.dl018.ksButton', + showBodySub:this.fillType === "actFill", }, { label: "template.dl.dl018.rsjs", @@ -203,10 +206,13 @@ export default { width: 180, bodyType: "input", bodyFillType: "actFill", - disabled: true, - subType: 'button', - subKey: 'rsjs', - buttonName: 'template.dl.dl018.jsButton', + // disabled: true, + // showOtherLabel: false, + + bodySubType: 'button', + subodySubKeybKey: 'rsjs', + bodySubButtonName: 'template.dl.dl018.jsButton', + showBodySub:this.fillType === "actFill", }, { label: "template.dl.dl018.zs", diff --git a/src/views/business/comps/template/comps/dl/DL022.vue b/src/views/business/comps/template/comps/dl/DL022.vue index 8a9b0d0..6af3933 100644 --- a/src/views/business/comps/template/comps/dl/DL022.vue +++ b/src/views/business/comps/template/comps/dl/DL022.vue @@ -14,7 +14,7 @@
畸变类型以代号填写:断片(b)、裂隙(g)、互换及射体(t)、环状染色体(r)、多倍体(p)、双着丝点染色体(d)、内复制(e)、染色体碎化(z)、缺失(l)、粘着(s)、微小体(m)。 @@ -26,9 +26,9 @@
@@ -154,42 +154,42 @@ export default { prop: 'bpbh', bodyType: 'input', bodyFillType: 'actFill', - width: 100, + width: 200, bodyMaxlength: 50, }, { label: 'template.dl.dl022.gcxps', prop: 'gcxps', bodyType: 'inputNumber', bodyFillType: 'actFill', - width: 100, + width: 200, bodyMaxlength: 10, }, { label: 'template.dl.dl022.jgjxjbs', prop: 'jgjxjbs', bodyType: 'inputNumber', bodyFillType: 'actFill', - width: 80, + width: 200, disabled: true }, { label: 'template.dl.dl022.lxjbs', prop: 'lxjbs', bodyType: 'inputNumber', bodyFillType: 'actFill', - width: 100, + width: 200, disabled: true }, { label: 'template.dl.dl022.dbtjbs', prop: 'dbtjbs', bodyType: 'inputNumber', bodyFillType: 'actFill', - width: 100, + width: 200, disabled: true }, { label: 'template.dl.dl022.nfzjbs', prop: 'nfzjbs', bodyType: 'inputNumber', bodyFillType: 'actFill', - width: 80, + width: 200, disabled: true }, { label: 'template.dl.dl022.jblx', @@ -223,8 +223,6 @@ export default { }, handleEdit(){ const {currentItem, currentRowIndex} = this; - - currentItem.isComplete = !currentItem.isComplete; this.$refs.tableRef.updateDataSourceByRowIndex(currentRowIndex, currentItem) }, @@ -240,7 +238,7 @@ export default { EventBus.$emit('showEditSignDialog', { uuid: this.uuid }); this.currentItem = item; this.currentRowIndex = rowIndex; - + }, // 新增行 onAddRow() { @@ -248,20 +246,6 @@ export default { jblx: [{value: undefined}], }) }, - // 选择显微镜预留 - onRegentSubmit(e) { - const { selectInfo, key, rowIndex } = e - const { row } = selectInfo - console.log('选择显微镜预留===', row) - // if (key === 'yqbh' && this.$refs.yqsyTableRef) { - // const params = { - // yqmc: row.mc, - // yqxh: row.xh, - // xccsjzjdrq: row.jzrq - // } - // this.$refs.yqsyTableRef.updateDataSourceByRowIndex(rowIndex, params) - // } - }, onFormSelect(fields) { this.onHandleBlur(fields) }, @@ -363,7 +347,12 @@ export default { diff --git a/src/views/business/comps/template/comps/dl/DL023.vue b/src/views/business/comps/template/comps/dl/DL023.vue index 431893c..d92c87f 100644 --- a/src/views/business/comps/template/comps/dl/DL023.vue +++ b/src/views/business/comps/template/comps/dl/DL023.vue @@ -47,7 +47,7 @@ import TableOpertaionDelete from "@/components/Template/operation/TableOpertaion export default { name: "dl023", dicts: [ - 'business_dl_xbmc' + 'business_dl_xbmc',"business_sydd" ], components: { BaseInfoFormPackage, LineLabel, TableList, Step, CustomTable, TableOpertaionDelete }, mixins: [templateMixin], @@ -100,13 +100,11 @@ export default { //yqsyxxColumns仪器使用信息 yqsyxxColumns() { return [{ - label: 'template.dl.dl023.yqbh', - prop: 'yqbh', - bodyType: 'input', - bodyFillType: 'actFill', - bodyDisabled: true, - disabled: true - }, { + label: 'template.dl.dl023.yqbh', + prop: 'yqbh', + bodyType: 'yq', + bodyFillType: 'actFill' + }, { label: 'template.dl.dl023.yqmc', prop: 'yqmc', bodyType: 'input', @@ -153,7 +151,7 @@ export default { label: 'template.dl.dl023.sydd', type: 'select', fillType: 'actFill', - options: this.getDictOptions('business_dl_sydd'), + options: this.getDictOptions('business_sydd'), otherCode: 'syddOther', showOtherLabel: false }, @@ -226,15 +224,14 @@ export default { onRegentSubmit(e) { const { selectInfo, key, rowIndex } = e const { row } = selectInfo - console.log('选择仪器编号预留===', row) - // if (key === 'yqbh' && this.$refs.yqsyTableRef) { - // const params = { - // yqmc: row.mc, - // yqxh: row.xh, - // xccsjzjdrq: row.jzrq - // } - // this.$refs.yqsyTableRef.updateDataSourceByRowIndex(rowIndex, params) - // } + if (key === 'yqbh' && this.$refs.tableRef) { + const params = { + yqmc: row.mc, + yqxh: row.xh, + xcrq: row.jzrq, + } + this.$refs.tableRef.updateDataSourceByRowIndex(rowIndex, params) + } }, onFormSelect(fields) { this.onHandleBlur(fields) diff --git a/src/views/business/comps/template/comps/dl/DL024.vue b/src/views/business/comps/template/comps/dl/DL024.vue index 228d265..06f4d26 100644 --- a/src/views/business/comps/template/comps/dl/DL024.vue +++ b/src/views/business/comps/template/comps/dl/DL024.vue @@ -15,7 +15,7 @@
({ + xbbh: item.jlzb || '', // 细胞编号 + })) + // 使用 $set 更新 formData,触发 CustomTable 的响应式更新 + this.$set(this.formData, 'stepTableFormData', itemData) + + this.$message.success(`已从前序表单加载 ${itemData.length} 条细胞编号数据`) + } catch (error) { + this.$set(this.formData, 'stepTableFormData', []) + console.error('解析前序表单数据失败:', error) + this.$message.error('解析前序表单数据失败') + } + // if (key === 'qxbd' && this.$refs.tableRef) { // const params = { - // yqmc: row.mc, + // yqmc: row.xbbh, // yqxh: row.xh, // xccsjzjdrq: row.jzrq // } - // this.$refs.yqsyTableRef.updateDataSourceByRowIndex(rowIndex, params) + // this.$refs.tableRef.updateDataSourceByRowIndex(rowIndex, params) // } }, onFormSelect(fields){ this.onHandleBlur(fields) }, - //选择table header下拉框也要更新体积 - onHeaderSelectChange(data){ - const {key, headerSelectFields,dataSource=[]} = data; - const keys = [ - 'targetStartSolutionVolumeUnit', - 'targetDiluentVolumeUnit', - 'targetSolutionConcentrationUnit', - 'targetSolutionVolumeUnit', - ] - if(keys.includes(key)){ - const {targetStartSolution,subTargetStartSolution} = this.$refs.swypyjInfoRef?.getFilledFormData(); - const params = { - subTargetStartSolution, - headerSelectFields - } - this.batchUpdateTargetStartSolutionVolume(dataSource,targetStartSolution,params) - } - }, - beforeSaveRecord(data){ - const formFields = this.$refs.swypyjInfoRef?.getFilledFormData(); - this.onCommonVerifyNdException(formFields,data); - }, - configComplete(val) { - const { rowData, headerSelectFields } = val; - //计算实际目标溶液体积(实际起始溶液体积+实际稀释液体积) - const { total, unit } = addTj([rowData.actStartSolutionVolume, rowData.actDiluentVolume], [headerSelectFields.actStartSolutionVolumeUnit, headerSelectFields.actDiluentVolumeUnit]) - let postData = { - mc: null, - bh: rowData.targetSolutionCode + rowData.subTargetSolutionCode, - nd: rowData.actSolutionConcentration,//实际目标溶液浓度 - nddw: headerSelectFields.actSolutionConcentrationUnit, - studySubjectId: this.formData.studySubjectId, - studyFormId:this.formData.id, - studyId:this.formData.studyId, - kc: total, - kcdw: unit, - } - this.configCompleteRequest(postData); - }, - //分装回调 - subPackageSubmit(data) { - const { fzsj, rowData, headerSelectFields } = data; - const { fzList = [], dw = "", mybh } = fzsj; - if (fzList && fzList.length > 0) { - const list = fzList.map((item) => { - return { - bh: mybh + item.preCode + item.subCode, - kc: item.num, - kcdw: dw, - } - }) - let postData = { - studyId: this.formData.studyId, - studyFormId: this.formData.id, - bh: mybh, - nd: rowData.actSolutionConcentration || 0, - nddw: headerSelectFields.actSolutionConcentrationUnit, - studySubjectId: this.formData.studySubjectId, - studyFormId:this.formData.id, - list: list - } - this.subPackageRequest(postData); - } - }, //获取已填写的表单数据 getFilledFormData() { return this.getFilledFormDataByRefs(["baseInfoRef", "swypyjInfoRef","remarkRef","tableRef"]) @@ -280,9 +250,18 @@ export default { }, getResource() { //使用的试剂、仪器 - // stepRef不存在,直接返回空数组 - this.resourceTmp = [] - this.yqResourceTmp = [] + const stepResource = this.$refs.stepRef.getStepResource() + const tableList = this.$refs.qcxjjyqkTableRef?.getFilledFormData()?.stepTableFormData || [] + // 从操作步骤中提取试剂和仪器资源 + this.resourceTmp = stepResource.sjResource || [] + const tableFromHyqk = tableList + .filter(item => item.xybh) + .map(item => ({ + bh: item.xybh, + type: 'cell' + })) + + this.resourceTmp = [...this.resourceTmp, ...tableFromHyqk] return this.resourceTmp; }, //保存