中航光电热表web
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

1183 lines
48 KiB

<template>
<basic-container>
<avue-crud :option="option" v-model:search="search" :table-loading="loading" :data="data" v-model:page="page" v-model="form" ref="crud"
@row-update="rowUpdate" @row-save="rowSave" @row-del="rowDel" @search-change="searchChange"
@search-reset="searchReset" @selection-change="selectionChange" @current-change="currentChange"
@size-change="sizeChange" @refresh-change="refreshChange" @on-load="onLoad"
@sort-change="sortChange"
>
<template #menu-left>
<el-button type="primary" @click="batchSet()" v-if="permission.tankSolutionTaskDispose_batchFill">批量填报</el-button>
<el-button type="primary" @click="checkFn()" v-if="permission.tankSolutionTaskDispose_check">审核</el-button>
<el-button type="primary" @click="getMedicineFn()" v-if="permission.tankSolutionTaskDispose_medicine">领药</el-button>
</template>
<template #menu="scope">
<el-button type="text" @click="handleView(scope.row, 'view')" v-if="permission.tankSolutionTaskDispose_detail">详情</el-button>
<el-button type="text" @click="catchInfoFn(scope.row, 'add')"
v-show="(scope.row.status == 2 || scope.row.status == 4) && permission.tankSolutionTaskDispose_error">
异常
</el-button>
<!-- <el-button type="text" @click="handleView(scope.row, 'add')"
v-show="scope.row.status == 1 || scope.row.status == 4">
填报
</el-button> -->
<!-- <el-button type="text" v-show="scope.row.status == 3"
@click="handleView(scope.row, 'drug')">领药</el-button> -->
<!-- <el-button type="text" v-show="scope.row.status == 2"
@click="checkFn(scope.row, 'check')">审核</el-button> -->
<el-button type="text" v-show="scope.row.status == 1 && permission.tankSolutionTaskDispose_receive"
@click="receiveFn(scope.row, 'receive')">接收</el-button>
<!-- 组长可以转派 -->
<el-button type="text" v-show="scope.row.status == 1 && permission.tankSolutionTaskDispose_redeploy"
@click="batchTestFn(scope.row, 'receive')">转派</el-button>
<el-button type="text" v-show="scope.row.status == 6 && permission.tankSolutionTaskDispose_withdraw"
@click="revocationReview(scope.row, 'receive')">撤回</el-button>
<el-button type="text" v-show="(scope.row.status == 11 || scope.row.status == 10) && permission.tankSolutionTaskDispose_withdraw"
@click="deleteReview(scope.row, 'receive')">删除</el-button>
</template>
<template #normValueLimit="{row}">
{{row.normValueMin}} ~ {{row.normValueMax}}
</template>
<template #targetValueLimit="{row}">
{{row.targetValueMin}} ~ {{row.targetValueMax}}
</template>
<template #qualified="scope">
{{scope.row.qualified == 1 ? '合格' : scope.row.qualified == 2 ? '不合格' : ''}}
</template>
<!-- 测量值 -->
<template #firstTestValue="scope">
{{scope.row.firstTestValue}}{{scope.row.firstTestValue != '' ? scope.row.liquidTank ? scope.row.liquidTank.testUnit : '' : ''}}
</template>
<!-- 需添加量 -->
<template #needAddValue="scope">
{{scope.row.needAddValue}}{{scope.row.needAddValue != '' ? scope.row.liquidTank ? scope.row.liquidTank.addUnit : '' : ''}}
</template>
<!-- 实际添加量 -->
<template #actualAddValue="scope">
{{scope.row.actualAddValue}}{{scope.row.actualAddValue != '' ? scope.row.liquidTank ? scope.row.liquidTank.addUnit : '' : ''}}
</template>
<!-- 复测测量值 -->
<template #repeatTestValue="scope">
{{scope.row.repeatTestValue}}{{scope.row.repeatTestValue != '' ? scope.row.liquidTank ? scope.row.liquidTank.testUnit : '' : ''}}
</template>
<!-- <template #userId="{ row }">
{{ row.testMan.userName }}
</template>
<template #taskMethod="{ row }">
{{ row.taskMethodName }}
</template> -->
</avue-crud>
<!-- 填报 -->
<dispose-dialog v-if="showDialog" :dialog-type="dialogType" :show-dialog="showDialog" :row-id="rowId"
:row-obj="rowObj" @closeDialog="closeDialog"></dispose-dialog>
<!-- 批量填报 -->
<batchDialog v-if="batchDialog" @closeDialog="closeDialog" :show-dialog="batchDialog" :list="batchList"></batchDialog>
<!-- 转派 -->
<dispatchTestDialog v-if="batchTestDialog" :row-id="rowId" @closeDialog="closeDialog" :show-dialog="batchTestDialog"></dispatchTestDialog>
<!-- 审核 -->
<checkDialog :list="selectionList" v-if="checkResultOpen" @closeDialog="closeDialog" :show-dialog="checkResultOpen"></checkDialog>
<!-- 领药 -->
<getMedicineDialog v-if="getMedicineOpen" @closeDialog="closeDialog" :show-dialog="getMedicineOpen" :list="selectionList"></getMedicineDialog>
<!-- 异常 -->
<catchInfoDialog v-if="catchInfoOpen" :row-id="rowId" @closeDialog="closeDialog" :show-dialog="catchInfoOpen"></catchInfoDialog>
</basic-container>
</template>
<script>
import disposeDialog from './components/disposeDialog.vue';
import batchDialog from './components/batchDialog.vue';
import dispatchTestDialog from './components/dispatchTestDialog.vue'
import checkDialog from './components/checkDialog.vue'
import getMedicineDialog from './components/getMedicineDialog.vue'
import catchInfoDialog from './components/catchInfoDialog.vue'
import {getDealList,receiveTask,revokeDrug,deleteTask} from '@/api/tankSolutionSystem/tankSolutionTaskAssignment'
import { mapGetters } from 'vuex';
export default {
components: {
disposeDialog,
batchDialog,
dispatchTestDialog,
checkDialog,
getMedicineDialog,
catchInfoDialog
},
data() {
return {
data: [],
page: {
pageSize: 10,
currentPage: 1,
total: 0,
},
search:{},
taskId: null, // 存储从 state 传递的 id
showDialog: false,
rowId: '',
rowObj: {},
issueDialog: false,
form: {},
formRules: {
userId: [{ required: true, message: '请选择检测员', trigger: 'blur' }],
},
query: {
descs:"CREATE_TIME"
},
loading: true,
issueForm: {},
option: {
tip: false,
height: 'auto',
calcHeight: 32,
// simplePage: true,
searchShow: true,
searchMenuSpan: 6,
searchIcon: true,
searchIndex: 3,
columnSort: true,
tree: false,
border: true,
index: false,
selection: true,
viewBtn: false,
delBtn: false,
addBtn: false,
editBtn: false,
editBtnText: '修改',
viewBtnText: '详情',
addBtnIcon: ' ',
viewBtnIcon: ' ',
delBtnIcon: ' ',
editBtnIcon: ' ',
labelWidth: 120,
menuWidth: 160,
dialogWidth: 600,
dialogClickModal: false,
searchEnter: true,
filterBtn: false,
searchShowBtn: false,
excelBtn: true,
showOverflowTooltip: true,
align: 'center',
searchLabelPosition: 'left',
searchLabelPosition: 'left',
searchGutter: 24,
searchSpan: 6,
menuAlign: 'left',
gridBtn: false,
searchMenuPosition: 'right',
column: [
{
label: '任务编号',
prop: 'code',
search: false,
sortable: 'custom',
filter: true,
addDisplay: false,
editDisplay: false,
viewDisplay: false,
span: 24,
width: 140,
},
{
label: '作业中心',
prop: 'workCenterId',
sortable: 'custom',
filter: true,
span: 24,
search: true,
width: 140,
type: 'select',
// dicUrl: '/blade-desk/bsWorkCenter/getList',
dicUrl:'/blade-desk/BA/WorkCenter/listForSelect',
props: {
label: 'wcName',
value: 'id',
},
},
{
label: '槽号',
prop: 'workTankName',
search: false,
sortable: 'custom',
filter: true,
// hide: true,
span: 24,
width: 140,
},
{
label: '分析项目',
prop: 'testElement',
type: 'textarea',
search: false,
sortable: 'custom',
filter: true,
span: 24,
width: 140,
},
{
label: '药品名称',
prop: 'drugName',
search: false,
sortable: 'custom',
filter: true,
span: 24,
width: 140,
},
{
label: '药品物料号',
prop: 'drugMaterialCode',
search: false,
sortable: 'custom',
filter: true,
span: 24,
width: 140,
},
{
label: '药品物料名称',
prop: 'drugMaterialName',
search: false,
sortable: 'custom',
filter: true,
span: 24,
width: 140,
},
{
label: '规范上下限',
prop: 'normValueLimit',
search: false,
// sortable: true,
filter: true,
span: 24,
width: 140,
},
{
label: '目标上下限',
prop: 'targetValueLimit',
search: false,
// sortable: true,
filter: true,
span: 24,
width: 140,
},
{
label: '目标值',
prop: 'targetValue',
search: false,
sortable: true,
filter: true,
span: 24,
width: 140,
},
{
label: '添加点',
prop: 'fillingLocation',
search: false,
sortable: true,
filter: true,
span: 24,
width: 140,
},
{
label: '测量值',
prop: 'firstTestValue',
search: false,
sortable: true,
filter: true,
span: 24,
width: 140,
},
{
label: '是否合格',
prop: 'qualified',
search: false,
// sortable: 'custom',
filter: true,
span: 24,
width: 140,
},
{
label: '电导率测量值',
prop: 'conductivityFirstTestValue',
search: false,
sortable: 'custom',
filter: true,
span: 24,
width: 140,
},
{
label: '实测温度',
prop: 'temperatureActual',
search: false,
sortable: 'custom',
filter: true,
span: 24,
width: 140,
},
{
label: '实测PH值',
prop: 'phActual',
search: false,
sortable: 'custom',
filter: true,
span: 24,
width: 140,
},
{
label: '体积',
prop: 'volume',
search: false,
sortable: 'custom',
filter: true,
span: 24,
width: 140,
},
{
label: '需添加量',
prop: 'needAddValue',
search: false,
sortable: 'custom',
filter: true,
span: 24,
width: 220,
},
{
label: '实际添加量',
prop: 'actualAddValue',
search: false,
sortable: 'custom',
filter: true,
span: 24,
width: 220,
},
{
label: '加药后理论值',
prop: 'afterAddTheoryValue',
search: false,
sortable: 'custom',
filter: true,
span: 24,
width: 180,
},
{
label: '复测测量值',
prop: 'repeatTestValue',
search: false,
sortable: 'custom',
filter: true,
span: 24,
width: 220,
},
// {
// label: '复测电导率测量值',
// prop: 'conductivityRepeatTestValue',
// search: false,
// sortable: 'custom',
// filter: true,
// span: 24,
// width: 220,
// },
{
label: '上次化验时间',
prop: 'firstTestDate',
type:'date',
search: false,
sortable: 'custom',
filter: true,
span: 24,
width: 160,
format:"YYYY-MM-DD",
valueFormat:"YYYY-MM-DD",
},
{
label: '槽液到期时间',
prop: 'expiryDate',
search: false,
sortable: 'custom',
filter: true,
span: 24,
width: 160,
},
// {
// label: '槽液到期时间',
// prop: 'userId',
// search: false,
// sortable: true,
// filter: true,
// span: 24,
// width: 140,
// },
{
label: '化验人',
prop: 'testUserRealName',
search: false,
sortable: 'custom',
filter: true,
span: 24,
width: 140,
},
{
label: '主管工艺',
prop: 'processUserRealName',
search: false,
sortable: 'custom',
filter: true,
span: 24,
width: 140,
},
{
label: '状态',
prop: 'statusValue',
search: true,
sortable: 'custom',
filter: true,
span: 24,
width: 140,
type: 'select',
searchLabelWidth: 60,
dicUrl:'/api/blade-system/dict/dictionary?code= LiquidTankTask-Status',
props:{
label: 'dictValue',
value: 'dictKey',
}
// dicData: [
// {
// label: '待接收',
// value: '1'
// },
// {
// label: '待检测',
// value: '2'
// },
// {
// label: '待加药',
// value: '2'
// },
// {
// label: '待复测',
// value: '2'
// },
// {
// label: '已完成',
// value: '2'
// }
// ]
},
{
label: '对应班组',
prop: 'tsName',
search: false,
sortable: 'custom',
editDisplay: false,
filter: true,
addDisplay: false,
span: 24,
width: 140,
},
{
label: '任务下发时间',
prop: 'createTime',
type:'date',
search: true,
searchRange: true,
sortable: 'custom',
editDisplay: false,
filter: true,
addDisplay: false,
span: 24,
width: 160,
searchLabelWidth:110,
format:"YYYY-MM-DD",
valueFormat:"YYYY-MM-DD",
},
{
label: '任务完成时间',
prop: 'finishDate',
search: false,
sortable: 'custom',
editDisplay: false,
filter: true,
addDisplay: false,
span: 24,
width: 160,
},
]
},
selectionList: [],
batchList:[],
dialogType: '',
batchDialog: false,
batchTestDialog:false,
checkResultOpen:false,
getMedicineOpen:false,
catchInfoOpen:false,//异常
}
},
computed: {
...mapGetters(['permission']),
},
created() {
// 获取通过 state 传递的 id
const id = history.state?.id;
if (id) {
console.log('传递的 id:', id);
this.taskId = id;
// 使用 id 查询列表
this.onLoad(this.page, { ...this.search, id });
} else {
// 如果没有 id,加载全部数据
this.onLoad(this.page, this.search);
}
},
mounted() {
},
methods: {
// 字段排序
sortChange({ prop, order }){
console.log('perop---------',prop)
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 == 'NORM_VALUE_LIMIT' || orderByField == 'TARGET_VALUE_LIMIT' ? undefined : orderByField;
console.log('query---------',this.query)
this.onLoad(this.page, this.query);
},
// 异常
catchInfoFn(row){
this.rowId = row.id
this.catchInfoOpen = true
},
// 领药
getMedicineFn(){
if(this.selectionList.length == 0){
this.$message.error('请至少选择一条数据')
return
}
let tmp = this.selectionList.find(item => item.status != 6)
if(tmp){
this.$message.error("请选择状态为【待领药】的数据")
return
}
this.getMedicineOpen = true
},
checkFn(){
if(this.selectionList.length == 0){
this.$message.error('请至少选择一条数据')
return
}
let tmp = this.selectionList.find(item => item.status != 5)
if(tmp){
this.$message.error("请选择状态为加药量待审核的数据")
return
}
this.checkResultOpen = true
},
// 转派
batchTestFn(row){
this.rowId = row.id
this.batchTestDialog = true
},
allStatusEqual(list) {
if (list.length === 0) return true; // 空数组视为“相同”
const firstStatus = list[0].status;
return list.every(item => item.status === firstStatus);
},
batchSet() {
if(this.selectionList.length == 0){
this.$message.error('至少选择一条数据')
return
}
// 获取所有选中项的状态集合
const statusSet = new Set(this.selectionList.map(item => item.status));
// 定义允许的业务状态
const allowedStatuses = [2, 12, 8, 4];
// 1. 检查是否存在非允许的状态
const hasInvalidStatus = Array.from(statusSet).some(status => !allowedStatuses.includes(status));
if (hasInvalidStatus) {
this.$message.error('请选择状态均为【暂存】/【待填报】/【待复检】/【加药量待修改】的数据');
return;
}
// 2. 检查状态互斥逻辑
// 情况A: 包含状态 8
if (statusSet.has(8)) {
// 如果包含8,则集合中只能有8 (不能混入2, 12, 4)
if (statusSet.size > 1 || !statusSet.has(8)) { // size>1 意味着混入了其他状态
this.$message.error('请选择状态均为【待复检】的数据');
return;
}
}
// 情况B: 包含状态 4
else if (statusSet.has(4)) {
// 如果包含4,则集合中只能有4 (不能混入2, 12, 8)
if (statusSet.size > 1) {
this.$message.error('请选择状态均为【加药量待修改】的数据');
return;
}
}
// 情况C: 包含状态 2 或 12
else if (statusSet.has(2) || statusSet.has(12)) {
// 如果包含2或12,则集合中不能有 8 或 4 (前面已经排除了8和4的独占情况,这里主要防止逻辑漏网,其实上面两个if已经覆盖了大部分互斥)
// 更严谨的写法:如果既有(2或12) 又有 (8或4),上面已经拦截。
// 这里只需要确保没有混入其他非法状态即可,由于第一步已经校验了非法状态,
// 且第二步拦截了8和4的混选,剩下的自然就是纯(2,12)组合,或者纯8,或者纯4。
// 额外检查:确保没有混入 8 或 4 (虽然上面的 if-else 结构已经隐含了这个逻辑,但为了清晰可以显式判断)
if (statusSet.has(8) || statusSet.has(4)) {
this.$message.error('请选择状态为【暂存】或【待填报】的数据');
return;
}
}
// let tmp = this.selectionList.find(item => (item.status != 2 && item.status != 12) && item.status != 8 && item.status != 4)
// console.log('tmp-------------',tmp)
// if(tmp){
// this.$message.error('请选择状态均为【待填报】/【待复检】/【加药量待修改】的数据')
// return
// }
// let tmp1 = this.allStatusEqual(this.selectionList)
// console.log('tmp1-------------',tmp1)
// if(!tmp1){
// this.$message.error('请选择状态均为【待填报】/【待复检】/【加药量待修改】的数据')
// return
// }
this.batchList = this.selectionList
console.log('this.batchList',this.batchList)
this.batchDialog = true
},
// 查看详情
handleView(row, type) {
this.dialogType = type
this.rowId = row.id
this.rowObj = row
this.showDialog = true
},
// 关闭弹窗
closeDialog(val) {
this.batchDialog = false
this.showDialog = false
this.batchTestDialog = false
this.checkResultOpen = false
this.getMedicineOpen = false
this.catchInfoOpen = false
if(val){
this.onLoad(this.page, { ...this.search, id: this.taskId })
}
},
// 多选
selectionChange(list) {
console.log('list--------------',list)
this.selectionList = list;
},
selectionClear() {
this.selectionList = [];
this.$refs.crud.toggleSelection();
},
rowUpdate(row, index, done, loading) {
},
rowSave(row, done, loading) {
},
// 批量下发
handleIssue() {
if (this.selectionList.length == 0) {
this.$message.error('请至少选择一条数据')
} else {
this.issueDialog = true
}
},
// 单个下发
issueRow(row) {
this.issueDialog = true
},
searchReset() {
this.query = {
descs:"CREATE_TIME"
};
this.onLoad(this.page);
},
searchChange(params, done) {
this.query = params;
this.page.currentPage = 1;
this.onLoad(this.page, params);
done();
},
receiveFn(row, index, done) {
this.$confirm('确定接收任务吗?', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
}).then(() => {
receiveTask({id:row.id}).then(res =>{
if(res.data.code == 200){
this.$message.success('接收成功')
this.onLoad(this.page, { ...this.search, id: this.taskId })
}
})
})
},
revocationReview(row) {
// this.$confirm('确认是否撤销审核通过的数据?', {
// confirmButtonText: '确定',
// cancelButtonText: '取消',
// type: 'warning',
// }).then(() => {
// })
this.$prompt('请输入原因', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
inputValidator: (value) => {//校验
if (!value) {
return '输入内容不能为空!'
}
}
}).then(({ value }) => {
revokeDrug({
revokeReason:value,
id:row.id
}).then(res =>{
if(res.data.code == 200){
this.$message({
type: 'success',
message: '撤回成功'
});
this.onLoad(this.page, { ...this.search, id: this.taskId ,})
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '取消输入'
});
});
},
deleteReview(row){
this.$confirm('确认是否删除该条数据?', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
}).then(() => {
deleteTask({
ids:row.id
}).then(res =>{
if(res.data.code == 200){
this.$message.success('删除成功')
this.onLoad(this.page, { ...this.search, id: this.taskId ,})
}
})
})
},
reportFn() {
this.$confirm('是否下载检验报告?', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
}).then(() => {
})
},
rowDel(row, index, done) {
this.$confirm('确定将选择数据删除?', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
}).then(() => {
})
},
// 下发
submit() {
this.$refs.issueForm.validate(valid => {
if (valid) {
this.issueDialog = false
}
})
},
currentChange(currentPage) {
this.page.currentPage = currentPage;
},
sizeChange(pageSize) {
this.page.pageSize = pageSize;
},
refreshChange() {
this.onLoad(this.page, this.query);
},
onLoad(page, params) {
console.log('sear-------------', this.search)
this.loading = true
let searchParams = {
current: page?.currentPage || this.page.currentPage,
size: page?.pageSize || this.page.pageSize,
...this.query,
status: params?.statusValue || this.search.statusValue,
workCenterId: params?.workCenterId || this.search.workCenterId,
id: params?.id || this.taskId, // 添加 id 参数
createTimeStart:this.query && this.query.createTime && this.query.createTime.length > 0 ? this.query.createTime[0].length == 10 ? this.query.createTime[0] + ' 00:00:00' : this.query.createTime[0] : '',
createTimeEnd:this.query && this.query.createTime && this.query.createTime.length > 0 ? this.query.createTime[1].length == 10 ? this.query.createTime[1] + ' 23:59:59' : this.query.createTime[1] : '',
}
if(searchParams.createTime) delete searchParams.createTime
getDealList(searchParams).then(res =>{
// res.data.data.records.map(item =>{
// item.liquidTank = null
// })
this.data = res.data.data.records
this.data.map(item =>{
if(item.status == 2 || item.status == 1){
item.firstTestValue = ''
item.conductivityFirstTestValue = ''
item.temperatureActual = ''
item.phActual = ''
item.needAddValue = ''
item.actualAddValue = ''
item.afterAddTheoryValue = ''
item.repeatTestValue = ''
// item.conductivityRepeatTestValue = ''
}
})
this.page.total = res.data.data.total
this.loading = false
})
// this.data = [
// {
// id: '6',
// taskCode: 'CYSYXXXXXXXXX',
// slotNo: '#25', wcName: '化学镀镍作业中心', testEle: '氰化钠',
// proContent: 32,
// targetValue: 40,
// targetLowerLimit: 4,
// drugMatterCode: 'XXXX',
// drugName: 'XXXX',
// addPoints: 45,
// drugMatterName: "XXXX",
// targetUpperLimit: 45,
// testMan: {
// userId: '',
// userName: '张三',
// testEle: '张三'
// }, taskMethod: 1, taskMethodName: '需求生成',
// status: 0,
// statusName: '待接收',
// taskTime: '2025-01-22 12:23:35',
// testTime: '2025-01-22',
// needAdd: 444,
// actualAdd: 444,
// initialInspectionTime: '2025-01-23 11:12:23',
// finishTime: '',
// finishReason: '',
// meterNum: 32,
// condNum: 181,
// auditResult: 1,
// auditResultName: '审核通过',
// auditOpinion: '审核通过',
// auditUser: '张三',
// auditTime: '2025-01-25 15:33:26',
// drugBatch: '1002',
// drugRecipient: '',
// drugRecipientName: '张三',
// drugTime: '2025-01-25 11:23:56',
// meterNumTwo: 32,
// condNumTwo: 32,
// recheckUser: '李四',
// recheckTime: '2025-01-26 11:23:23',
// recheckSubmit: '2025-01-26 11:23:23'
// },
// {
// id: '1',
// taskCode: 'CYSYXXXXXXXXX',
// slotNo: '#21', wcName: '化学镀镍作业中心', testEle: '氰化钠',
// proContent: 32,
// targetValue: 40,
// targetLowerLimit: 4,
// drugMatterCode: 'XXXX',
// drugName: 'XXXX',
// addPoints: 45,
// drugMatterName: "XXXX",
// targetUpperLimit: 45,
// testMan: {
// userId: '',
// userName: '张三',
// testEle: '张三'
// }, taskMethod: 1, taskMethodName: '周期生成',
// status: 1,
// statusName: '待检测',
// taskTime: '2025-01-22 12:23:35',
// testTime: '2025-01-22',
// needAdd: 444,
// actualAdd: 444,
// initialInspectionTime: '2025-01-23 11:12:23',
// finishTime: '',
// finishReason: '',
// meterNum: 32,
// condNum: 181,
// auditResult: 1,
// auditResultName: '审核通过',
// auditOpinion: '审核通过',
// auditUser: '张三',
// auditTime: '2025-01-25 15:33:26',
// drugBatch: '1002',
// drugRecipient: '',
// drugRecipientName: '张三',
// drugTime: '2025-01-25 11:23:56',
// meterNumTwo: 32,
// condNumTwo: 32,
// recheckUser: '李四',
// recheckTime: '2025-01-26 11:23:23',
// recheckSubmit: '2025-01-26 11:23:23'
// },
// {
// id: '2',
// taskCode: 'CYSYXXXXXXXXX',
// slotNo: '#22', wcName: '化学镀镍作业中心', testEle: '氰化钠',
// proContent: 32,
// targetValue: 40,
// targetLowerLimit: 4,
// drugMatterCode: 'XXXX',
// drugName: 'XXXX',
// addPoints: 45,
// drugMatterName: "XXXX",
// targetUpperLimit: 45,
// testMan: {
// userId: '',
// userName: '张三',
// testEle: '张三'
// }, taskMethod: 1, taskMethodName: '周期生成',
// status: 4,
// statusName: '待复检',
// taskTime: '2025-01-22 12:23:35',
// testTime: '2025-01-22',
// needAdd: 444,
// actualAdd: 444,
// initialInspectionTime: '2025-01-23 11:12:23',
// finishTime: '',
// finishReason: '',
// meterNum: 32,
// condNum: 181,
// auditResult: 1,
// auditResultName: '审核通过',
// auditOpinion: '审核通过',
// auditUser: '张三',
// auditTime: '2025-01-25 15:33:26',
// drugBatch: '1002',
// drugRecipient: '',
// drugRecipientName: '张三',
// drugTime: '2025-01-25 11:23:56',
// meterNumTwo: 32,
// condNumTwo: 32,
// recheckUser: '李四',
// recheckTime: '2025-01-26 11:23:23',
// recheckSubmit: '2025-01-26 11:23:23'
// },
// {
// id: '3',
// taskCode: 'CYSYXXXXXXXXX',
// slotNo: '#23', wcName: '化学镀镍作业中心', testEle: '氰化钠',
// proContent: 32,
// targetValue: 40,
// targetLowerLimit: 4,
// drugMatterCode: 'XXXX',
// drugName: 'XXXX',
// addPoints: 45,
// drugMatterName: "XXXX",
// targetUpperLimit: 45,
// testMan: {
// userId: '',
// userName: '张三',
// testEle: '张三'
// }, taskMethod: 1, taskMethodName: '周期生成',
// status: 5,
// statusName: '已完成',
// taskTime: '2025-01-22 12:23:35',
// testTime: '2025-01-22',
// needAdd: 444,
// actualAdd: 444,
// initialInspectionTime: '2025-01-23 11:12:23',
// finishTime: '',
// finishReason: '',
// meterNum: 32,
// condNum: 181,
// auditResult: 1,
// auditResultName: '审核通过',
// auditOpinion: '审核通过',
// auditUser: '张三',
// auditTime: '2025-01-25 15:33:26',
// drugBatch: '1002',
// drugRecipient: '',
// drugRecipientName: '张三',
// drugTime: '2025-01-25 11:23:56',
// meterNumTwo: 32,
// condNumTwo: 32,
// recheckUser: '李四',
// recheckTime: '2025-01-26 11:23:23',
// recheckSubmit: '2025-01-26 11:23:23'
// },
// {
// id: '4',
// taskCode: 'CYSYXXXXXXXXX',
// slotNo: '#24', wcName: '化学镀镍作业中心', testEle: '氰化钠',
// proContent: 32,
// targetValue: 40,
// targetLowerLimit: 4,
// drugMatterCode: 'XXXX',
// drugName: 'XXXX',
// addPoints: 45,
// drugMatterName: "XXXX",
// targetUpperLimit: 45,
// testMan: {
// userId: '',
// userName: '张三',
// testEle: '张三'
// }, taskMethod: 1, taskMethodName: '周期生成',
// status: 3,
// statusName: '待加药',
// taskTime: '2025-01-22 12:23:35',
// testTime: '2025-01-22',
// needAdd: 444,
// actualAdd: 444,
// initialInspectionTime: '2025-01-23 11:12:23',
// finishTime: '',
// finishReason: '',
// meterNum: 32,
// condNum: 181,
// auditResult: 1,
// auditResultName: '审核通过',
// auditOpinion: '审核通过',
// auditUser: '张三',
// auditTime: '2025-01-25 15:33:26',
// drugBatch: '1002',
// drugRecipient: '',
// drugRecipientName: '张三',
// drugTime: '2025-01-25 11:23:56',
// meterNumTwo: 32,
// condNumTwo: 32,
// recheckUser: '李四',
// recheckTime: '2025-01-26 11:23:23',
// recheckSubmit: '2025-01-26 11:23:23'
// },
// {
// id: '5',
// taskCode: 'CYSYXXXXXXXXX',
// slotNo: '#25', wcName: '化学镀镍作业中心', testEle: '氰化钠',
// proContent: 32,
// targetValue: 40,
// targetLowerLimit: 4,
// drugMatterCode: 'XXXX',
// drugName: 'XXXX',
// addPoints: 45,
// drugMatterName: "XXXX",
// targetUpperLimit: 45,
// testMan: {
// userId: '',
// userName: '张三',
// testEle: '张三'
// }, taskMethod: 1, taskMethodName: '需求生成',
// status: 2,
// statusName: '加药量待审核',
// taskTime: '2025-01-22 12:23:35',
// testTime: '2025-01-22',
// needAdd: 444,
// actualAdd: 444,
// initialInspectionTime: '2025-01-23 11:12:23',
// finishTime: '',
// finishReason: '',
// meterNum: 32,
// condNum: 181,
// auditResult: 1,
// auditResultName: '审核通过',
// auditOpinion: '审核通过',
// auditUser: '张三',
// auditTime: '2025-01-25 15:33:26',
// drugBatch: '1002',
// drugRecipient: '',
// drugRecipientName: '张三',
// drugTime: '2025-01-25 11:23:56',
// meterNumTwo: 32,
// condNumTwo: 32,
// recheckUser: '李四',
// recheckTime: '2025-01-26 11:23:23',
// recheckSubmit: '2025-01-26 11:23:23'
// },
// {
// id: '6',
// taskCode: 'CYSYXXXXXXXXX',
// slotNo: '#25', wcName: '化学镀镍作业中心', testEle: '氰化钠',
// proContent: 32,
// targetValue: 40,
// targetLowerLimit: 4,
// drugMatterCode: 'XXXX',
// drugName: 'XXXX',
// addPoints: 45,
// drugMatterName: "XXXX",
// targetUpperLimit: 45,
// testMan: {
// userId: '',
// userName: '张三',
// testEle: '张三'
// }, taskMethod: 1, taskMethodName: '需求生成',
// status: 6,
// statusName: '加药量待审核',
// taskTime: '2025-01-22 12:23:35',
// testTime: '2025-01-22',
// needAdd: 444,
// actualAdd: 444,
// initialInspectionTime: '2025-01-23 11:12:23',
// finishTime: '',
// finishReason: '',
// meterNum: 32,
// condNum: 181,
// auditResult: 1,
// auditResultName: '审核通过',
// auditOpinion: '审核通过',
// auditUser: '张三',
// auditTime: '2025-01-25 15:33:26',
// drugBatch: '1002',
// drugRecipient: '',
// drugRecipientName: '张三',
// drugTime: '2025-01-25 11:23:56',
// meterNumTwo: 32,
// condNumTwo: 32,
// recheckUser: '李四',
// recheckTime: '2025-01-26 11:23:23',
// recheckSubmit: '2025-01-26 11:23:23'
// },
// ]
// this.page.total = this.data.length
// this.loading = false
// setTimeout(() => {
// this.selectionClear();
// }, 500)
}
}
}
</script>
<style></style>