Browse Source

feat:[模板管理]新增仪器信息

lkf
15881625488@163.com 2 months ago
parent
commit
5f7bbcdd4f
8 changed files with 164 additions and 146 deletions
  1. +3
    -0
      src/views/business/comps/template/TemplateTable.vue
  2. +51
    -50
      src/views/business/comps/template/comps/sp/SWYPBQGZYZBB.vue
  3. +1
    -1
      src/views/business/comps/template/comps/sp/SWYPFXCBYPZB.vue
  4. +1
    -2
      src/views/business/comps/template/comps/sp/SWYPFXFFXZKPZB.vue
  5. +0
    -2
      src/views/business/comps/template/comps/sp/SWYPFXRYPZB.vue
  6. +95
    -91
      src/views/business/comps/template/comps/sp/SWYPNBGZYZBB.vue
  7. +9
    -0
      src/views/business/comps/template/mixins/templateMixin.js
  8. +4
    -0
      src/views/business/study/comp/tbbd/Bj.vue

+ 3
- 0
src/views/business/comps/template/TemplateTable.vue View File

@ -211,6 +211,9 @@ export default {
getResource() {
return this.$refs.templateComponent.getResource();
},
getYqResource() {
return this.$refs.templateComponent.getYqResource();
},
getFilledFormData() {
return this.$refs.templateComponent.getFilledFormData();
},

+ 51
- 50
src/views/business/comps/template/comps/sp/SWYPBQGZYZBB.vue View File

@ -6,12 +6,10 @@
"生物样品标曲工作液制备表" }}<img src="@/assets/images/detail-title.png" /></div>
<div class="detail-content">
<div class="content">
<BaseInfoFormPackage fieldItemLabel="template.common.baseInfo" label="template.common.baseInfo" ref="baseInfoRef" :formConfig="baseInfoFormConfig"
:formData="formData" />
<TableList label="template.common.reagentInfo" :columns="sysjColumns"
:dataSource="resource" />
<TableList label="template.common.instrumentInfo" :columns="yqsColumns"
:dataSource="resource" />
<BaseInfoFormPackage fieldItemLabel="template.common.baseInfo" label="template.common.baseInfo"
ref="baseInfoRef" :formConfig="baseInfoFormConfig" :formData="formData" />
<TableList label="template.common.reagentInfo" :columns="sysjColumns" :dataSource="resource" />
<TableList label="template.common.instrumentInfo" :columns="yqsColumns" :dataSource="yqResource" />
<!-- <BaseInfoFormPackage label="存储条件" ref="storageConditionRef" :formConfig="storageFormConfig"
:formData="formData" /> -->
<LineLabel label="template.common.operationSteps" />
@ -19,9 +17,9 @@
<BaseInfoFormPackage @clickable="handleClickable" ref="stepFormPackageRef"
@resetRecord="resetRecord" :formConfig="stepFormConfig" @blur="onHandleBlur"
:formData="formData" />
<CustomTable fieldItemLabel="template.common.operationSteps" @blur="onHandleTableBlur" :showAddRow="false"
:showOperation="fillType === 'actFill'" ref="stepTableRef" :columns="stepColumns"
:formData="formData">
<CustomTable fieldItemLabel="template.common.operationSteps" @blur="onHandleTableBlur"
:showAddRow="false" :showOperation="fillType === 'actFill'" ref="stepTableRef"
:columns="stepColumns" :formData="formData">
<template slot="operation" slot-scope="{ row, rowIndex, columns }">
<TableOpertaion @startConfig="startConfig" @configComplete="configComplete"
@printTag="printTag" @subPackageSubmit="subPackageSubmit" :fillType="fillType"
@ -31,7 +29,8 @@
</CustomTable>
</div>
<Step ref="stepRef" :formData="formData.stepData"></Step>
<BaseInfoFormPackage fieldItemLabel="template.common.remark" label="template.common.remark" ref="remarkRef" :formConfig="remarkConig" :formData="formData" />
<BaseInfoFormPackage fieldItemLabel="template.common.remark" label="template.common.remark"
ref="remarkRef" :formConfig="remarkConig" :formData="formData" />
</div>
</div>
@ -551,46 +550,48 @@ export default {
let content = await this.validFormFields(["baseInfoRef", "stepFormPackageRef", "stepTableRef", "stepRef", "remarkRef"]);
//resource
let tmpResource = []
let tableList = content.stepTableFormData
if (tableList && tableList.length > 0) {
for (let i = 0; i < tableList.length; i++) {
let item = tableList[i]
//(+)
const { total, unit } = addTj([item.actStartSolutionVolume, item.actDiluentVolumeUnit], [content.headerSelectFields.actStartSolutionVolumeUnit, content.headerSelectFields.actDiluentVolumeUnit])
tmpResource.push({
mc: null,
bh: item.targetSolutionCode + item.subTargetSolutionCode,
ph: null,
nd: item.actSolutionConcentration + content.headerSelectFields.actSolutionConcentrationUnit,
source: 'ELN配制',
sxrq: content.expireDate,
ndz: item.actSolutionConcentration,
nddw: content.headerSelectFields.actSolutionConcentrationUnit,
kc: total,
kcdw: unit,
syl: null,
syldw: unit,
yxzq: content.effectivePeriod,
yxzqdw: content.effectivePeriodUnit,
})
if (item.fzsj && item.fzsj.fzList && item.fzsj.fzList) {
for (let j = 0; j < item.fzsj.fzList.length; j++) {
tmpResource.push({
mc: null,
bh: item.fzsj.mybh +'-'+item.fzsj.fzList[j].subCode,
ph: null,
nd: item.actSolutionConcentration + content.headerSelectFields.actSolutionConcentrationUnit,
source: 'ELN配制',
sxrq: content.expireDate,
ndz: item.actSolutionConcentration,
nddw: content.headerSelectFields.actSolutionConcentrationUnit,
kc: item.fzsj.fzList[j].num,
kcdw: item.fzsj.dw,
syl: null,
syldw: item.fzsj.dw,
yxzq: content.effectivePeriod,
yxzqdw: content.effectivePeriodUnit,
})
if (this.fillType === "actFill") {
let tableList = content.stepTableFormData
if (tableList && tableList.length > 0) {
for (let i = 0; i < tableList.length; i++) {
let item = tableList[i]
//(+)
const { total, unit } = addTj([item.actStartSolutionVolume, item.actDiluentVolumeUnit], [content.headerSelectFields.actStartSolutionVolumeUnit, content.headerSelectFields.actDiluentVolumeUnit])
tmpResource.push({
mc: null,
bh: item.targetSolutionCode + item.subTargetSolutionCode,
ph: null,
nd: item.actSolutionConcentration + content.headerSelectFields.actSolutionConcentrationUnit,
source: 'ELN配制',
sxrq: content.expireDate,
ndz: item.actSolutionConcentration,
nddw: content.headerSelectFields.actSolutionConcentrationUnit,
kc: total,
kcdw: unit,
syl: null,
syldw: unit,
yxzq: content.effectivePeriod,
yxzqdw: content.effectivePeriodUnit,
})
if (item.fzsj && item.fzsj.fzList && item.fzsj.fzList) {
for (let j = 0; j < item.fzsj.fzList.length; j++) {
tmpResource.push({
mc: null,
bh: item.fzsj.mybh + '-' + item.fzsj.fzList[j].subCode,
ph: null,
nd: item.actSolutionConcentration + content.headerSelectFields.actSolutionConcentrationUnit,
source: 'ELN配制',
sxrq: content.expireDate,
ndz: item.actSolutionConcentration,
nddw: content.headerSelectFields.actSolutionConcentrationUnit,
kc: item.fzsj.fzList[j].num,
kcdw: item.fzsj.dw,
syl: null,
syldw: item.fzsj.dw,
yxzq: content.effectivePeriod,
yxzqdw: content.effectivePeriodUnit,
})
}
}
}
}

+ 1
- 1
src/views/business/comps/template/comps/sp/SWYPFXCBYPZB.vue View File

@ -11,7 +11,7 @@
<TableList label="template.common.reagentInfo" :columns="sysjColumns"
:dataSource="resource" />
<TableList label="template.common.instrumentInfo" :columns="yqsColumns"
:dataSource="resource" />
:dataSource="yqResource" />
<BaseInfoFormPackage fieldItemLabel="template.common.storageCondition" label="template.common.storageCondition" ref="storageConditionRef"
:formConfig="storageFormConfig" :formData="formData" />
<LineLabel label="template.common.operationSteps" />

+ 1
- 2
src/views/business/comps/template/comps/sp/SWYPFXFFXZKPZB.vue View File

@ -11,7 +11,7 @@
<TableList label="template.common.reagentInfo" :columns="sysjColumns"
:dataSource="resource" />
<TableList label="template.common.instrumentInfo" :columns="yqsColumns"
:dataSource="resource" />
:dataSource="yqResource" />
<BaseInfoFormPackage fieldItemLabel="template.common.storageCondition" label="template.common.storageCondition" ref="storageConditionRef"
:formConfig="storageFormConfig" :formData="formData" />
<LineLabel label="template.common.operationSteps" />
@ -240,7 +240,6 @@ export default {
currentSubKey: "",//key
rowIndex:0,//
resource: [],
sysjColumns: [
{ label: 'template.common.reagentName', prop: "mc" },//
{ label: 'template.common.reagentCode', prop: "bh" },//

+ 0
- 2
src/views/business/comps/template/comps/sp/SWYPFXRYPZB.vue View File

@ -241,8 +241,6 @@ export default {
},
data() {
return {
resource: [],
yqResource: [],
formData: {}
};
},

+ 95
- 91
src/views/business/comps/template/comps/sp/SWYPNBGZYZBB.vue View File

@ -9,9 +9,10 @@
<BaseInfoFormPackage fieldItemLabel="template.common.baseInfo" label="template.common.baseInfo"
ref="baseInfoRef" :formConfig="baseInfoFormConfig" :formData="formData" />
<TableList label="template.common.reagentInfo" :columns="sysjColumns" :dataSource="resource" />
<TableList label="template.common.instrumentInfo" :columns="yqsColumns" :dataSource="resource" />
<BaseInfoFormPackage fieldItemLabel="template.common.storageCondition" label="template.common.storageCondition" ref="storageConditionRef" :formConfig="storageFormConfig"
:formData="formData" />
<TableList label="template.common.instrumentInfo" :columns="yqsColumns" :dataSource="yqResource" />
<BaseInfoFormPackage fieldItemLabel="template.common.storageCondition"
label="template.common.storageCondition" ref="storageConditionRef"
:formConfig="storageFormConfig" :formData="formData" />
<LineLabel label="template.common.operationSteps" />
<div v-if="fillType === 'preFill'" class="mt-20">
<el-button type="primary" @click="handleAddParalle">新增平行配制</el-button>
@ -86,7 +87,8 @@
:prefixKey="'paralle' + paralleIndex"></Step>
</div>
</div>
<BaseInfoFormPackage fieldItemLabel="template.common.remark" label="template.common.remark" ref="remarkRef" :formConfig="remarkConig" :formData="formData" />
<BaseInfoFormPackage fieldItemLabel="template.common.remark" label="template.common.remark"
ref="remarkRef" :formConfig="remarkConig" :formData="formData" />
</div>
</div>
@ -484,7 +486,7 @@ export default {
//
newData.forEach((item, index) => {
const { actVol, actNd } = this.updateSjmbrynd(item, row.nd);
console.log(actNd,"actNd")
console.log(actNd, "actNd")
item.actSolutionVolume = actVol;
item.actSolutionConcentration = actNd;
})
@ -572,96 +574,98 @@ export default {
let content = this.getFilledFormData();
//resource
let tmpResource = []
//
if (content.ladderConfigs && content.ladderConfigs.length > 0) {
for (let i = 0; i < content.ladderConfigs.length; i++) {
let ladderConfigs = content.ladderConfigs[i]
let stepTableFormData = ladderConfigs.stepTableFormData
for (let j = 0; j < stepTableFormData.length; j++) {
//(+)
const { total, unit } = addTj([stepTableFormData[j].actStartSolutionVolume, stepTableFormData[j].actDiluentVolume], [ladderConfigs.headerSelectFields.actStartSolutionVolumeUnit, ladderConfigs.headerSelectFields.actDiluentVolumeUnit])
tmpResource.push({
mc: null,
bh: stepTableFormData[j].targetSolutionCode + stepTableFormData[j].subTargetSolutionCode,
ph: null,
nd: stepTableFormData[j].actSolutionConcentration + ladderConfigs.headerSelectFields.actSolutionConcentrationUnit,
source: 'ELN配制',
sxrq: ladderConfigs.expireDate,
ndz: stepTableFormData[j].actSolutionConcentration,
nddw: ladderConfigs.headerSelectFields.actSolutionConcentrationUnit,
kc: total,
kcdw: unit,
syl: null,
syldw: unit,
yxzq: ladderConfigs.effectivePeriod,
yxzqdw: ladderConfigs.effectivePeriodUnit,
})
let fzsj = stepTableFormData[j].fzsj
if (fzsj && fzsj.fzList) {
for (let k = 0; k < fzsj.fzList.length; k++) {
tmpResource.push({
mc: null,
bh: fzsj.mybh + '-' + fzsj.fzList[k].subCode,
ph: null,
nd: stepTableFormData[j].actSolutionConcentration + ladderConfigs.headerSelectFields.actSolutionConcentrationUnit,
source: 'ELN配制',
sxrq: ladderConfigs.expireDate,
ndz: stepTableFormData[j].actSolutionConcentration,
nddw: ladderConfigs.headerSelectFields.actSolutionConcentrationUnit,
kc: fzsj.fzList[k].num,
kcdw: fzsj.dw,
syl: null,
syldw: ladderConfigs.headerSelectFields.actSolutionVolumeUnit,
yxzq: ladderConfigs.effectivePeriod,
yxzqdw: ladderConfigs.effectivePeriodUnit,
})
if (this.fillType === "actFill") {
//
if (content.ladderConfigs && content.ladderConfigs.length > 0) {
for (let i = 0; i < content.ladderConfigs.length; i++) {
let ladderConfigs = content.ladderConfigs[i]
let stepTableFormData = ladderConfigs.stepTableFormData
for (let j = 0; j < stepTableFormData.length; j++) {
//(+)
const { total, unit } = addTj([stepTableFormData[j].actStartSolutionVolume, stepTableFormData[j].actDiluentVolume], [ladderConfigs.headerSelectFields.actStartSolutionVolumeUnit, ladderConfigs.headerSelectFields.actDiluentVolumeUnit])
tmpResource.push({
mc: null,
bh: stepTableFormData[j].targetSolutionCode + stepTableFormData[j].subTargetSolutionCode,
ph: null,
nd: stepTableFormData[j].actSolutionConcentration + ladderConfigs.headerSelectFields.actSolutionConcentrationUnit,
source: 'ELN配制',
sxrq: ladderConfigs.expireDate,
ndz: stepTableFormData[j].actSolutionConcentration,
nddw: ladderConfigs.headerSelectFields.actSolutionConcentrationUnit,
kc: total,
kcdw: unit,
syl: null,
syldw: unit,
yxzq: ladderConfigs.effectivePeriod,
yxzqdw: ladderConfigs.effectivePeriodUnit,
})
let fzsj = stepTableFormData[j].fzsj
if (fzsj && fzsj.fzList) {
for (let k = 0; k < fzsj.fzList.length; k++) {
tmpResource.push({
mc: null,
bh: fzsj.mybh + '-' + fzsj.fzList[k].subCode,
ph: null,
nd: stepTableFormData[j].actSolutionConcentration + ladderConfigs.headerSelectFields.actSolutionConcentrationUnit,
source: 'ELN配制',
sxrq: ladderConfigs.expireDate,
ndz: stepTableFormData[j].actSolutionConcentration,
nddw: ladderConfigs.headerSelectFields.actSolutionConcentrationUnit,
kc: fzsj.fzList[k].num,
kcdw: fzsj.dw,
syl: null,
syldw: ladderConfigs.headerSelectFields.actSolutionVolumeUnit,
yxzq: ladderConfigs.effectivePeriod,
yxzqdw: ladderConfigs.effectivePeriodUnit,
})
}
}
}
}
}
}
//
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++) {
const { total, unit } = addTj([stepTableFormData[j].actSolutionVolume, stepTableFormData[j].actDiluentVolume], [paralleConfigs.headerSelectFields.actSolutionVolumeUnit, paralleConfigs.headerSelectFields.actDiluentVolumeUnit])
tmpResource.push({
mc: null,
bh: stepTableFormData[j].targetSolutionCode + stepTableFormData[j].subTargetSolutionCode,
ph: null,
nd: stepTableFormData[j].actSolutionConcentration + paralleConfigs.headerSelectFields.actSolutionConcentrationUnit,
source: 'ELN配制',
sxrq: stepTableFormData[j].targetSolutionExpirationDate,
ndz: stepTableFormData[j].actSolutionConcentration,
nddw: paralleConfigs.headerSelectFields.actSolutionConcentrationUnit,
kc: total,
kcdw: unit,
syl: null,
syldw: unit,
yxzq: stepTableFormData[j].targetSolutionCycle,
yxzqdw: stepTableFormData[j].targetSolutionCyclePrecision,
})
let fzsj = stepTableFormData[j].fzsj
if (fzsj && fzsj.fzList) {
for (let k = 0; k < fzsj.fzList.length; k++) {
tmpResource.push({
mc: null,
bh: fzsj.mybh + '-' + fzsj.fzList[k].subCode,
ph: null,
nd: stepTableFormData[j].actSolutionConcentration + paralleConfigs.headerSelectFields.actSolutionConcentrationUnit,
source: 'ELN配制',
sxrq: paralleConfigs.expireDate,
ndz: stepTableFormData[j].actSolutionConcentration,
nddw: paralleConfigs.headerSelectFields.actSolutionConcentrationUnit,
kc: fzsj.fzList[k].num,
kcdw: fzsj.dw,
syl: null,
syldw: paralleConfigs.headerSelectFields.actSolutionVolumeUnit,
yxzq: paralleConfigs.effectivePeriod,
yxzqdw: paralleConfigs.effectivePeriodUnit,
})
//
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++) {
const { total, unit } = addTj([stepTableFormData[j].actSolutionVolume, stepTableFormData[j].actDiluentVolume], [paralleConfigs.headerSelectFields.actSolutionVolumeUnit, paralleConfigs.headerSelectFields.actDiluentVolumeUnit])
tmpResource.push({
mc: null,
bh: stepTableFormData[j].targetSolutionCode + stepTableFormData[j].subTargetSolutionCode,
ph: null,
nd: stepTableFormData[j].actSolutionConcentration + paralleConfigs.headerSelectFields.actSolutionConcentrationUnit,
source: 'ELN配制',
sxrq: stepTableFormData[j].targetSolutionExpirationDate,
ndz: stepTableFormData[j].actSolutionConcentration,
nddw: paralleConfigs.headerSelectFields.actSolutionConcentrationUnit,
kc: total,
kcdw: unit,
syl: null,
syldw: unit,
yxzq: stepTableFormData[j].targetSolutionCycle,
yxzqdw: stepTableFormData[j].targetSolutionCyclePrecision,
})
let fzsj = stepTableFormData[j].fzsj
if (fzsj && fzsj.fzList) {
for (let k = 0; k < fzsj.fzList.length; k++) {
tmpResource.push({
mc: null,
bh: fzsj.mybh + '-' + fzsj.fzList[k].subCode,
ph: null,
nd: stepTableFormData[j].actSolutionConcentration + paralleConfigs.headerSelectFields.actSolutionConcentrationUnit,
source: 'ELN配制',
sxrq: paralleConfigs.expireDate,
ndz: stepTableFormData[j].actSolutionConcentration,
nddw: paralleConfigs.headerSelectFields.actSolutionConcentrationUnit,
kc: fzsj.fzList[k].num,
kcdw: fzsj.dw,
syl: null,
syldw: paralleConfigs.headerSelectFields.actSolutionVolumeUnit,
yxzq: paralleConfigs.effectivePeriod,
yxzqdw: paralleConfigs.effectivePeriodUnit,
})
}
}
}
}

+ 9
- 0
src/views/business/comps/template/mixins/templateMixin.js View File

@ -54,6 +54,10 @@ export default {
//试验试剂信息
this.resource = JSON.parse(v.resource)
}
if (v.yqResource) {
//仪器信息
this.yqResource = JSON.parse(v.yqResource)
}
if (v.bdnr) {
this.formData = {
...JSON.parse(v.bdnr),
@ -112,6 +116,8 @@ export default {
formData: {},
templateDetail: {},
resource: [], //试验试剂信息
yqResource: [], //仪器信息
yqResourceTmp: [], //仪器信息提交用
resourceTmp:[],//试验试剂信息提交用
sysjColumns: [
{ label: 'template.common.reagentName', prop: "mc" },//名称
@ -190,6 +196,9 @@ export default {
getResource() {
return this.resourceTmp
},
getYqResource() {
return this.yqResourceTmp
},
//根据ref数组获取直接formData
getFilledFormDataByRefs(refArr = []) {
let result = {}

+ 4
- 0
src/views/business/study/comp/tbbd/Bj.vue View File

@ -318,6 +318,7 @@ export default {
remark: '',
bdnr: '',
resource: '',
yqResource:'',
qmrmm: '',
sfcz: false,
czfs: '',
@ -329,6 +330,7 @@ export default {
ccids: '',
},
resource: [],
yqResource:[],
bdmbTitle: this.$t('page.business.form.bdmb'),
rulesApprove: {
qmrmm: [{
@ -484,6 +486,7 @@ export default {
that.formApprove.id = that.form.id
that.formApprove.bdnr = JSON.stringify(content)
that.resource = that.$refs.templateTable.getResource()
that.yqResource = that.$refs.templateTable.getYqResource()
that.openApprove = true
}
},
@ -615,6 +618,7 @@ export default {
if (valid) {
that.$modal.loading()
that.formApprove.resource = JSON.stringify(that.resource)
that.formApprove.yqResource = JSON.stringify(that.yqResource)
if (that.czlist.length > 0) {
that.formApprove.czlist = JSON.stringify(that.czlist)
}

Loading…
Cancel
Save