From ab9a97d664c37b21ea9e01be138529fb1e032187 Mon Sep 17 00:00:00 2001 From: HanLong <404402223@qq.com> Date: Wed, 11 Feb 2026 16:52:21 +0800 Subject: [PATCH 01/10] =?UTF-8?q?feat:[=E6=A8=A1=E6=9D=BF=E7=AE=A1?= =?UTF-8?q?=E7=90=86]PCR003/PCR004?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../business/comps/template/TemplateTable.vue | 4 + .../business/comps/template/comps/pcr/PCR002.vue | 1 + .../business/comps/template/comps/pcr/PCR003.vue | 586 +++++++++++++++++++++ .../business/comps/template/comps/pcr/PCR004.vue | 586 +++++++++++++++++++++ 4 files changed, 1177 insertions(+) create mode 100644 src/views/business/comps/template/comps/pcr/PCR003.vue create mode 100644 src/views/business/comps/template/comps/pcr/PCR004.vue diff --git a/src/views/business/comps/template/TemplateTable.vue b/src/views/business/comps/template/TemplateTable.vue index 6c8f4df..445eb5e 100644 --- a/src/views/business/comps/template/TemplateTable.vue +++ b/src/views/business/comps/template/TemplateTable.vue @@ -53,6 +53,8 @@ import DMYPPZJLB from "./comps/gsp/DMYPPZJLB.vue"; // PCR //PCR001-使用SP001 import PCR002 from "./comps/pcr/PCR002.vue"; +import PCR003 from "./comps/pcr/PCR003.vue"; +import PCR004 from "./comps/pcr/PCR004.vue"; //LBA // LBA001-使用SP001 @@ -140,6 +142,8 @@ export default { //PCR 'PCR001': 'SP001', 'PCR002': 'PCR002', + 'PCR003': 'PCR003', + 'PCR004': 'PCR004', //LBA 'LBA001': 'SP001', 'LBA002': 'LBA002', diff --git a/src/views/business/comps/template/comps/pcr/PCR002.vue b/src/views/business/comps/template/comps/pcr/PCR002.vue index b5d3127..b159b6c 100644 --- a/src/views/business/comps/template/comps/pcr/PCR002.vue +++ b/src/views/business/comps/template/comps/pcr/PCR002.vue @@ -19,6 +19,7 @@ @onSureModifyRecord="onSureModifyRecord" @resetRecord="resetRecord" :formConfig="stepFormConfig" @blur="onHandleBlur" :formData="formData" /> + 导入模板 + + + + \ No newline at end of file diff --git a/src/views/business/comps/template/comps/pcr/PCR004.vue b/src/views/business/comps/template/comps/pcr/PCR004.vue new file mode 100644 index 0000000..62607fe --- /dev/null +++ b/src/views/business/comps/template/comps/pcr/PCR004.vue @@ -0,0 +1,586 @@ + + + + + \ No newline at end of file From 41b7a6900f70b88d8d38717c66733d2162ba42b6 Mon Sep 17 00:00:00 2001 From: "15881625488@163.com" <15881625488@163.com> Date: Wed, 11 Feb 2026 17:06:39 +0800 Subject: [PATCH 02/10] =?UTF-8?q?fix:[=E6=A8=A1=E6=9D=BF=E7=AE=A1=E7=90=86?= =?UTF-8?q?]=E4=BE=9B=E8=AF=95=E5=93=81002?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../comps/template/comps/gsp/DMYPPZJLB.vue | 1 - .../business/comps/template/comps/gsp/GSP002.vue | 742 ++++++++++++++++----- .../business/comps/template/comps/gsp/GSP003.vue | 1 - .../business/comps/template/comps/gsp/GSP010.vue | 1 - .../business/comps/template/comps/sp/SP00456.vue | 1 - 5 files changed, 572 insertions(+), 174 deletions(-) diff --git a/src/views/business/comps/template/comps/gsp/DMYPPZJLB.vue b/src/views/business/comps/template/comps/gsp/DMYPPZJLB.vue index 75888b4..d8674fb 100644 --- a/src/views/business/comps/template/comps/gsp/DMYPPZJLB.vue +++ b/src/views/business/comps/template/comps/gsp/DMYPPZJLB.vue @@ -403,7 +403,6 @@ export default { const stepResource = this.getStepResource() this.resourceTmp = uniqeResource(tmpResource, stepResource.sjResource || []) this.yqResourceTmp = stepResource.yqResource || [] - debugger return this.resourceTmp; }, //获取步骤使用物资 diff --git a/src/views/business/comps/template/comps/gsp/GSP002.vue b/src/views/business/comps/template/comps/gsp/GSP002.vue index 0f908a2..043ddfa 100644 --- a/src/views/business/comps/template/comps/gsp/GSP002.vue +++ b/src/views/business/comps/template/comps/gsp/GSP002.vue @@ -9,50 +9,49 @@ - + + +
-
- {{ - $t('template.lba.lba004.xz')}} - {{ - $t('template.lba.lba004.sc')}} +
+ {{ + $t('template.common.addBtn') }} + {{ + $t('template.common.deleteBtn') }}
- - + :fieldItemLabel="$t('template.common.pxpz')"> - + :formData="paralleConfig.paralleStepData" :fieldItemLabel="$t('template.common.pxpz')" + :prefixKey="'paralle' + paralleIndex">
@@ -570,17 +941,48 @@ export default { margin-top: 20px; } -.print-btn { +.config-section { margin-bottom: 20px; + padding: 15px; + border: 1px solid #ebeef5; + border-radius: 4px; + background-color: #fafafa; } -.config-header-end { +.config-header { display: flex; - justify-content: flex-end; + justify-content: space-between; align-items: center; margin-bottom: 15px; font-weight: bold; font-size: 16px; color: #303133; } + +.config-header .el-button { + color: #f56c6c; + font-size: 14px; +} + +.config-header .el-button:hover { + color: #f78989; +} + +.mt-0 { + margin-top: 0; +} + +.config-header-right { + margin-bottom: 15px; + font-weight: bold; + font-size: 16px; + color: #303133; + text-align: right; + width: 100%; +} + +.s-container { + box-shadow: none !important; + padding: 24px 0 !important; +} \ No newline at end of file diff --git a/src/views/business/comps/template/comps/gsp/GSP003.vue b/src/views/business/comps/template/comps/gsp/GSP003.vue index 1a17748..ccc27a8 100644 --- a/src/views/business/comps/template/comps/gsp/GSP003.vue +++ b/src/views/business/comps/template/comps/gsp/GSP003.vue @@ -437,7 +437,6 @@ export default { const stepResource = this.getStepResource() this.resourceTmp = uniqeResource(tmpResource, stepResource.sjResource || []) this.yqResourceTmp = stepResource.yqResource || [] - debugger return this.resourceTmp; }, //获取步骤使用物资 diff --git a/src/views/business/comps/template/comps/gsp/GSP010.vue b/src/views/business/comps/template/comps/gsp/GSP010.vue index f0c00f1..f66495a 100644 --- a/src/views/business/comps/template/comps/gsp/GSP010.vue +++ b/src/views/business/comps/template/comps/gsp/GSP010.vue @@ -387,7 +387,6 @@ export default { const stepResource = this.getStepResource() this.resourceTmp = uniqeResource(tmpResource, stepResource.sjResource || []) this.yqResourceTmp = stepResource.yqResource || [] - debugger return this.resourceTmp; }, //获取步骤使用物资 diff --git a/src/views/business/comps/template/comps/sp/SP00456.vue b/src/views/business/comps/template/comps/sp/SP00456.vue index e1917a7..5c4e878 100644 --- a/src/views/business/comps/template/comps/sp/SP00456.vue +++ b/src/views/business/comps/template/comps/sp/SP00456.vue @@ -796,7 +796,6 @@ export default { const stepResource = this.getStepResource() this.resourceTmp = uniqeResource(tmpResource, stepResource.sjResource || []) this.yqResourceTmp = stepResource.yqResource || [] - this.resourceTmp = tmpResource return this.resourceTmp; }, getStepResource() { From 63b47c6fb7f8a4132042c94e4355ad670b470cc8 Mon Sep 17 00:00:00 2001 From: memorylkf <312904636@qq.com> Date: Wed, 11 Feb 2026 17:10:53 +0800 Subject: [PATCH 03/10] =?UTF-8?q?feat:=20[=E6=A8=A1=E6=9D=BF=E7=AE=A1?= =?UTF-8?q?=E7=90=86]=20LBA004?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../business/comps/template/comps/lba/LBA004.vue | 55 ++++++++++++++++++++-- 1 file changed, 52 insertions(+), 3 deletions(-) diff --git a/src/views/business/comps/template/comps/lba/LBA004.vue b/src/views/business/comps/template/comps/lba/LBA004.vue index 23ed19a..39b8946 100644 --- a/src/views/business/comps/template/comps/lba/LBA004.vue +++ b/src/views/business/comps/template/comps/lba/LBA004.vue @@ -88,7 +88,8 @@ import TableList from "@/components/Template/Table"; import Step from "@/components/Template/Step"; import templateMixin from "../../mixins/templateMixin"; import { EventBus } from "@/utils/eventBus"; -import { uniqeResource } from "@/utils/calUnitTools"; +import { uniqeResource,uniqeResourceOne } from "@/utils/calUnitTools"; +import { duplicateResource } from "@/utils/index.js"; import { debounce } from 'lodash-es'; import CustomTable from '@/components/Template/CustomTable.vue'; import TableOpertaionDelete from "@/components/Template/operation/TableOpertaionDelete.vue" @@ -375,12 +376,60 @@ export default { }, 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.$refs.stepRef.getStepResource() - this.resourceTmp = stepResource.sjResource || [] + const stepResource = this.getStepResource() + this.resourceTmp = uniqeResource(tmpResource, stepResource.sjResource || []) this.yqResourceTmp = stepResource.yqResource || [] + this.resourceTmp = tmpResource 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(); From 2408dde1b62a249dc8f8e6ea982c8e2293a81eef Mon Sep 17 00:00:00 2001 From: memorylkf <312904636@qq.com> Date: Wed, 11 Feb 2026 17:15:53 +0800 Subject: [PATCH 04/10] =?UTF-8?q?feat:=20[=E6=A8=A1=E6=9D=BF=E7=AE=A1?= =?UTF-8?q?=E7=90=86]=20ADA004?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/business/comps/template/TemplateTable.vue | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/views/business/comps/template/TemplateTable.vue b/src/views/business/comps/template/TemplateTable.vue index 445eb5e..e6f58f5 100644 --- a/src/views/business/comps/template/TemplateTable.vue +++ b/src/views/business/comps/template/TemplateTable.vue @@ -66,6 +66,7 @@ import LBA004 from "./comps/lba/LBA004.vue"; // ADA001-使用SP001 // ADA002-使用LBA002 // ADA003-使用LBA003 +// ADA004-使用LBA004 //样品 // YP001-使用SP001 @@ -153,6 +154,7 @@ export default { 'ADA001': 'SP001', 'ADA002': 'LBA002', 'ADA003': 'LBA003', + 'ADA004': 'LBA004', //样品 'YP001': 'SP001', } From f0404e1ecdcf8c0449801e13840defea539d5040 Mon Sep 17 00:00:00 2001 From: memorylkf <312904636@qq.com> Date: Wed, 11 Feb 2026 17:32:02 +0800 Subject: [PATCH 05/10] =?UTF-8?q?feat:=20[=E6=A8=A1=E6=9D=BF=E7=AE=A1?= =?UTF-8?q?=E7=90=86]=20=E6=A3=80=E6=B5=8B=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/Template/HandleFormItem.vue | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/components/Template/HandleFormItem.vue b/src/components/Template/HandleFormItem.vue index 906307f..279f3c8 100644 --- a/src/components/Template/HandleFormItem.vue +++ b/src/components/Template/HandleFormItem.vue @@ -205,7 +205,7 @@ export default { visible: false,//是否显示弹窗 checkboxValue: this.getChecked(),//是否选中 uuid: getuuid(), // 唯一标识符,用于EventBus事件匹配 - regentType: ['sj', 'gsp', 'mix', 'xj', 'xb', 'gyzj', 'mjy', 'yq'], //试剂/仪器/供试品等类型 + regentType: ['sj', 'gsp', 'mix', 'xj', 'xb', 'gyzj', 'mjy', 'yq','jcb'], //试剂/仪器/供试品等类型 selectRegentInfo: {},//选择的试剂/仪器/供试品等信息 fileList: [],//上传的文件列表 uploadFileUrl: process.env.VUE_APP_BASE_API + "/file/upload", @@ -417,6 +417,7 @@ export default { mjy: "5",//麻精药 xj: "9",//细菌 xb: "11",//细胞 + jcb: "13",//检测板 } params = { ...params, From b9106aca76903952975ab8943ca08b1ce0d64138 Mon Sep 17 00:00:00 2001 From: memorylkf <312904636@qq.com> Date: Wed, 11 Feb 2026 17:39:19 +0800 Subject: [PATCH 06/10] =?UTF-8?q?feat:=20[=E6=A8=A1=E6=9D=BF=E7=AE=A1?= =?UTF-8?q?=E7=90=86]=20LBA006-=E5=BE=85=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/lang/en/template/lba.js | 8 + src/lang/zh/template/lba.js | 8 + .../business/comps/template/TemplateTable.vue | 7 +- .../business/comps/template/comps/lba/LBA006.vue | 507 +++++++++++++++++++++ 4 files changed, 529 insertions(+), 1 deletion(-) create mode 100644 src/views/business/comps/template/comps/lba/LBA006.vue diff --git a/src/lang/en/template/lba.js b/src/lang/en/template/lba.js index 69ae582..3140670 100644 --- a/src/lang/en/template/lba.js +++ b/src/lang/en/template/lba.js @@ -25,5 +25,13 @@ export default { sjypjrz: '实际样品加入值', ysjzjrz: '预设基质加入值', sjjzjrz: '实际基质加入值' + }, + lba006: { + fxtj: 'Analysis conditions', + fxsj: 'Analysis time', + fxxx: 'Analysis Information', + jcb: 'Analysis Plate', + jg: 'Result', + sjwjm: 'Data file name' } } diff --git a/src/lang/zh/template/lba.js b/src/lang/zh/template/lba.js index ef20ee2..7fb6a10 100644 --- a/src/lang/zh/template/lba.js +++ b/src/lang/zh/template/lba.js @@ -25,5 +25,13 @@ export default { sjypjrz: '实际样品加入值', ysjzjrz: '预设基质加入值', sjjzjrz: '实际基质加入值' + }, + lba006: { + fxtj: '分析条件', + fxsj: '分析时间', + fxxx: '分析信息', + jcb: '检测板', + jg: '结果', + sjwjm: '数据文件名' } } diff --git a/src/views/business/comps/template/TemplateTable.vue b/src/views/business/comps/template/TemplateTable.vue index e6f58f5..43cb49a 100644 --- a/src/views/business/comps/template/TemplateTable.vue +++ b/src/views/business/comps/template/TemplateTable.vue @@ -61,12 +61,14 @@ import PCR004 from "./comps/pcr/PCR004.vue"; import LBA002 from "./comps/lba/LBA002.vue"; import LBA003 from "./comps/lba/LBA003.vue"; import LBA004 from "./comps/lba/LBA004.vue"; +import LBA006 from "./comps/lba/LBA006.vue"; //ADA // ADA001-使用SP001 // ADA002-使用LBA002 // ADA003-使用LBA003 // ADA004-使用LBA004 +// ADA006-使用LBA006 //样品 // YP001-使用SP001 @@ -87,7 +89,8 @@ export default { //LBA LBA002, LBA003, - LBA004 + LBA004, + LBA006 }, props: { sn: { @@ -150,11 +153,13 @@ export default { 'LBA002': 'LBA002', 'LBA003': 'LBA003', 'LBA004': 'LBA004', + 'LBA006': 'LBA006', //ADA 'ADA001': 'SP001', 'ADA002': 'LBA002', 'ADA003': 'LBA003', 'ADA004': 'LBA004', + 'ADA006': 'LBA006', //样品 'YP001': 'SP001', } diff --git a/src/views/business/comps/template/comps/lba/LBA006.vue b/src/views/business/comps/template/comps/lba/LBA006.vue new file mode 100644 index 0000000..1f51894 --- /dev/null +++ b/src/views/business/comps/template/comps/lba/LBA006.vue @@ -0,0 +1,507 @@ + + + + + \ No newline at end of file From 52bbef3bba7acbe50a12883178954f3f417d751d Mon Sep 17 00:00:00 2001 From: "15881625488@163.com" <15881625488@163.com> Date: Wed, 11 Feb 2026 17:53:10 +0800 Subject: [PATCH 07/10] =?UTF-8?q?fix:[=E6=A8=A1=E6=9D=BF=E7=AE=A1=E7=90=86?= =?UTF-8?q?]=E4=BE=9B=E8=AF=95=E5=93=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../business/comps/template/TemplateTable.vue | 10 +- .../business/comps/template/comps/gsp/GSP002.vue | 2 +- .../business/comps/template/comps/gsp/GSP003.vue | 2 +- .../business/comps/template/comps/gsp/GSP004.vue | 1020 ++++++++++++++++++++ 4 files changed, 1031 insertions(+), 3 deletions(-) create mode 100644 src/views/business/comps/template/comps/gsp/GSP004.vue diff --git a/src/views/business/comps/template/TemplateTable.vue b/src/views/business/comps/template/TemplateTable.vue index 43cb49a..8fc3186 100644 --- a/src/views/business/comps/template/TemplateTable.vue +++ b/src/views/business/comps/template/TemplateTable.vue @@ -43,6 +43,7 @@ import Demo from "./comps/sp/Demo.vue"; //供试品 import GSP002 from "./comps/gsp/GSP002.vue"; import GSP003 from "./comps/gsp/GSP003.vue"; +import GSP004 from "./comps/gsp/GSP004.vue"; import GSP010 from "./comps/gsp/GSP010.vue"; //试验物质配制计划表/麻精药领取申请单/毒麻药品配制记录表 @@ -81,7 +82,7 @@ export default { //试验物质配制计划表/麻精药领取申请单/毒麻药品配制记录表 MJYLQSQD, SYWZPZJHB, DMYPPZJLB, //供试品 - GSP002, GSP003, GSP010, + GSP002, GSP003, GSP004, GSP010, //色谱 SP001, SP003, SP00456,SP007, SP008, SP009, SP010, SP011, SP012, SP013, SP014, SP015, SP016, SP017, SP018, // PCR @@ -135,10 +136,17 @@ export default { 'SP017': 'SP017', 'SP018': 'SP018', //供试品 + 'GSP001': 'DMYPPZJLB', 'GSP002': 'GSP002', 'GSP003': 'GSP003', + 'GSP004': 'GSP004', + 'GSP006': 'GSP002', + 'GSP008': 'GSP002', 'GSP010': 'GSP010', + 'GSP012': 'GSP002', + 'GSP013': 'GSP002', + 'GSP014': 'GSP002', //试验物质配制计划表/麻精药领取申请单/毒麻药品配制记录表 'SYWZPZJHB': 'SYWZPZJHB', 'MJYLQSQD': 'MJYLQSQD', diff --git a/src/views/business/comps/template/comps/gsp/GSP002.vue b/src/views/business/comps/template/comps/gsp/GSP002.vue index 043ddfa..7b7b727 100644 --- a/src/views/business/comps/template/comps/gsp/GSP002.vue +++ b/src/views/business/comps/template/comps/gsp/GSP002.vue @@ -1,4 +1,4 @@ - +