|
|
|
|
@ -3,14 +3,16 @@ |
|
|
|
|
<avue-crud :option="option" v-model:search="search" :table-loading="loading" :data="data" v-model="form" v-model:page="page" ref="crud" |
|
|
|
|
@search-change="searchChange" @search-reset="searchReset" |
|
|
|
|
@selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange" |
|
|
|
|
@refresh-change="refreshChange" @on-load="onLoad"> |
|
|
|
|
@refresh-change="refreshChange" @on-load="onLoad" |
|
|
|
|
@sort-change="sortChange" |
|
|
|
|
> |
|
|
|
|
<template #menu-left> |
|
|
|
|
<el-button type="primary" @click="addInfo()">新增 |
|
|
|
|
<el-button type="primary" @click="addInfo()" v-if="permission.tankInfo_add">新增 |
|
|
|
|
</el-button> |
|
|
|
|
<el-button type="danger" @click="handleDelete">删 除 |
|
|
|
|
<el-button type="danger" @click="handleDelete" v-if="permission.tankInfo_delete">删 除 |
|
|
|
|
</el-button> |
|
|
|
|
|
|
|
|
|
<el-button type="primary" @click="handleSetting">批量设置 |
|
|
|
|
<el-button type="primary" @click="handleSetting" v-if="permission.tankInfo_batchSet">批量设置 |
|
|
|
|
</el-button> |
|
|
|
|
</template> |
|
|
|
|
<template #jobType="scope"> |
|
|
|
|
@ -27,15 +29,15 @@ |
|
|
|
|
<span v-if="scope.row.phType == 2">{{scope.row.phRangeLeft}} ~ {{scope.row.phRangeRight}}</span> |
|
|
|
|
</template> |
|
|
|
|
<template #menu-right> |
|
|
|
|
<el-button type="primary" @click="handleImport">导入 |
|
|
|
|
<el-button type="primary" @click="handleImport" v-if="permission.tankInfo_import">导入 |
|
|
|
|
</el-button> |
|
|
|
|
</template> |
|
|
|
|
<template #menu="{ row }"> |
|
|
|
|
<el-button type="text" @click="handleDetail(row)">详情</el-button> |
|
|
|
|
<el-button type="text" @click="handleEdit(row)">修改</el-button> |
|
|
|
|
<el-button type="text" @click="rowDel(row)">删除</el-button> |
|
|
|
|
<el-button type="text" @click="handleDetail(row)" v-if="permission.tankInfo_detail">详情</el-button> |
|
|
|
|
<el-button type="text" @click="handleEdit(row)" v-if="permission.tankInfo_edit">修改</el-button> |
|
|
|
|
<el-button type="text" @click="rowDel(row)" v-if="permission.tankInfo_delete">删除</el-button> |
|
|
|
|
<el-button type="primary" text plain style="border: 0; background-color: transparent !important" |
|
|
|
|
@click.stop="handleIssue(row)">下发</el-button> |
|
|
|
|
@click.stop="handleIssue(row)" v-if="permission.tankInfo_issue">下发</el-button> |
|
|
|
|
</template> |
|
|
|
|
</avue-crud> |
|
|
|
|
|
|
|
|
|
@ -96,6 +98,7 @@ import addEditInfoDialog from './components/addEditInfoDialog.vue' |
|
|
|
|
import basicImport from '@/components/basic-import/main.vue' |
|
|
|
|
// import calculateNeedValuesByFormula fro/m '@/utils/calculateNeedValuesByFormula' |
|
|
|
|
import {getList,getDetail,deleteInfo,getManager,getPerson,getTeam,setBatch,getWorkCenter} from '@/api/tankSolutionSystem/info' |
|
|
|
|
import { mapGetters } from 'vuex'; |
|
|
|
|
export default { |
|
|
|
|
components: { dispatcherDialog, addEditInfoDialog,basicImport }, |
|
|
|
|
data() { |
|
|
|
|
@ -108,6 +111,7 @@ export default { |
|
|
|
|
'1', '2', '3', '4', '5', '6', |
|
|
|
|
'7', '8', '9', '10', '11', '12', , '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '30', '31' |
|
|
|
|
], |
|
|
|
|
query:{}, |
|
|
|
|
isShowImport:false, |
|
|
|
|
excelBox: false, |
|
|
|
|
loading: false, |
|
|
|
|
@ -155,7 +159,7 @@ export default { |
|
|
|
|
index: false, |
|
|
|
|
showOverflowTooltip: true, |
|
|
|
|
searchLabelPosition: 'left', |
|
|
|
|
searchLabelPosition: 'left', |
|
|
|
|
searchLabelWidth: 'auto', |
|
|
|
|
searchGutter: 24, |
|
|
|
|
searchSpan: 6, |
|
|
|
|
menuAlign: 'center', |
|
|
|
|
@ -167,7 +171,7 @@ export default { |
|
|
|
|
label: '作业中心', |
|
|
|
|
prop: 'wcName', |
|
|
|
|
type: 'select', |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 150, |
|
|
|
|
filterable: true, |
|
|
|
|
span: 8, |
|
|
|
|
@ -190,7 +194,7 @@ export default { |
|
|
|
|
prop: 'workTankId', |
|
|
|
|
search: true, |
|
|
|
|
type: 'select', |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
span: 8, |
|
|
|
|
@ -212,7 +216,7 @@ export default { |
|
|
|
|
prop: 'drugName', |
|
|
|
|
search: false, |
|
|
|
|
type: 'select', |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
span: 8, |
|
|
|
|
@ -232,7 +236,7 @@ export default { |
|
|
|
|
prop: 'drugMaterialCode', |
|
|
|
|
search: false, |
|
|
|
|
type: 'select', |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
span: 8, |
|
|
|
|
@ -260,7 +264,7 @@ export default { |
|
|
|
|
prop: 'drugMaterialName', |
|
|
|
|
disabled: true, |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 150, |
|
|
|
|
filter: true, |
|
|
|
|
span: 8, |
|
|
|
|
@ -276,7 +280,7 @@ export default { |
|
|
|
|
label: '分析项目', |
|
|
|
|
prop: 'testElement', |
|
|
|
|
search: true, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
span: 8, |
|
|
|
|
@ -292,7 +296,7 @@ export default { |
|
|
|
|
label: '规范上下限', |
|
|
|
|
prop: 'proContent', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
hide: true, |
|
|
|
|
@ -309,7 +313,7 @@ export default { |
|
|
|
|
label: '规范上限', |
|
|
|
|
prop: 'normValueMax', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
display: false, |
|
|
|
|
@ -327,7 +331,7 @@ export default { |
|
|
|
|
label: '规范下限', |
|
|
|
|
prop: 'normValueMin', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
display: false, |
|
|
|
|
@ -345,7 +349,7 @@ export default { |
|
|
|
|
label: '目标上下限', |
|
|
|
|
prop: 'targetLimit', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
hide: true, |
|
|
|
|
@ -362,7 +366,7 @@ export default { |
|
|
|
|
label: '目标上限', |
|
|
|
|
prop: 'targetValueMax', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
addDisplay: false, |
|
|
|
|
@ -381,7 +385,7 @@ export default { |
|
|
|
|
label: '目标下限', |
|
|
|
|
prop: 'targetValueMin', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
addDisplay: false, |
|
|
|
|
viewDisplay: false, |
|
|
|
|
editDisplay: false, |
|
|
|
|
@ -400,7 +404,7 @@ export default { |
|
|
|
|
label: '目标值', |
|
|
|
|
prop: 'targetValue', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
span: 8, |
|
|
|
|
@ -416,7 +420,7 @@ export default { |
|
|
|
|
label: '体积', |
|
|
|
|
prop: 'volume', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
span: 8, |
|
|
|
|
@ -426,7 +430,7 @@ export default { |
|
|
|
|
label: '测量值单位', |
|
|
|
|
prop: 'testUnit', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
span: 8, |
|
|
|
|
@ -436,7 +440,7 @@ export default { |
|
|
|
|
label: '加药量单位', |
|
|
|
|
prop: 'addUnit', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
span: 8, |
|
|
|
|
@ -446,7 +450,7 @@ export default { |
|
|
|
|
label: '添加点', |
|
|
|
|
prop: 'fillingLocation', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
span: 8, |
|
|
|
|
@ -457,7 +461,7 @@ export default { |
|
|
|
|
prop: 'addDrugFormulaName', |
|
|
|
|
search: false, |
|
|
|
|
type: 'select', |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 160, |
|
|
|
|
filter: true, |
|
|
|
|
span: 8, |
|
|
|
|
@ -492,7 +496,7 @@ export default { |
|
|
|
|
label: '化验频率', |
|
|
|
|
prop: 'jobType', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
addDisplay: false, |
|
|
|
|
viewDisplay: false, |
|
|
|
|
editDisplay: false, |
|
|
|
|
@ -511,7 +515,7 @@ export default { |
|
|
|
|
label: '测试周期(天)', |
|
|
|
|
prop: 'analysisCycle', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
type: 'date', |
|
|
|
|
width: 140, |
|
|
|
|
filter: true, |
|
|
|
|
@ -528,7 +532,7 @@ export default { |
|
|
|
|
label: '有效期', |
|
|
|
|
prop: 'validDate', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
type: 'date', |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
@ -546,7 +550,7 @@ export default { |
|
|
|
|
label: '上次化验日期', |
|
|
|
|
prop: 'lastTest', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
addDisplay: false, |
|
|
|
|
viewDisplay: false, |
|
|
|
|
editDisplay: false, |
|
|
|
|
@ -566,7 +570,7 @@ export default { |
|
|
|
|
prop: 'testUserRealName', |
|
|
|
|
type: 'select', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
span: 8, |
|
|
|
|
@ -583,7 +587,7 @@ export default { |
|
|
|
|
prop: 'processUserRealName', |
|
|
|
|
type: 'select', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
span: 8, |
|
|
|
|
@ -600,7 +604,7 @@ export default { |
|
|
|
|
prop: 'tsName', |
|
|
|
|
type: 'select', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
span: 8, |
|
|
|
|
@ -616,7 +620,7 @@ export default { |
|
|
|
|
label: '更新时间', |
|
|
|
|
prop: 'updateTime', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
width: 160, |
|
|
|
|
addDisplay: false, |
|
|
|
|
viewDisplay: false, |
|
|
|
|
@ -635,7 +639,7 @@ export default { |
|
|
|
|
label: '分析周期', |
|
|
|
|
prop: 'assayCycle1', |
|
|
|
|
search: false, |
|
|
|
|
sortable: true, |
|
|
|
|
sortable: "custom", |
|
|
|
|
hide: true, |
|
|
|
|
width: 120, |
|
|
|
|
filter: true, |
|
|
|
|
@ -706,7 +710,21 @@ export default { |
|
|
|
|
this.getPersonList() |
|
|
|
|
this.getWorkCenterList() |
|
|
|
|
}, |
|
|
|
|
computed: { |
|
|
|
|
...mapGetters(['permission']), |
|
|
|
|
}, |
|
|
|
|
methods: { |
|
|
|
|
// 字段排序 |
|
|
|
|
sortChange({ prop, order }){ |
|
|
|
|
this.query.descs = undefined; |
|
|
|
|
this.query.ascs = undefined; |
|
|
|
|
const orderByField = prop.replace(/([a-z])([A-Z0-9])/g, '$1_$2').toUpperCase() |
|
|
|
|
const orderByFieldKey = order === 'descending' ? 'descs' : 'ascs'; |
|
|
|
|
this.query[orderByFieldKey] = !prop |
|
|
|
|
? undefined |
|
|
|
|
: orderByField; |
|
|
|
|
this.onLoad(this.page, this.query); |
|
|
|
|
}, |
|
|
|
|
// 主管工艺下拉 |
|
|
|
|
getManagerList(){ |
|
|
|
|
getManager().then(res =>{ |
|
|
|
|
@ -853,6 +871,7 @@ export default { |
|
|
|
|
getList({ |
|
|
|
|
current:this.page.currentPage, |
|
|
|
|
size:this.page.pageSize, |
|
|
|
|
...this.query, |
|
|
|
|
workCenterId:this.search.wcName ? this.search.wcName : '', |
|
|
|
|
workTankId:this.search.workTankId ? this.search.workTankId : '', |
|
|
|
|
testElement:this.search.testElement ? this.search.testElement : '' |
|
|
|
|
|