Browse Source

feat:[模板管理][DL007~DL014优化]

ouqian
ouqian 1 month ago
parent
commit
04e6a69cfe
10 changed files with 179 additions and 493 deletions
  1. +5
    -1
      src/lang/en/template/dl.js
  2. +5
    -1
      src/lang/zh/template/dl.js
  3. +2
    -3
      src/views/business/comps/template/comps/dl/DL007.vue
  4. +2
    -3
      src/views/business/comps/template/comps/dl/DL008.vue
  5. +7
    -17
      src/views/business/comps/template/comps/dl/DL009.vue
  6. +41
    -159
      src/views/business/comps/template/comps/dl/DL010.vue
  7. +25
    -139
      src/views/business/comps/template/comps/dl/DL011.vue
  8. +17
    -137
      src/views/business/comps/template/comps/dl/DL012.vue
  9. +1
    -2
      src/views/business/comps/template/comps/dl/DL013.vue
  10. +74
    -31
      src/views/business/comps/template/comps/dl/DL014.vue

+ 5
- 1
src/lang/en/template/dl.js View File

@ -30,6 +30,7 @@ const common = {
export default { export default {
dl001: {}, dl001: {},
common, common,
czsj: 'Operation Time',
dl003: { dl003: {
...common, ...common,
pytj: '培养条件', pytj: '培养条件',
@ -127,6 +128,8 @@ export default {
yslhnzsjyjrl: 'Preset 0.9% Sodium Chloride Injection Volume', yslhnzsjyjrl: 'Preset 0.9% Sodium Chloride Injection Volume',
sjlhnzsjyjrl: 'Actual 0.9% Sodium Chloride Injection Volume', sjlhnzsjyjrl: 'Actual 0.9% Sodium Chloride Injection Volume',
sjgs: 'Bone Marrow Collection', sjgs: 'Bone Marrow Collection',
sj: 'Collection',
gusui: 'Bone Marrow',
lx: 'Centrifugation', lx: 'Centrifugation',
ysjrxq: 'Preset Serum Addition', ysjrxq: 'Preset Serum Addition',
sjjrxq: 'Actual Serum Addition', sjjrxq: 'Actual Serum Addition',
@ -148,7 +151,8 @@ export default {
pyxbh: 'Incubator Number', pyxbh: 'Incubator Number',
pytjText: 'Culture Conditions', pytjText: 'Culture Conditions',
pykssj: 'Culture Start Time', pykssj: 'Culture Start Time',
pykssjButton: 'Start'
pykssjButton: 'Start',
bqdy: 'Label Print'
}, },
dl012: { dl012: {
...common, ...common,

+ 5
- 1
src/lang/zh/template/dl.js View File

@ -30,6 +30,7 @@ const common = {
export default { export default {
dl001: {}, dl001: {},
common, common,
czsj: '操作时间',
dl003: { dl003: {
...common, ...common,
pytj: '培养条件', pytj: '培养条件',
@ -128,6 +129,8 @@ export default {
yslhnzsjyjrl: '预设0.9%氯化钠注射液加入量', yslhnzsjyjrl: '预设0.9%氯化钠注射液加入量',
sjlhnzsjyjrl: '实际0.9%氯化钠注射液加入量', sjlhnzsjyjrl: '实际0.9%氯化钠注射液加入量',
sjgs: '收集骨髓', sjgs: '收集骨髓',
sj: '收集',
gusui: '骨髓',
lx: '离心', lx: '离心',
ysjrxq: '预设加入血清', ysjrxq: '预设加入血清',
sjjrxq: '实际加入血清', sjjrxq: '实际加入血清',
@ -149,7 +152,8 @@ export default {
pyxbh: '培养箱编号', pyxbh: '培养箱编号',
pytjText: '培养条件', pytjText: '培养条件',
pykssj: '培养开始时间', pykssj: '培养开始时间',
pykssjButton: '开始'
pykssjButton: '开始',
bqdy: '标签打印'
}, },
dl012: { dl012: {
...common, ...common,

+ 2
- 3
src/views/business/comps/template/comps/dl/DL007.vue View File

@ -133,11 +133,10 @@ export default {
} }
}, },
{ {
type: 'conditionItem',
type: 'cellItem',
label: 'template.dl.dl007.sydd', label: 'template.dl.dl007.sydd',
config: { config: {
sydd: { sydd: {
span: 1,
label: 'template.dl.dl007.sydd', label: 'template.dl.dl007.sydd',
type: 'select', type: 'select',
options: this.getDictOptions('business_sydd'), options: this.getDictOptions('business_sydd'),
@ -148,7 +147,7 @@ export default {
}, },
{ {
type: 'cellItem', type: 'cellItem',
label: 'template.common.configurationTime',
label: 'template.dl.czsj',
config: { config: {
startDate: { startDate: {
label: 'template.common.startTime', label: 'template.common.startTime',

+ 2
- 3
src/views/business/comps/template/comps/dl/DL008.vue View File

@ -181,11 +181,10 @@ export default {
} }
}, },
{ {
type: 'conditionItem',
type: 'cellItem',
label: 'template.dl.dl007.sydd', label: 'template.dl.dl007.sydd',
config: { config: {
sydd: { sydd: {
span: 1,
label: 'template.dl.dl007.sydd', label: 'template.dl.dl007.sydd',
type: 'select', type: 'select',
options: this.getDictOptions('business_sydd'), options: this.getDictOptions('business_sydd'),
@ -196,7 +195,7 @@ export default {
}, },
{ {
type: 'cellItem', type: 'cellItem',
label: 'template.common.configurationTime',
label: 'template.dl.czsj',
config: { config: {
startDate: { startDate: {
label: 'template.common.startTime', label: 'template.common.startTime',

+ 7
- 17
src/views/business/comps/template/comps/dl/DL009.vue View File

@ -22,12 +22,6 @@
:formData="formData" :formData="formData"
/> />
<BaseInfoFormPackage
:ref="refConf.czsj"
:formConfig="czsjFormConfig"
:formData="formData"
/>
<LineLabel label="template.dl.dl007.yqsyxx" /> <LineLabel label="template.dl.dl007.yqsyxx" />
<CustomTable <CustomTable
:columns="yqsyColumns" :columns="yqsyColumns"
@ -96,7 +90,6 @@ import templateMixin from '../../mixins/templateMixin'
const refConf = { const refConf = {
base: 'baseInfoRef', base: 'baseInfoRef',
cltj: 'cltjRef', cltj: 'cltjRef',
czsj: 'czsjRef',
yqsy: 'yqsyTableRef', yqsy: 'yqsyTableRef',
jgxxQxbd: 'jgxxQxbdRef', jgxxQxbd: 'jgxxQxbdRef',
jgxx: 'jgxxTableRef', jgxx: 'jgxxTableRef',
@ -165,10 +158,10 @@ export default {
cltjFormConfig() { cltjFormConfig() {
return [ return [
{ {
type: 'conditionItem',
type: 'cellItem',
label: 'template.dl.dl009.cltj',
config: { config: {
cltj: { cltj: {
span: 1,
label: 'template.dl.dl009.cltj', label: 'template.dl.dl009.cltj',
type: 'select', type: 'select',
options: this.getDictOptions('business_dl_amescltj'), options: this.getDictOptions('business_dl_amescltj'),
@ -178,10 +171,10 @@ export default {
} }
}, },
{ {
type: 'conditionItem',
type: 'cellItem',
label: 'template.dl.dl009.sydd',
config: { config: {
sydd: { sydd: {
span: 1,
label: 'template.dl.dl009.sydd', label: 'template.dl.dl009.sydd',
type: 'select', type: 'select',
options: this.getDictOptions('business_sydd'), options: this.getDictOptions('business_sydd'),
@ -189,14 +182,10 @@ export default {
otherCode: 'syddOther' otherCode: 'syddOther'
} }
} }
}
]
},
//
czsjFormConfig() {
return [
},
{ {
type: 'cellItem', type: 'cellItem',
label: 'template.dl.dl009.czsj',
config: { config: {
startDate: { startDate: {
label: 'template.dl.dl009.kssj', label: 'template.dl.dl009.kssj',
@ -212,6 +201,7 @@ export default {
} }
] ]
}, },
// 使 // 使
yqsyColumns() { yqsyColumns() {
return [ return [

+ 41
- 159
src/views/business/comps/template/comps/dl/DL010.vue View File

@ -16,44 +16,16 @@
:formData="formData" :formData="formData"
/> />
<LineLabel label="template.dl.dl010.sysj" />
<CustomTable
<TableList
label="template.common.reagentInfo"
:columns="sysjColumns" :columns="sysjColumns"
:ref="refConf.sysj"
:showOperation="fillType === 'actFill'"
:showAddRow="fillType === 'actFill'"
:formData="formData"
:prefixKey="`sysjTable`"
>
<template slot="operation" slot-scope="{ row, rowIndex, columns }">
<TableOpertaionDelete
:row="row"
:rowIndex="rowIndex"
:columns="columns"
@deleteRow="() => deleteTableRow(rowIndex, 'sysjTableRef')"
></TableOpertaionDelete>
</template>
</CustomTable>
<LineLabel label="template.dl.dl007.yqsyxx" />
<CustomTable
:columns="yqsyColumns"
:ref="refConf.yqsy"
@onRegentSubmit="(e) => onRegentSubmit(e)"
:showOperation="fillType === 'actFill'"
:showAddRow="fillType === 'actFill'"
:formData="formData"
:prefixKey="`yqsyTable`"
>
<template slot="operation" slot-scope="{ row, rowIndex, columns }">
<TableOpertaionDelete
:row="row"
:rowIndex="rowIndex"
:columns="columns"
@deleteRow="() => deleteTableRow(rowIndex, 'yqsyTableRef')"
></TableOpertaionDelete>
</template>
</CustomTable>
:dataSource="resource"
/>
<TableList
label="template.common.instrumentInfo"
:columns="yqColumns"
:dataSource="yqResource"
/>
<LineLabel label="template.dl.dl010.sjxx" /> <LineLabel label="template.dl.dl010.sjxx" />
<div class="template-form-item"> <div class="template-form-item">
@ -130,8 +102,6 @@ import ImportExcelDialog from '../../dialog/ImportExcelDialog'
const refConf = { const refConf = {
base: 'baseInfoRef', base: 'baseInfoRef',
sysj: 'sysjTableRef',
yqsy: 'yqsyTableRef',
sjxxStep: 'sjxxStepRef', sjxxStep: 'sjxxStepRef',
sjxx: 'sjxxTableRef', sjxx: 'sjxxTableRef',
remark: 'remarkRef' remark: 'remarkRef'
@ -195,11 +165,10 @@ export default {
} }
}, },
{ {
type: 'conditionItem',
type: 'cellItem',
label: 'template.dl.dl010.dwzs', label: 'template.dl.dl010.dwzs',
config: { config: {
dwzs: { dwzs: {
span: 1,
label: 'template.dl.dl010.dwzs', label: 'template.dl.dl010.dwzs',
type: 'select', type: 'select',
options: this.getDictOptions('business_dwzs'), options: this.getDictOptions('business_dwzs'),
@ -214,9 +183,9 @@ export default {
config: { config: {
cjdd: { cjdd: {
label: 'template.dl.dl010.cjdd', label: 'template.dl.dl010.cjdd',
type: 'input',
fillType: 'actFill',
maxlength: 200
type: 'select',
options: this.getDictOptions('business_cjdd'),
fillType: 'actFill'
} }
} }
}, },
@ -226,18 +195,17 @@ export default {
config: { config: {
zpdd: { zpdd: {
label: 'template.dl.dl010.zpdd', label: 'template.dl.dl010.zpdd',
type: 'input',
fillType: 'actFill',
maxlength: 200
type: 'select',
options: this.getDictOptions('business_zpdd'),
fillType: 'actFill'
} }
} }
}, },
{ {
type: 'conditionItem',
type: 'cellItem',
label: 'template.dl.dl010.cjbw', label: 'template.dl.dl010.cjbw',
config: { config: {
cjbw: { cjbw: {
span: 1,
label: 'template.dl.dl010.cjbw', label: 'template.dl.dl010.cjbw',
type: 'select', type: 'select',
options: this.getDictOptions('business_cjbw'), options: this.getDictOptions('business_cjbw'),
@ -250,97 +218,20 @@ export default {
type: 'cellItem', type: 'cellItem',
label: 'template.dl.dl010.jprq', label: 'template.dl.dl010.jprq',
config: { config: {
jprqKssj: {
startDate: {
label: 'template.dl.dl010.jprqKssj', label: 'template.dl.dl010.jprqKssj',
type: 'input', type: 'input',
disabled: true disabled: true
}, },
jprqJssj: {
endDate: {
label: 'template.dl.dl010.jprqJssj', label: 'template.dl.dl010.jprqJssj',
type: 'input', type: 'input',
fillType: 'actFill',
maxlength: 200
disabled: true
} }
} }
} }
] ]
}, },
//
sysjColumns() {
return [
{
label: 'template.dl.dl010.sjmc',
prop: 'sjmc',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl010.bh',
prop: 'bh',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl010.ph',
prop: 'ph',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl010.ndhlcd',
prop: 'ndhlcd',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl010.ly',
prop: 'ly',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl010.sxr',
prop: 'sxr',
bodyType: 'input',
bodyFillType: 'actFill'
}
]
},
// 使
yqsyColumns() {
return [
{
label: 'template.dl.dl010.yqmc',
prop: 'yqmc',
bodyType: 'input',
bodyDisabled: true,
bodyFillType: 'actFill',
disabled: true
},
{
label: 'template.dl.dl010.yqxh',
prop: 'yqxh',
bodyType: 'input',
bodyDisabled: true,
bodyFillType: 'actFill',
disabled: true
},
{
label: 'template.dl.dl010.yqbh',
prop: 'yqbh',
bodyType: 'yq',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl010.xccsjzjdrq',
prop: 'jzrq',
bodyType: 'input',
bodyDisabled: true,
bodyFillType: 'actFill',
disabled: true
}
]
},
// //
sjxxColumns() { sjxxColumns() {
return [ return [
@ -354,6 +245,7 @@ export default {
{ {
label: 'template.dl.dl010.yslhnzsjyjrl', label: 'template.dl.dl010.yslhnzsjyjrl',
headerSelectKey: 'yslhnUnit', headerSelectKey: 'yslhnUnit',
headerSelectTo: 'sjlhnUnit',
headerOptions: this.getDictOptions('business_tjdw'), headerOptions: this.getDictOptions('business_tjdw'),
prop: 'yslhnzsjyjrl', prop: 'yslhnzsjyjrl',
bodyType: 'inputNumber', bodyType: 'inputNumber',
@ -363,10 +255,12 @@ export default {
}, },
{ {
label: 'template.dl.dl010.sjlhnzsjyjrl', label: 'template.dl.dl010.sjlhnzsjyjrl',
headerSelectKey: 'yslhnUnit',
headerSelectKey: 'sjlhnUnit',
headerOptions: this.getDictOptions('business_tjdw'), headerOptions: this.getDictOptions('business_tjdw'),
prop: 'sjlhnzsjyjrl', prop: 'sjlhnzsjyjrl',
bodyMaxlength: 10, bodyMaxlength: 10,
compareTo: 'yslhnzsjyjrl',
copyFrom: 'yslhnzsjyjrl',
bodyType: 'inputNumber', bodyType: 'inputNumber',
bodyFillType: 'actFill', bodyFillType: 'actFill',
fillType: 'preFill' fillType: 'preFill'
@ -378,9 +272,14 @@ export default {
checkboxLabel: '', checkboxLabel: '',
bodyFillType: 'actFill', bodyFillType: 'actFill',
headerColumns: [ headerColumns: [
{ type: 'span', label: '收集' },
{ type: 'inputNumber', fillType: 'actFill', key: 'gs' },
{ type: 'span', label: '骨髓' }
{ type: 'span', label: 'template.dl.dl010.sj' },
{
type: 'inputNumber',
fillType: 'actFill',
maxLength: 10,
key: 'gs'
},
{ type: 'span', label: 'template.dl.dl010.gusui' }
], ],
span: 3 span: 3
}, },
@ -398,7 +297,8 @@ export default {
bodyFillType: 'preFill', bodyFillType: 'preFill',
bodyMaxlength: 10, bodyMaxlength: 10,
fillType: 'preFill', fillType: 'preFill',
headerSelectKey: 'yslhnUnit',
headerSelectKey: 'ysjrxqUnit',
headerSelectTo: 'sjjrxqUnit',
headerOptions: this.getDictOptions('business_tjdw') headerOptions: this.getDictOptions('business_tjdw')
}, },
{ {
@ -408,7 +308,9 @@ export default {
bodyMaxlength: 10, bodyMaxlength: 10,
bodyFillType: 'actFill', bodyFillType: 'actFill',
fillType: 'preFill', fillType: 'preFill',
headerSelectKey: 'yslhnUnit',
compareTo: 'ysjrxq',
copyFrom: 'ysjrxq',
headerSelectKey: 'sjjrxqUnit',
headerOptions: this.getDictOptions('business_tjdw') headerOptions: this.getDictOptions('business_tjdw')
} }
] ]
@ -543,16 +445,12 @@ export default {
// //
getFilledFormData() { getFilledFormData() {
const baseData = this.$refs.baseInfoRef.getFilledFormData() const baseData = this.$refs.baseInfoRef.getFilledFormData()
const sysjData = this.$refs.sysjTableRef.getFilledFormData()
const yqsyData = this.$refs.yqsyTableRef.getFilledFormData()
const sjxxStepData = this.$refs.sjxxStepRef.getFilledFormData() const sjxxStepData = this.$refs.sjxxStepRef.getFilledFormData()
const sjxxData = this.$refs.sjxxTableRef.getFilledFormData() const sjxxData = this.$refs.sjxxTableRef.getFilledFormData()
const remarkData = this.$refs.remarkRef.getFilledFormData() const remarkData = this.$refs.remarkRef.getFilledFormData()
return { return {
...baseData, ...baseData,
...sysjData,
...yqsyData,
...sjxxStepData, ...sjxxStepData,
...sjxxData, ...sjxxData,
...remarkData ...remarkData
@ -571,8 +469,6 @@ export default {
async validFields() { async validFields() {
const refsToValidate = [ const refsToValidate = [
'baseInfoRef', 'baseInfoRef',
'sysjTableRef',
'yqsyTableRef',
'sjxxStepRef', 'sjxxStepRef',
'sjxxTableRef', 'sjxxTableRef',
'remarkRef' 'remarkRef'
@ -580,28 +476,14 @@ export default {
return await this.validFormFields(refsToValidate) return await this.validFormFields(refsToValidate)
}, },
getResource() { getResource() {
const sysjStepResource = this.$refs.sysjTableRef.getStepResource()
const yqsyStepResource = this.$refs.yqsyTableRef.getStepResource()
const sjxxStepResource = this.$refs.sjxxStepRef.getStepResource()
// 使 // 使
this.resourceTmp = [
...(sysjStepResource.sjResource || []),
...(yqsyStepResource.sjResource || [])
]
this.yqResourceTmp = yqsyStepResource.yqResource || []
this.resourceTmp = sjxxStepResource.sjResource || []
this.yqResourceTmp = sjxxStepResource.yqResource || []
return this.resourceTmp return this.resourceTmp
}, },
onRegentSubmit(e) { onRegentSubmit(e) {
const { selectInfo, key, rowIndex } = e
const { row } = selectInfo
if (key === 'yqbh') {
const params = {
yqmc: row.mc,
yqxh: row.xh,
jzrq: row.jzrq
}
this.$refs.yqsyTableRef.updateDataSourceByRowIndex(rowIndex, params)
}
//
}, },
// //
async onSave() { async onSave() {

+ 25
- 139
src/views/business/comps/template/comps/dl/DL011.vue View File

@ -16,48 +16,25 @@
:formData="formData" :formData="formData"
/> />
<LineLabel label="template.dl.dl011.sysj" />
<CustomTable
<TableList
label="template.common.reagentInfo"
:columns="sysjColumns" :columns="sysjColumns"
:ref="refConf.sysj"
:showOperation="fillType === 'actFill'"
:showAddRow="fillType === 'actFill'"
:formData="formData"
:prefixKey="`sysjTable`"
>
<template slot="operation" slot-scope="{ row, rowIndex, columns }">
<TableOpertaionDelete
:row="row"
:rowIndex="rowIndex"
:columns="columns"
@deleteRow="() => deleteTableRow(rowIndex, 'sysjTableRef')"
></TableOpertaionDelete>
</template>
</CustomTable>
<LineLabel label="template.dl.dl007.yqsyxx" />
<CustomTable
:columns="yqsyColumns"
:ref="refConf.yqsy"
@onRegentSubmit="(e) => onRegentSubmit(e)"
:showOperation="fillType === 'actFill'"
:showAddRow="fillType === 'actFill'"
:formData="formData"
:prefixKey="`yqsyTable`"
>
<template slot="operation" slot-scope="{ row, rowIndex, columns }">
<TableOpertaionDelete
:row="row"
:rowIndex="rowIndex"
:columns="columns"
@deleteRow="() => deleteTableRow(rowIndex, 'yqsyTableRef')"
></TableOpertaionDelete>
</template>
</CustomTable>
:dataSource="resource"
/>
<TableList
label="template.common.instrumentInfo"
:columns="yqColumns"
:dataSource="yqResource"
/>
<!-- 细胞信息 --> <!-- 细胞信息 -->
<LineLabel label="template.dl.dl011.xbxx" /> <LineLabel label="template.dl.dl011.xbxx" />
<div class="template-form-item"> <div class="template-form-item">
<div class="config-header-end" v-if="fillType === 'actFill'">
<el-button type="primary" size="small">{{
$t('template.dl.dl011.bqdy')
}}</el-button>
</div>
<BaseInfoFormPackage <BaseInfoFormPackage
fieldItemLabel="" fieldItemLabel=""
label="" label=""
@ -103,12 +80,9 @@ import LineLabel from '@/components/Template/LineLabel'
import TableList from '@/components/Template/Table' import TableList from '@/components/Template/Table'
import Step from '@/components/Template/Step' import Step from '@/components/Template/Step'
import templateMixin from '../../mixins/templateMixin' import templateMixin from '../../mixins/templateMixin'
import moment from 'moment'
const refConf = { const refConf = {
base: 'baseInfoRef', base: 'baseInfoRef',
sysj: 'sysjTableRef',
yqsy: 'yqsyTableRef',
step: 'stepRef', step: 'stepRef',
remark: 'remarkRef', remark: 'remarkRef',
xbxx: 'xbxxRef', xbxx: 'xbxxRef',
@ -177,9 +151,10 @@ export default {
config: { config: {
sydd: { sydd: {
label: 'template.dl.dl011.sydd', label: 'template.dl.dl011.sydd',
type: 'input',
fillType: 'actFill',
maxlength: 200
type: 'select',
options: this.getDictOptions('business_sydd'),
otherCode: 'syddOther',
fillType: 'actFill'
} }
} }
}, },
@ -187,12 +162,12 @@ export default {
type: 'cellItem', type: 'cellItem',
label: '操作时间', label: '操作时间',
config: { config: {
kssj: {
startDate: {
label: 'template.dl.dl011.kssj', label: 'template.dl.dl011.kssj',
type: 'input', type: 'input',
disabled: true disabled: true
}, },
jssj: {
endDate: {
label: 'template.dl.dl011.jssj', label: 'template.dl.dl011.jssj',
type: 'input', type: 'input',
disabled: true disabled: true
@ -201,78 +176,6 @@ export default {
} }
] ]
}, },
//
sysjColumns() {
return [
{
label: 'template.dl.dl011.sjmc',
prop: 'sjmc',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl011.bh',
prop: 'bh',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl011.ph',
prop: 'ph',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl011.ndhlcd',
prop: 'ndhlcd',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl011.ly',
prop: 'ly',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl011.sxr',
prop: 'sxr',
bodyType: 'input',
bodyFillType: 'actFill'
}
]
},
// 使
yqsyColumns() {
return [
{
label: 'template.dl.dl011.yqmc',
prop: 'yqmc',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl011.yqxh',
prop: 'yqxh',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl011.yqbh',
prop: 'yqbh',
bodyType: 'yq',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl011.xccsjzjdrq',
prop: 'xccsjzjdrq',
bodyType: 'input',
bodyDisabled: true,
bodyFillType: 'actFill',
disabled: true
}
]
},
pyxxConfig() { pyxxConfig() {
return [ return [
{ {
@ -340,6 +243,8 @@ export default {
subType: 'select', subType: 'select',
subKey: 'fshxbsjtjUnit', subKey: 'fshxbsjtjUnit',
fillType: 'actFill', fillType: 'actFill',
copyFrom: 'fshxbyjtj',
compareTo: 'fshxbyjtj',
subOptions: this.getDictOptions('business_nddw'), subOptions: this.getDictOptions('business_nddw'),
maxlength: 10, maxlength: 10,
copyFrom: 'fshxbyjtj' // copyFrom: 'fshxbyjtj' //
@ -382,33 +287,14 @@ export default {
return await this.validFormFields(refNames) return await this.validFormFields(refNames)
}, },
getResource() { getResource() {
const sysjStepResource = this.$refs.sysjTableRef.getStepResource()
const yqsyStepResource = this.$refs.yqsyTableRef.getStepResource()
const stepResource = this.$refs.stepRef.getStepResource() const stepResource = this.$refs.stepRef.getStepResource()
// 使 // 使
this.resourceTmp = [
...(sysjStepResource.sjResource || []),
...(yqsyStepResource.sjResource || []),
...(stepResource.sjResource || [])
]
this.yqResourceTmp = [
...(yqsyStepResource.yqResource || []),
...(stepResource.yqResource || [])
]
this.resourceTmp = stepResource.sjResource || []
this.yqResourceTmp = stepResource.yqResource || []
return this.resourceTmp return this.resourceTmp
}, },
onRegentSubmit(e) { onRegentSubmit(e) {
const { selectInfo, key, rowIndex } = e
const { row } = selectInfo
if (key === 'yqbh') {
const params = {
yqmc: row.mc,
yqxh: row.xh,
xccsjzjdrq: row.jzrq
}
this.$refs.yqsyTableRef.updateDataSourceByRowIndex(rowIndex, params)
}
//
}, },
// //
async onSave() { async onSave() {

+ 17
- 137
src/views/business/comps/template/comps/dl/DL012.vue View File

@ -16,44 +16,16 @@
:formData="formData" :formData="formData"
/> />
<LineLabel label="template.dl.dl012.sysj" />
<CustomTable
<TableList
label="template.common.reagentInfo"
:columns="sysjColumns" :columns="sysjColumns"
:ref="refConf.sysj"
:showOperation="fillType === 'actFill'"
:showAddRow="fillType === 'actFill'"
:formData="formData"
:prefixKey="`sysjTable`"
>
<template slot="operation" slot-scope="{ row, rowIndex, columns }">
<TableOpertaionDelete
:row="row"
:rowIndex="rowIndex"
:columns="columns"
@deleteRow="() => deleteTableRow(rowIndex, 'sysjTableRef')"
></TableOpertaionDelete>
</template>
</CustomTable>
<LineLabel label="template.dl.dl007.yqsyxx" />
<CustomTable
:columns="yqsyColumns"
:ref="refConf.yqsy"
@onRegentSubmit="(e) => onRegentSubmit(e)"
:showOperation="fillType === 'actFill'"
:showAddRow="fillType === 'actFill'"
:formData="formData"
:prefixKey="`yqsyTable`"
>
<template slot="operation" slot-scope="{ row, rowIndex, columns }">
<TableOpertaionDelete
:row="row"
:rowIndex="rowIndex"
:columns="columns"
@deleteRow="() => deleteTableRow(rowIndex, 'yqsyTableRef')"
></TableOpertaionDelete>
</template>
</CustomTable>
:dataSource="resource"
/>
<TableList
label="template.common.instrumentInfo"
:columns="yqColumns"
:dataSource="yqResource"
/>
<!-- 细胞信息 --> <!-- 细胞信息 -->
<LineLabel label="template.dl.dl012.xbxx" /> <LineLabel label="template.dl.dl012.xbxx" />
@ -108,8 +80,6 @@ import moment from 'moment'
const refConf = { const refConf = {
base: 'baseInfoRef', base: 'baseInfoRef',
sysj: 'sysjTableRef',
yqsy: 'yqsyTableRef',
xbxx: 'xbxxRef', xbxx: 'xbxxRef',
step: 'stepRef', step: 'stepRef',
pyxx: 'pyxxRef', pyxx: 'pyxxRef',
@ -173,10 +143,10 @@ export default {
} }
}, },
{ {
type: 'conditionItem',
type: 'cellItem',
label: 'template.dl.dl012.sydd',
config: { config: {
sydd: { sydd: {
span: 1,
label: 'template.dl.dl012.sydd', label: 'template.dl.dl012.sydd',
type: 'select', type: 'select',
options: this.getDictOptions('business_sydd'), options: this.getDictOptions('business_sydd'),
@ -203,78 +173,6 @@ export default {
} }
] ]
}, },
//
sysjColumns() {
return [
{
label: 'template.dl.dl012.sjmc',
prop: 'sjmc',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl012.bh',
prop: 'bh',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl012.ph',
prop: 'ph',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl012.ndhlcd',
prop: 'ndhlcd',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl012.ly',
prop: 'ly',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl012.sxr',
prop: 'sxr',
bodyType: 'input',
bodyFillType: 'actFill'
}
]
},
// 使
yqsyColumns() {
return [
{
label: 'template.dl.dl012.yqmc',
prop: 'yqmc',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl012.yqxh',
prop: 'yqxh',
bodyType: 'input',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl012.yqbh',
prop: 'yqbh',
bodyType: 'yq',
bodyFillType: 'actFill'
},
{
label: 'template.dl.dl012.xccsjzjdrq',
prop: 'xccsjzjdrq',
bodyType: 'input',
bodyDisabled: true,
bodyFillType: 'actFill',
disabled: true
}
]
},
// //
pyxxConfig() { pyxxConfig() {
return [ return [
@ -364,7 +262,8 @@ export default {
fillType: 'actFill', fillType: 'actFill',
subOptions: this.getDictOptions('business_nddw'), subOptions: this.getDictOptions('business_nddw'),
maxlength: 10, maxlength: 10,
copyFrom: 'zbhxbyjtj' //
compareTo: 'zbhxbyjtj',
copyFrom: 'zbhxbyjtj'
} }
} }
} }
@ -408,7 +307,7 @@ export default {
} }
}, },
methods: { methods: {
handleClickButton(e,signData) {
handleClickButton(e, signData) {
console.log(e) console.log(e)
const { subKey } = e || {} const { subKey } = e || {}
if (subKey === 'pykssjButton') { if (subKey === 'pykssjButton') {
@ -436,33 +335,14 @@ export default {
return await this.validFormFields(refNames) return await this.validFormFields(refNames)
}, },
getResource() { getResource() {
const sysjStepResource = this.$refs.sysjTableRef.getStepResource()
const yqsyStepResource = this.$refs.yqsyTableRef.getStepResource()
const stepResource = this.$refs.stepRef.getStepResource() const stepResource = this.$refs.stepRef.getStepResource()
// 使 // 使
this.resourceTmp = [
...(sysjStepResource.sjResource || []),
...(yqsyStepResource.sjResource || []),
...(stepResource.sjResource || [])
]
this.yqResourceTmp = [
...(yqsyStepResource.yqResource || []),
...(stepResource.yqResource || [])
]
this.resourceTmp = stepResource.sjResource || []
this.yqResourceTmp = stepResource.yqResource || []
return this.resourceTmp return this.resourceTmp
}, },
onRegentSubmit(e) { onRegentSubmit(e) {
const { selectInfo, key, rowIndex } = e
const { row } = selectInfo
if (key === 'yqbh') {
const params = {
yqmc: row.mc,
yqxh: row.xh,
xccsjzjdrq: row.jzrq
}
this.$refs.yqsyTableRef.updateDataSourceByRowIndex(rowIndex, params)
}
//
}, },
// //
async onSave() { async onSave() {

+ 1
- 2
src/views/business/comps/template/comps/dl/DL013.vue View File

@ -179,11 +179,10 @@ export default {
} }
}, },
{ {
type: 'conditionItem',
type: 'cellItem',
label: 'template.dl.dl013.sydd', label: 'template.dl.dl013.sydd',
config: { config: {
sydd: { sydd: {
span: 1,
label: 'template.dl.dl013.sydd', label: 'template.dl.dl013.sydd',
type: 'select', type: 'select',
options: this.getDictOptions('business_sydd'), options: this.getDictOptions('business_sydd'),

+ 74
- 31
src/views/business/comps/template/comps/dl/DL014.vue View File

@ -16,8 +16,16 @@
:formData="formData" :formData="formData"
/> />
<TableList label="template.common.gyzjInfo" :columns="gyzjColumns" :dataSource="resourceGyzj" />
<TableList label="template.common.reagentInfo" :columns="sysjColumns" :dataSource="resource" />
<TableList
label="template.common.gyzjInfo"
:columns="gyzjColumns"
:dataSource="resourceGyzj"
/>
<TableList
label="template.common.reagentInfo"
:columns="sysjColumns"
:dataSource="resource"
/>
<LineLabel label="template.dl.dl007.yqsyxx" /> <LineLabel label="template.dl.dl007.yqsyxx" />
<CustomTable <CustomTable
@ -78,6 +86,15 @@
}}</el-button> }}</el-button>
</div> </div>
<!-- 培养液 -->
<BaseInfoFormPackage
fieldItemLabel=""
label=""
:ref="refConf.pyy"
:formConfig="pyyFormConfig"
:formData="formData"
/>
<!-- 剂量组列表 --> <!-- 剂量组列表 -->
<CustomTable <CustomTable
:columns="jlzTableColumns" :columns="jlzTableColumns"
@ -129,6 +146,7 @@ const refConf = {
xbInfo: 'xbInfoRef', xbInfo: 'xbInfoRef',
jlzInfo: 'jlzInfoRef', jlzInfo: 'jlzInfoRef',
jlzmcTable: 'jlzmcTableRef', jlzmcTable: 'jlzmcTableRef',
pyy: 'pyyRef',
jlzTable: 'jlzTableRef', jlzTable: 'jlzTableRef',
remark: 'remarkRef' remark: 'remarkRef'
} }
@ -204,11 +222,10 @@ export default {
} }
}, },
{ {
type: 'conditionItem',
type: 'cellItem',
label: 'template.dl.dl014.sydd', label: 'template.dl.dl014.sydd',
config: { config: {
sydd: { sydd: {
span: 1,
label: 'template.dl.dl014.sydd', label: 'template.dl.dl014.sydd',
type: 'select', type: 'select',
options: this.getDictOptions('business_sydd'), options: this.getDictOptions('business_sydd'),
@ -328,14 +345,14 @@ export default {
type: 'inputNumber', type: 'inputNumber',
fillType: 'preFill' fillType: 'preFill'
} }
// preFill // preFill
if (this.fillType === 'preFill') { if (this.fillType === 'preFill') {
jlzzsConfig.subType = 'button' jlzzsConfig.subType = 'button'
jlzzsConfig.subKey = 'jlzzsButton' jlzzsConfig.subKey = 'jlzzsButton'
jlzzsConfig.buttonName = 'template.dl.dl014.qrButton' jlzzsConfig.buttonName = 'template.dl.dl014.qrButton'
} }
firstStepConfig.jlzzs = jlzzsConfig firstStepConfig.jlzzs = jlzzsConfig
return [ return [
@ -356,6 +373,25 @@ export default {
} }
] ]
}, },
//
pyyFormConfig() {
return [
{
type: 'step',
config: {
pyymc: {
label: 'template.dl.dl014.pyy',
type: 'input',
fillType: 'preFill',
maxlength: 20,
subType: 'sj',
subKey: 'pyysj',
subFillType: 'actFill'
}
}
}
]
},
// //
jlzTableColumns() { jlzTableColumns() {
const columns = [ const columns = [
@ -438,11 +474,12 @@ export default {
columns.push( columns.push(
{ {
label: 'template.dl.dl014.gspbh', label: 'template.dl.dl014.gspbh',
prop: 'gspbh',
prop: 'gspbhmc',
bodyType: 'input', bodyType: 'input',
bodyFillType: 'actFill',
bodyFillType: 'preFill',
bodyMaxlength: 20,
bodySubType: 'gsp', bodySubType: 'gsp',
bodySubKey: 'gspbh1',
bodySubKey: 'gspbh',
bodySubFillType: 'actFill' bodySubFillType: 'actFill'
}, },
{ {
@ -499,12 +536,12 @@ export default {
this.isSftjs9Yes = this.isSftjs9Yes =
this.formData.sftjs9 === '是' || this.formData.sftjs9 === 'Yes' this.formData.sftjs9 === '是' || this.formData.sftjs9 === 'Yes'
} }
// //
if (this.formData.jlzzs) { if (this.formData.jlzzs) {
this.oldJlzzs = this.formData.jlzzs this.oldJlzzs = this.formData.jlzzs
} }
// //
if (this.formData.pxpb) { if (this.formData.pxpb) {
this.oldPxpb = this.formData.pxpb this.oldPxpb = this.formData.pxpb
@ -523,6 +560,7 @@ export default {
const jlzInfoData = this.$refs[refConf.jlzInfo]?.getFilledFormData() || {} const jlzInfoData = this.$refs[refConf.jlzInfo]?.getFilledFormData() || {}
const jlzmcTableData = const jlzmcTableData =
this.$refs[refConf.jlzmcTable]?.getFilledFormData() || {} this.$refs[refConf.jlzmcTable]?.getFilledFormData() || {}
const pyyData = this.$refs[refConf.pyy]?.getFilledFormData() || {}
const jlzTableData = const jlzTableData =
this.$refs[refConf.jlzTable]?.getFilledFormData() || {} this.$refs[refConf.jlzTable]?.getFilledFormData() || {}
const remarkData = this.$refs[refConf.remark]?.getFilledFormData() || {} const remarkData = this.$refs[refConf.remark]?.getFilledFormData() || {}
@ -532,6 +570,7 @@ export default {
...yqsyData, ...yqsyData,
...xbInfoData, ...xbInfoData,
...jlzInfoData, ...jlzInfoData,
...pyyData,
...remarkData, ...remarkData,
// formData // formData
jlzmcTableData: jlzmcTableData.stepTableFormData || [], jlzmcTableData: jlzmcTableData.stepTableFormData || [],
@ -547,6 +586,7 @@ export default {
refConf.xbInfo, refConf.xbInfo,
refConf.jlzInfo, refConf.jlzInfo,
refConf.jlzmcTable, refConf.jlzmcTable,
refConf.pyy,
refConf.jlzTable, refConf.jlzTable,
refConf.remark refConf.remark
] ]
@ -559,7 +599,7 @@ export default {
// //
const jlzmcTableData = this.$refs[refConf.jlzmcTable]?.getFilledFormData() const jlzmcTableData = this.$refs[refConf.jlzmcTable]?.getFilledFormData()
const jlzmcList = jlzmcTableData?.stepTableFormData || [] const jlzmcList = jlzmcTableData?.stepTableFormData || []
if (jlzmcList.length === 0) { if (jlzmcList.length === 0) {
this.$message.warning('请先生成剂量组名称') this.$message.warning('请先生成剂量组名称')
return false return false
@ -567,7 +607,7 @@ export default {
const jlzTableData = this.$refs[refConf.jlzTable]?.getFilledFormData() const jlzTableData = this.$refs[refConf.jlzTable]?.getFilledFormData()
const jlzList = jlzTableData?.stepTableFormData || [] const jlzList = jlzTableData?.stepTableFormData || []
if (jlzList.length === 0) { if (jlzList.length === 0) {
this.$message.warning('请先生成剂量组列表数据') this.$message.warning('请先生成剂量组列表数据')
return false return false
@ -583,6 +623,7 @@ export default {
refConf.xbInfo, refConf.xbInfo,
refConf.jlzInfo, refConf.jlzInfo,
refConf.jlzmcTable, refConf.jlzmcTable,
refConf.pyy,
refConf.jlzTable, refConf.jlzTable,
refConf.remark refConf.remark
] ]
@ -595,7 +636,7 @@ export default {
// //
const jlzmcTableData = this.$refs[refConf.jlzmcTable]?.getFilledFormData() const jlzmcTableData = this.$refs[refConf.jlzmcTable]?.getFilledFormData()
const jlzmcList = jlzmcTableData?.stepTableFormData || [] const jlzmcList = jlzmcTableData?.stepTableFormData || []
if (jlzmcList.length === 0) { if (jlzmcList.length === 0) {
this.$message.warning('请先生成剂量组名称') this.$message.warning('请先生成剂量组名称')
return false return false
@ -603,7 +644,7 @@ export default {
const jlzTableData = this.$refs[refConf.jlzTable]?.getFilledFormData() const jlzTableData = this.$refs[refConf.jlzTable]?.getFilledFormData()
const jlzList = jlzTableData?.stepTableFormData || [] const jlzList = jlzTableData?.stepTableFormData || []
if (jlzList.length === 0) { if (jlzList.length === 0) {
this.$message.warning('请先生成剂量组列表数据') this.$message.warning('请先生成剂量组列表数据')
return false return false
@ -615,22 +656,22 @@ export default {
// 使 // 使
const yqsyData = this.$refs.yqsyTableRef?.getFilledFormData() const yqsyData = this.$refs.yqsyTableRef?.getFilledFormData()
const yqsyList = yqsyData?.stepTableFormData || [] const yqsyList = yqsyData?.stepTableFormData || []
// //
this.yqResourceTmp = yqsyList this.yqResourceTmp = yqsyList
.filter(item => item.yqbh)
.map(item => ({
.filter((item) => item.yqbh)
.map((item) => ({
bh: item.yqbh, bh: item.yqbh,
mc: item.yqmc, mc: item.yqmc,
xh: item.yqxh xh: item.yqxh
})) }))
// S9 // S9
const jlzData = this.$refs.jlzTableRef?.getFilledFormData() const jlzData = this.$refs.jlzTableRef?.getFilledFormData()
const jlzList = jlzData?.stepTableFormData || [] const jlzList = jlzData?.stepTableFormData || []
const sjResourceFromJlz = [] const sjResourceFromJlz = []
jlzList.forEach(item => {
jlzList.forEach((item) => {
// //
if (item.xybh) { if (item.xybh) {
sjResourceFromJlz.push({ sjResourceFromJlz.push({
@ -639,9 +680,9 @@ export default {
}) })
} }
}) })
this.resourceTmp = sjResourceFromJlz this.resourceTmp = sjResourceFromJlz
return this.resourceTmp return this.resourceTmp
}, },
onRegentSubmit(e) { onRegentSubmit(e) {
@ -668,7 +709,7 @@ export default {
// blur // blur
onJlzInfoBlur(e) { onJlzInfoBlur(e) {
const { key, value } = e const { key, value } = e
// //
if (key === 'jlzzs') { if (key === 'jlzzs') {
// //
@ -677,24 +718,26 @@ export default {
this.$set(this.formData, 'jlzmcTableData', []) this.$set(this.formData, 'jlzmcTableData', [])
// //
this.$set(this.formData, 'jlzTableData', []) this.$set(this.formData, 'jlzTableData', [])
this.$message.info('剂量组总数已改变,已清空剂量组名称和剂量组列表数据')
this.$message.info(
'剂量组总数已改变,已清空剂量组名称和剂量组列表数据'
)
} }
// //
this.oldJlzzs = value this.oldJlzzs = value
} }
// //
if (key === 'pxpb') { if (key === 'pxpb') {
// //
if (this.oldPxpb !== null && this.oldPxpb !== value) { if (this.oldPxpb !== null && this.oldPxpb !== value) {
// //
this.$set(this.formData, 'jlzTableData', []) this.$set(this.formData, 'jlzTableData', [])
this.$message.info('平行瓶数已改变,已清空剂量组列表数据') this.$message.info('平行瓶数已改变,已清空剂量组列表数据')
} }
// //
this.oldPxpb = value this.oldPxpb = value
} }
@ -702,7 +745,7 @@ export default {
// blur // blur
onJlzmcTableBlur(e) { onJlzmcTableBlur(e) {
const { colKey } = e const { colKey } = e
// //
if (colKey === 'jlzzmc') { if (colKey === 'jlzzmc') {
// //

Loading…
Cancel
Save