Browse Source

feat:[模板管理][暂存]

ouqian
luojie 1 month ago
parent
commit
b16881fbf5
2 changed files with 66 additions and 11 deletions
  1. +44
    -7
      src/views/business/comps/template/comps/sp/SP00456.vue
  2. +22
    -4
      src/views/business/comps/template/formConfig/paralleAndLadderConfig.js

+ 44
- 7
src/views/business/comps/template/comps/sp/SP00456.vue View File

@ -10,10 +10,26 @@
ref="baseInfoRef" :formConfig="baseInfoFormConfig" :formData="formData" />
<TableList label="template.common.sjInfo" :columns="sjColumns" :dataSource="resourceSj" />
<TableList label="template.common.instrumentInfo" :columns="yqColumns" :dataSource="yqResource" />
<BaseInfoFormPackage fieldItemLabel="template.common.storageCondition"
<BaseInfoFormPackage v-if="!isLba" fieldItemLabel="template.common.storageCondition"
label="template.common.storageCondition" ref="storageConditionRef"
:formConfig="storageFormConfig" :formData="formData" />
<LineLabel label="template.common.operationSteps" />
<div v-if="isLba">
<LineLabel label="template.lba.lba004.xbxx" />
<CustomTable
:isBorder="false"
:ref="`jcbRef`"
:columns="jcbColumns"
:formData="formData"
:prefixKey = "`jcb`"
fieldItemLabel = "template.lba.lba004.xbxx"
:showOperation="fillType === 'preFill'"
>
<template slot="operation" slot-scope="{ row, rowIndex, columns }">
<TableOpertaionDelete :row="row" :rowIndex="rowIndex" :columns="columns" @deleteRow="deleteJcbRow" ></TableOpertaionDelete>
</template>
</CustomTable>
</div>
<LineLabel :label="isLba ? 'template.lba.lba005.bzqxpz' : 'template.common.operationSteps'" />
<div v-if="fillType === 'preFill'" class="mt-20">
<el-button type="primary" @click="handleAddParalle">{{ $t('template.common.xzpxpz')
}}</el-button>
@ -126,15 +142,19 @@ import templateMixin from "../../mixins/templateMixin.js";
import CustomTable from '@/components/Template/CustomTable.vue';
import SelectReagentDialog from '../../dialog/SelectReagentDialog.vue';
import TableOpertaion from "@/components/Template/operation/TableOpertaion.vue";
import TableOpertaionDelete from "@/components/Template/operation/TableOpertaionDelete.vue"
import { getExpireDate, duplicateResource } from "@/utils/index.js";
import { getuuid } from "@/utils/index.js";
import { isCommonUnit } from "@/utils/conTools";
import moment from "moment";
import { addTj, uniqeResource, uniqeResourceOne, addDecimals } from "@/utils/calUnitTools";
import { getLadderColumnsConfig, getParallelColumnsConfig, getLadderFormConfig, getBaseInfoFormConfig, getRemarkFormConfig, getStorageConditionFormConfig, getParalleStepFormConfig } from "../../formConfig/paralleAndLadderConfig.js";
import {
getLadderColumnsConfig, getParallelColumnsConfig, getLadderFormConfig,
getBaseInfoFormConfig, getRemarkFormConfig, getStorageConditionFormConfig, getParalleStepFormConfig ,getJcbColumnsConfig
} from "../../formConfig/paralleAndLadderConfig.js";
export default {
name: "SP00456",
components: { BaseInfoFormPackage, LineLabel, TableList, Step, CustomTable, SelectReagentDialog, TableOpertaion },
components: { BaseInfoFormPackage, LineLabel, TableList, Step, CustomTable, SelectReagentDialog, TableOpertaion, TableOpertaionDelete },
mixins: [templateMixin],
props: {
fillType: {
@ -155,6 +175,10 @@ export default {
},
},
computed: {
//
jcbColumns(){
return getJcbColumnsConfig(this);
},
//
storageFormConfig() {
return getStorageConditionFormConfig(this);
@ -183,6 +207,7 @@ export default {
},
},
data() {
const labArr = ["LBA005","LBA007"]
return {
subSolutionVisible: false,
currentSubKey: "",//key
@ -193,6 +218,7 @@ export default {
currentTableKey: "",//key
targetAcSolutionFromTable: true,//
currentRowData: {},//
isLba: labArr.includes(this.sn),
};
},
mounted() {
@ -204,7 +230,12 @@ export default {
}
},
methods: {
deleteJcbRow(rowIndex){
const jcbRef = this.$refs['jcbRef'];
if (jcbRef) {
jcbRef.deleteRow(rowIndex);
}
},
onBeforeSaveRecord(data, type, configIndex) {
if (type === "ladder") {
const formFields = this.$refs[`ladderStepFormPackageRef_${configIndex}`][0]?.getFilledFormData();
@ -407,6 +438,7 @@ export default {
paralleTableFormData: [],
showParalleConfig: true
});
this.justUpdateFilledFormData();
},
//
handleAddLadder() {
@ -422,6 +454,7 @@ export default {
ladderTableFormData: [],
showLadderConfig: true
});
this.justUpdateFilledFormData();
},
//
deleteConfig(type, config) {
@ -616,8 +649,9 @@ export default {
},
//
async validFields() {
const { isLba } = this;
const refsToValidate = isLba ? ["baseInfoRef", "jcbRef", "remarkRef"]: ["baseInfoRef", "storageConditionRef", "remarkRef"]
//
let refsToValidate = ["baseInfoRef", "storageConditionRef", "remarkRef"];
//
if (this.formData.ladderConfigs && this.formData.ladderConfigs.length > 0) {
@ -640,7 +674,10 @@ export default {
},
getFilledFormData() {
const baseData = this.$refs.baseInfoRef.getFilledFormData();
const conditionData = this.$refs.storageConditionRef.getFilledFormData();
let conditionData = {};
if (!this.isLba) {
conditionData = this.$refs.storageConditionRef.getFilledFormData();
}
//
const ladderConfigsData = [];

+ 22
- 4
src/views/business/comps/template/formConfig/paralleAndLadderConfig.js View File

@ -477,7 +477,7 @@ export const getLadderFormConfig = ($this) => {
export const getBaseInfoFormConfig = ($this) => {
const sn = $this.sn;
const labArr = ["LBA005","LBA007"]
const isLab = labArr.includes(sn);
const isLba = labArr.includes(sn);
return [
{
type: 'cardItem',
@ -509,7 +509,7 @@ export const getBaseInfoFormConfig = ($this) => {
},
{
type: 'conditionItem',
label:isLab? 'template.lba.lba002.cztj':'template.common.testConfigurationConditions',
label:isLba? 'template.lba.lba002.cztj':'template.common.testConfigurationConditions',
config: {
pre: {
label: 'template.common.preFill',
@ -530,7 +530,7 @@ export const getBaseInfoFormConfig = ($this) => {
}
}
},
{
isLba?{}:{
type: 'conditionItem',
label: 'template.sp.sp00456.rqcz',
config: {
@ -546,7 +546,7 @@ export const getBaseInfoFormConfig = ($this) => {
},
{
type: 'cellItem',
label: 'template.common.configurationTime',
label: isLba?'template.lba.lba002.czsj':'template.common.configurationTime',
config: {
startDate: {
label: 'template.common.startTime',
@ -625,3 +625,21 @@ export const getParalleStepFormConfig = ($this) => {
}
]
}
//选板信息;
export const getJcbColumnsConfig = ($this) => {
return [{
label: 'template.lba.lba002.jcbmc',
prop: 'jcb',
bodyType: 'input',
bodyFillType: 'preFill',
width: 280,
bodyMaxlength:20
},{
label: '',
prop: 'jcbBh',
bodyType: 'jcb',
bodyFillType: 'actFill',
width: 280
}]
}

Loading…
Cancel
Save