Browse Source

feat:[模板管理][DL007页面结构初步搭建]

lkf
ouqian 1 month ago
parent
commit
e791020636
10 changed files with 481 additions and 0 deletions
  1. +28
    -0
      src/views/business/comps/template/TemplateTable.vue
  2. +325
    -0
      src/views/business/comps/template/comps/dl/DL007.vue
  3. +16
    -0
      src/views/business/comps/template/comps/dl/DL008.vue
  4. +16
    -0
      src/views/business/comps/template/comps/dl/DL009.vue
  5. +16
    -0
      src/views/business/comps/template/comps/dl/DL010.vue
  6. +16
    -0
      src/views/business/comps/template/comps/dl/DL011.vue
  7. +16
    -0
      src/views/business/comps/template/comps/dl/DL012.vue
  8. +16
    -0
      src/views/business/comps/template/comps/dl/DL013.vue
  9. +16
    -0
      src/views/business/comps/template/comps/dl/DL014.vue
  10. +16
    -0
      src/views/business/comps/template/comps/dl/DL015.vue

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

@ -77,6 +77,15 @@ import YP005 from "./comps/yp/YP005.vue";
// //
// DL001-SYWZPZJHB // DL001-SYWZPZJHB
// DL002-使SP001 // DL002-使SP001
import DL007 from './comps/dl/DL007.vue'
import DL008 from './comps/dl/DL008.vue'
import DL009 from './comps/dl/DL009.vue'
import DL010 from './comps/dl/DL010.vue'
import DL011 from './comps/dl/DL011.vue'
import DL012 from './comps/dl/DL012.vue'
import DL013 from './comps/dl/DL013.vue'
import DL014 from './comps/dl/DL014.vue'
import DL015 from './comps/dl/DL015.vue'
export default { export default {
name: "TemplateTable", name: "TemplateTable",
@ -103,6 +112,16 @@ export default {
YP003, YP003,
YP004, YP004,
YP005, YP005,
//
DL007,
DL008,
DL009,
DL010,
DL011,
DL012,
DL013,
DL014,
DL015
}, },
props: { props: {
sn: { sn: {
@ -194,6 +213,15 @@ export default {
// //
//DL001-SYWZPZJHB //DL001-SYWZPZJHB
'DL002': 'SP001', 'DL002': 'SP001',
'DL007': 'DL007',
'DL008': 'DL008',
'DL009': 'DL009',
'DL010': 'DL010',
'DL011': 'DL011',
'DL012': 'DL012',
'DL013': 'DL013',
'DL014': 'DL014',
'DL015': 'DL015',
} }
} }
return this.componentMap || "Demo" return this.componentMap || "Demo"

+ 325
- 0
src/views/business/comps/template/comps/dl/DL007.vue View File

@ -0,0 +1,325 @@
<!-- Ames实验掺入法平皿培养记录表 -->
<template>
<div>
<div class="detail-container">
<div class="detail-title">
<img src="@/assets/images/detail-title.png" />{{ formData.bdmc
}}<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"
/>
<LineLabel label="仪器使用信息" />
<CustomTable
:columns="yqsyColumns"
ref="yqsyTableRef"
@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>
<BaseInfoFormPackage
fieldItemLabel="操作信息"
label="操作信息"
ref="czInfoRef"
:formConfig="czInfoFormConfig"
:formData="formData"
@clickButton="handleClickButton"
/>
<BaseInfoFormPackage
fieldItemLabel="template.yp.yp002.jsbz"
label="template.yp.yp002.jsbz"
ref="remarkRef"
:formConfig="remarkConig"
:formData="formData"
/>
</div>
</div>
</div>
</div>
</template>
<script>
import BaseInfoFormPackage from '@/components/Template/BaseInfoFormPackage'
import TableOpertaionDelete from '@/components/Template/operation/TableOpertaionDelete.vue'
import CustomTable from '@/components/Template/CustomTable.vue'
import LineLabel from '@/components/Template/LineLabel'
import TableList from '@/components/Template/Table'
import Step from '@/components/Template/Step'
import templateMixin from '../../mixins/templateMixin'
import moment from 'moment'
export default {
name: 'DL007',
components: {
BaseInfoFormPackage,
LineLabel,
TableList,
Step,
CustomTable,
TableOpertaionDelete
},
mixins: [templateMixin],
props: {
fillType: {
type: String,
default: 'preFill'
}
},
computed: {
//
remarkConig() {
return [
{
type: 'cellItem',
config: {
remark: {
label: '',
type: 'textarea',
fillType: 'actFill',
span: 1,
placeholder: 'template.common.remarkPlaceholder',
maxlength: 1000,
rows: 5
}
}
}
]
},
//
baseInfoFormConfig() {
return [
{
type: 'cardItem',
config: {
studyMc: {
label: 'template.common.testName',
type: 'input',
disabled: true
},
studySn: {
label: 'template.common.testNumber',
type: 'input',
disabled: true
}
}
},
{
type: 'conditionItem',
label: '试验地点',
config: {
sydd: {
span: 1,
label: '试验地点',
type: 'select',
options: this.getDictOptions('business_cctj'),
fillType: 'actFill',
otherCode: 'syddOther'
}
}
},
{
type: 'cellItem',
label: '操作时间',
config: {
kssj: {
label: '开始时间',
type: 'input',
disabled: true
},
jssj: {
label: '结束时间',
type: 'input',
disabled: true
}
}
}
]
},
// 使
yqsyColumns() {
return [
{
label: '仪器编号',
prop: 'yqbh',
bodyType: 'yq',
bodyFillType: 'actFill'
},
{
label: '仪器名称',
prop: 'yqmc',
bodyType: 'input',
bodyDisabled: true,
bodyFillType: 'actFill',
disabled: true
},
{
label: '仪器型号',
prop: 'yqxh',
bodyType: 'input',
bodyDisabled: true,
bodyFillType: 'actFill',
disabled: true
},
{
label: '下次测试/检准/检定日期',
prop: 'jzrq',
bodyType: 'input',
bodyDisabled: true,
bodyFillType: 'actFill',
disabled: true
}
]
},
//
czInfoFormConfig() {
return [
{
type: 'cellItem',
config: {
qxbd: {
label: 'template.yp.yp002.qxbd',
type: 'qxbd',
fillType: 'actFill',
filledCodes: ['bdmc', 'bdbh']
},
pykssj: {
label: '培养开始时间',
type: 'input',
disabled: true
},
pyjssj: {
type: 'input',
fillType: 'actFill',
maxlength: 200,
subType: 'button',
subKey: 'pyjssjButton',
buttonName: '获取时间'
}
}
}
]
}
},
data() {
return {
formData: {}
}
},
mounted() {},
methods: {
//
deleteTableRow(rowIndex, refName) {
this.$refs[refName].deleteRow(rowIndex)
},
//
handleClickButton(item, signData) {
this.$refs.czInfoRef.updateFormData(
'pyjssj',
moment().format('YYYY/MM/DD HH:mm'),
{ isUpdateRecord: true, signData }
)
},
//
getFilledFormData() {
const baseData = this.$refs.baseInfoRef.getFilledFormData()
const swypyjData = this.$refs.swypyjInfoRef.getFilledFormData()
const ypjsData = this.$refs.ypjsInfoRef.getFilledFormData()
const remarkData = this.$refs.remarkRef.getFilledFormData()
return {
...baseData,
...swypyjData,
...ypjsData,
...remarkData
}
},
//
async getFormData() {
//
const validFlag = await this.validFields()
if (!validFlag) {
return false
}
let content = this.getFilledFormData()
return content
},
//
async validFields() {
//
let refsToValidate = [
'baseInfoRef',
'yqsyTableRef',
'czInfoRef',
'remarkRef'
]
return await this.validFormFields(refsToValidate)
},
getResource() {
let content = this.getFilledFormData()
//使
this.resourceTmp = []
this.yqResourceTmp = []
return this.resourceTmp
},
onRegentSubmit(e) {
const { selectInfo, key, col, rowIndex, colIndex, rowData } = e
const { row } = selectInfo
if (key === 'yqbh') {
const params = {
yqmc: row.mc,
yqxh: row.xh,
jzrq: row.jzrq
}
this.$refs.yqsyTableRef.updateDataSourceByRowIndex(rowIndex, params)
}
},
// beforeReagentSubmit(val,val1,val2){
// debugger
// },
//
async onSave() {
const formData = this.getStepResource()
console.log(formData, 'formData')
}
}
}
</script>
<style rel="stylesheet/scss" lang="scss">
.mt-20 {
margin-top: 20px;
}
.print-btn {
margin-bottom: 20px;
}
.config-header-end {
display: flex;
justify-content: flex-end;
align-items: center;
margin-bottom: 15px;
font-weight: bold;
font-size: 16px;
color: #303133;
}
</style>

+ 16
- 0
src/views/business/comps/template/comps/dl/DL008.vue View File

@ -0,0 +1,16 @@
<!-- Ames试验平皿成像确认记录表 -->
<template>
<div></div>
</template>
<script>
export default {
name: 'DL008',
data() {
return {}
},
mounted() {},
methods: {}
}
</script>
<style rel="stylesheet/scss" lang="scss"></style>

+ 16
- 0
src/views/business/comps/template/comps/dl/DL009.vue View File

@ -0,0 +1,16 @@
<!-- Ames试验掺入法观察结果记录表 -->
<template>
<div></div>
</template>
<script>
export default {
name: 'DL009',
data() {
return {}
},
mounted() {},
methods: {}
}
</script>
<style rel="stylesheet/scss" lang="scss"></style>

+ 16
- 0
src/views/business/comps/template/comps/dl/DL010.vue View File

@ -0,0 +1,16 @@
<!-- 骨髓收集记录表 -->
<template>
<div></div>
</template>
<script>
export default {
name: 'DL010',
data() {
return {}
},
mounted() {},
methods: {}
}
</script>
<style rel="stylesheet/scss" lang="scss"></style>

+ 16
- 0
src/views/business/comps/template/comps/dl/DL011.vue View File

@ -0,0 +1,16 @@
<!-- 细胞复苏记录表 -->
<template>
<div></div>
</template>
<script>
export default {
name: 'DL011',
data() {
return {}
},
mounted() {},
methods: {}
}
</script>
<style rel="stylesheet/scss" lang="scss"></style>

+ 16
- 0
src/views/business/comps/template/comps/dl/DL012.vue View File

@ -0,0 +1,16 @@
<!-- 细胞制备记录表 -->
<template>
<div></div>
</template>
<script>
export default {
name: 'DL012',
data() {
return {}
},
mounted() {},
methods: {}
}
</script>
<style rel="stylesheet/scss" lang="scss"></style>

+ 16
- 0
src/views/business/comps/template/comps/dl/DL013.vue View File

@ -0,0 +1,16 @@
<!-- 细胞密度测定记录表 -->
<template>
<div></div>
</template>
<script>
export default {
name: 'DL013',
data() {
return {}
},
mounted() {},
methods: {}
}
</script>
<style rel="stylesheet/scss" lang="scss"></style>

+ 16
- 0
src/views/business/comps/template/comps/dl/DL014.vue View File

@ -0,0 +1,16 @@
<!-- 细胞给药/观察记录表 -->
<template>
<div></div>
</template>
<script>
export default {
name: 'DL014',
data() {
return {}
},
mounted() {},
methods: {}
}
</script>
<style rel="stylesheet/scss" lang="scss"></style>

+ 16
- 0
src/views/business/comps/template/comps/dl/DL015.vue View File

@ -0,0 +1,16 @@
<!-- 细胞换液/观察记录表 -->
<template>
<div></div>
</template>
<script>
export default {
name: 'DL015',
data() {
return {}
},
mounted() {},
methods: {}
}
</script>
<style rel="stylesheet/scss" lang="scss"></style>

Loading…
Cancel
Save