2024-11-18 22:04:59 +08:00
|
|
|
|
<template>
|
|
|
|
|
|
<div>
|
|
|
|
|
|
<div class = "test-dialog">
|
|
|
|
|
|
|
|
|
|
|
|
<div class="dialog-content">
|
2024-11-21 23:02:43 +08:00
|
|
|
|
|
2024-11-18 22:04:59 +08:00
|
|
|
|
<div class="right-title">
|
2024-11-21 23:02:43 +08:00
|
|
|
|
<!-- <div>系数校准表</div> -->
|
2024-11-25 21:11:10 +08:00
|
|
|
|
<div>当前源输出为:Ua=Ub=Uc=57.74V Ia=Ib=Ic=1A; 电压误差为:±0.1Un%; 电流误差为:±0.5%</div>
|
2024-11-18 22:04:59 +08:00
|
|
|
|
<div>
|
2024-11-21 23:02:43 +08:00
|
|
|
|
<el-button type="primary" loading v-if="activeIndex > 0 && activeIndex < activeTotalNum">通道系数已校准3台/共3台</el-button>
|
2024-11-25 21:11:10 +08:00
|
|
|
|
<el-button type="primary" :disabled="true" v-if="activeIndex === activeTotalNum">通道系数已校准3台/共3台</el-button>
|
2024-11-18 22:04:59 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="right-content">
|
|
|
|
|
|
<el-tabs type="border-card">
|
2024-11-22 10:46:10 +08:00
|
|
|
|
<el-empty description="暂无数据,等待检测开始" v-if="activeIndex === 0"/>
|
2024-11-21 23:02:43 +08:00
|
|
|
|
<el-tab-pane label="被检设备1" v-if="activeIndex > 0">
|
2024-11-25 21:11:10 +08:00
|
|
|
|
<channelsTestTable
|
|
|
|
|
|
:tableData="tableData1"
|
|
|
|
|
|
></channelsTestTable>
|
2024-11-18 22:04:59 +08:00
|
|
|
|
</el-tab-pane>
|
2024-11-21 23:02:43 +08:00
|
|
|
|
<el-tab-pane label="被检设备2" v-if="activeIndex > 1 ">
|
2024-11-25 21:11:10 +08:00
|
|
|
|
<template #label>
|
|
|
|
|
|
<span class="custom-tabs-label">
|
|
|
|
|
|
<span>被检设备2</span>
|
|
|
|
|
|
<el-icon><Failed /></el-icon>
|
|
|
|
|
|
</span>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
<channelsTestTable
|
|
|
|
|
|
:tableData="tableData2"></channelsTestTable>
|
2024-11-18 22:04:59 +08:00
|
|
|
|
</el-tab-pane>
|
2024-11-21 23:02:43 +08:00
|
|
|
|
<el-tab-pane label="被检设备3" v-if="activeIndex > 2 ">
|
2024-11-25 21:11:10 +08:00
|
|
|
|
<channelsTestTable
|
|
|
|
|
|
:tableData="tableData3"></channelsTestTable>
|
2024-11-18 22:04:59 +08:00
|
|
|
|
</el-tab-pane>
|
|
|
|
|
|
</el-tabs>
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
</template>
|
|
|
|
|
|
<script lang="tsx" setup name="channelsTest">
|
2024-11-25 21:11:10 +08:00
|
|
|
|
import { SuccessFilled,Failed } from '@element-plus/icons-vue'
|
2024-11-18 22:04:59 +08:00
|
|
|
|
|
|
|
|
|
|
const activeIndex = ref(0)
|
2024-11-21 23:02:43 +08:00
|
|
|
|
const activeTotalNum = ref(3)
|
2024-11-18 22:04:59 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const activities = [
|
|
|
|
|
|
{
|
|
|
|
|
|
content: '开始检测',
|
|
|
|
|
|
timestamp: '2018-04-12 20:46',
|
|
|
|
|
|
size: 'large',
|
|
|
|
|
|
color: '#0bbd87',
|
|
|
|
|
|
icon: SuccessFilled,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
content: 'GPS上送时刻',
|
|
|
|
|
|
timestamp: '2018-04-03 20:46',
|
|
|
|
|
|
hollow: true,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
content: '设备最早上送时刻',
|
|
|
|
|
|
timestamp: '2018-04-03 20:46',
|
|
|
|
|
|
hollow: true,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
content: '设备最晚上送时刻',
|
|
|
|
|
|
timestamp: '2018-04-03 20:46',
|
|
|
|
|
|
hollow: true,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
content: '检测结束',
|
|
|
|
|
|
timestamp: '2018-04-03 20:46',
|
|
|
|
|
|
hollow: true,
|
|
|
|
|
|
},
|
|
|
|
|
|
]
|
2024-11-25 21:11:10 +08:00
|
|
|
|
const tableData1 = ref([
|
|
|
|
|
|
{
|
|
|
|
|
|
id: '1',
|
|
|
|
|
|
updateTime: '2024-10-10 10:30:00',
|
|
|
|
|
|
deviceName:'被检设备1',
|
|
|
|
|
|
MonitorIdx: 1,
|
|
|
|
|
|
Ua:1.0003,
|
|
|
|
|
|
Ub:1.0003,
|
|
|
|
|
|
Uc:0.0096,
|
|
|
|
|
|
Ia:1.0003,
|
|
|
|
|
|
Ib:1.0003,
|
|
|
|
|
|
Ic:1.0008,
|
|
|
|
|
|
Result: '合格',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
id: '2',
|
|
|
|
|
|
updateTime: '2024-10-10 10:30:00',
|
|
|
|
|
|
deviceName:'被检设备1',
|
|
|
|
|
|
MonitorIdx: 2,
|
|
|
|
|
|
Ua:1.0003,
|
|
|
|
|
|
Ub:1.0003,
|
|
|
|
|
|
Uc:0.0096,
|
|
|
|
|
|
Ia:1.0003,
|
|
|
|
|
|
Ib:1.0003,
|
|
|
|
|
|
Ic:1.0008,
|
|
|
|
|
|
Result: '合格',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
id: '3',
|
|
|
|
|
|
updateTime: '2024-10-10 10:30:00',
|
|
|
|
|
|
deviceName:'被检设备1',
|
|
|
|
|
|
MonitorIdx: 3,
|
|
|
|
|
|
Ua:1.0003,
|
|
|
|
|
|
Ub:1.0003,
|
|
|
|
|
|
Uc:0.0096,
|
|
|
|
|
|
Ia:1.0003,
|
|
|
|
|
|
Ib:1.0003,
|
|
|
|
|
|
Ic:1.0008,
|
|
|
|
|
|
Result: '合格',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
id: '4',
|
|
|
|
|
|
updateTime: '2024-10-10 10:30:00',
|
|
|
|
|
|
deviceName:'被检设备1',
|
|
|
|
|
|
MonitorIdx: 4,
|
|
|
|
|
|
Ua:1.0003,
|
|
|
|
|
|
Ub:1.0003,
|
|
|
|
|
|
Uc:0.0096,
|
|
|
|
|
|
Ia:1.0003,
|
|
|
|
|
|
Ib:1.0003,
|
|
|
|
|
|
Ic:1.0008,
|
|
|
|
|
|
Result: '合格',
|
|
|
|
|
|
},
|
|
|
|
|
|
])
|
|
|
|
|
|
const tableData2 = ref([
|
|
|
|
|
|
{
|
|
|
|
|
|
id: '1',
|
|
|
|
|
|
updateTime: '2024-10-10 10:30:00',
|
|
|
|
|
|
deviceName:'被检设备2',
|
|
|
|
|
|
MonitorIdx: 1,
|
|
|
|
|
|
Ua:1.0003,
|
|
|
|
|
|
Ub:1.0003,
|
|
|
|
|
|
Uc:0.0096,
|
|
|
|
|
|
Ia:1.0003,
|
|
|
|
|
|
Ib:1.0003,
|
|
|
|
|
|
Ic:1.0008,
|
|
|
|
|
|
Result: '合格',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
id: '2',
|
|
|
|
|
|
updateTime: '2024-10-10 10:30:00',
|
|
|
|
|
|
deviceName:'被检设备2',
|
|
|
|
|
|
MonitorIdx: 2,
|
|
|
|
|
|
Ua:1.0003,
|
|
|
|
|
|
Ub:1.0003,
|
|
|
|
|
|
Uc:0.0096,
|
|
|
|
|
|
Ia:1.0003,
|
|
|
|
|
|
Ib:1.0003,
|
|
|
|
|
|
Ic:1.0008,
|
|
|
|
|
|
Result: '不合格',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
id: '3',
|
|
|
|
|
|
updateTime: '2024-10-10 10:30:00',
|
|
|
|
|
|
deviceName:'被检设备2',
|
|
|
|
|
|
MonitorIdx: 3,
|
|
|
|
|
|
Ua:1.0003,
|
|
|
|
|
|
Ub:1.0003,
|
|
|
|
|
|
Uc:0.0096,
|
|
|
|
|
|
Ia:1.0003,
|
|
|
|
|
|
Ib:1.0003,
|
|
|
|
|
|
Ic:1.0008,
|
|
|
|
|
|
Result: '合格',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
id: '4',
|
|
|
|
|
|
updateTime: '2024-10-10 10:30:00',
|
|
|
|
|
|
deviceName:'被检设备2',
|
|
|
|
|
|
MonitorIdx: 4,
|
|
|
|
|
|
Ua:1.0003,
|
|
|
|
|
|
Ub:1.0003,
|
|
|
|
|
|
Uc:0.0096,
|
|
|
|
|
|
Ia:1.0003,
|
|
|
|
|
|
Ib:1.0003,
|
|
|
|
|
|
Ic:1.0008,
|
|
|
|
|
|
Result: '不合格',
|
|
|
|
|
|
},
|
|
|
|
|
|
])
|
|
|
|
|
|
const tableData3 = ref([
|
|
|
|
|
|
{
|
|
|
|
|
|
id: '1',
|
|
|
|
|
|
updateTime: '2024-10-10 10:30:00',
|
|
|
|
|
|
deviceName:'被检设备3',
|
|
|
|
|
|
MonitorIdx: 1,
|
|
|
|
|
|
Ua:1.0003,
|
|
|
|
|
|
Ub:1.0003,
|
|
|
|
|
|
Uc:0.0096,
|
|
|
|
|
|
Ia:1.0003,
|
|
|
|
|
|
Ib:1.0003,
|
|
|
|
|
|
Ic:1.0008,
|
|
|
|
|
|
Result: '合格',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
id: '2',
|
|
|
|
|
|
updateTime: '2024-10-10 10:30:00',
|
|
|
|
|
|
deviceName:'被检设备3',
|
|
|
|
|
|
MonitorIdx: 2,
|
|
|
|
|
|
Ua:1.0003,
|
|
|
|
|
|
Ub:1.0003,
|
|
|
|
|
|
Uc:0.0096,
|
|
|
|
|
|
Ia:1.0003,
|
|
|
|
|
|
Ib:1.0003,
|
|
|
|
|
|
Ic:1.0008,
|
|
|
|
|
|
Result: '合格',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
id: '3',
|
|
|
|
|
|
updateTime: '2024-10-10 10:30:00',
|
|
|
|
|
|
deviceName:'被检设备3',
|
|
|
|
|
|
MonitorIdx: 3,
|
|
|
|
|
|
Ua:1.0003,
|
|
|
|
|
|
Ub:1.0003,
|
|
|
|
|
|
Uc:0.0096,
|
|
|
|
|
|
Ia:1.0003,
|
|
|
|
|
|
Ib:1.0003,
|
|
|
|
|
|
Ic:1.0008,
|
|
|
|
|
|
Result: '合格',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
id: '4',
|
|
|
|
|
|
updateTime: '2024-10-10 10:30:00',
|
|
|
|
|
|
deviceName:'被检设备3',
|
|
|
|
|
|
MonitorIdx: 4,
|
|
|
|
|
|
Ua:1.0003,
|
|
|
|
|
|
Ub:1.0003,
|
|
|
|
|
|
Uc:0.0096,
|
|
|
|
|
|
Ia:1.0003,
|
|
|
|
|
|
Ib:1.0003,
|
|
|
|
|
|
Ic:1.0008,
|
|
|
|
|
|
Result: '合格',
|
|
|
|
|
|
},
|
|
|
|
|
|
])
|
2024-11-18 22:04:59 +08:00
|
|
|
|
const currentStepStatus = ref<'error' | 'finish' | 'wait' | 'success' | 'process'>('finish');
|
|
|
|
|
|
|
|
|
|
|
|
const props = defineProps({
|
|
|
|
|
|
testStatus: {
|
|
|
|
|
|
type: String,
|
|
|
|
|
|
default: 'wait'
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
const testStatus = toRef(props, 'testStatus');
|
|
|
|
|
|
const ts = ref('');
|
|
|
|
|
|
//监听goods_sn的变化
|
|
|
|
|
|
watch(testStatus, function (newValue, oldValue) {
|
|
|
|
|
|
ts.value = props.testStatus;
|
|
|
|
|
|
if(ts.value==='start')
|
|
|
|
|
|
{
|
|
|
|
|
|
ts.value = 'process'
|
|
|
|
|
|
|
|
|
|
|
|
let timer = setInterval(() => {
|
2024-11-22 10:46:10 +08:00
|
|
|
|
if(activeIndex.value < activeTotalNum.value)
|
2024-11-18 22:04:59 +08:00
|
|
|
|
activeIndex.value++
|
2024-11-22 10:46:10 +08:00
|
|
|
|
else if(activeIndex.value === activeTotalNum.value)
|
2024-11-18 22:04:59 +08:00
|
|
|
|
{
|
2024-11-22 10:46:10 +08:00
|
|
|
|
clearInterval(timer)
|
|
|
|
|
|
ts.value = 'success'
|
2024-11-18 22:04:59 +08:00
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
clearInterval(timer)
|
|
|
|
|
|
ts.value = 'success'
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}, 1000);
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
2024-11-21 23:02:43 +08:00
|
|
|
|
// watch(activeIndex, function (newValue, oldValue) {
|
|
|
|
|
|
|
|
|
|
|
|
// if(activeIndex.value === 1)
|
|
|
|
|
|
// {
|
|
|
|
|
|
// activities.value.length = 0;
|
|
|
|
|
|
// activities.value.push({
|
|
|
|
|
|
// content: '开始检测',
|
|
|
|
|
|
// timestamp: '2018-04-12 20:46',
|
|
|
|
|
|
// size: 'large',
|
|
|
|
|
|
// color: '#0bbd87',
|
|
|
|
|
|
// icon: SuccessFilled,
|
|
|
|
|
|
// });
|
|
|
|
|
|
// }
|
|
|
|
|
|
// if(activeIndex.value === 2)
|
|
|
|
|
|
// {
|
|
|
|
|
|
// activities.value.push({
|
|
|
|
|
|
// content: 'GPS上送时刻',
|
|
|
|
|
|
// timestamp: '2018-04-03 20:46',
|
|
|
|
|
|
// color: '#0bbd87',
|
|
|
|
|
|
// icon: SuccessFilled,
|
|
|
|
|
|
// size: 'large',
|
|
|
|
|
|
// });
|
|
|
|
|
|
// }
|
|
|
|
|
|
// if(activeIndex.value === 3)
|
|
|
|
|
|
// {
|
|
|
|
|
|
// activities.value.push({
|
|
|
|
|
|
// content: '设备最早上送时刻',
|
|
|
|
|
|
// timestamp: '2018-04-03 20:46',
|
|
|
|
|
|
// color: '#0bbd87',
|
|
|
|
|
|
// icon: SuccessFilled,
|
|
|
|
|
|
// size: 'large',
|
|
|
|
|
|
// });
|
|
|
|
|
|
|
|
|
|
|
|
// deviceOperatorData.value.length = 0;
|
|
|
|
|
|
// deviceOperatorData.value = deviceData.value;
|
|
|
|
|
|
// }
|
|
|
|
|
|
// if(activeIndex.value > 3)
|
|
|
|
|
|
// {
|
|
|
|
|
|
// activities.value.push({
|
|
|
|
|
|
// content: '设备最晚上送时刻',
|
|
|
|
|
|
// timestamp: '2018-04-03 20:46',
|
|
|
|
|
|
// color: '#0bbd87',
|
|
|
|
|
|
// icon: SuccessFilled,
|
|
|
|
|
|
// size: 'large',
|
|
|
|
|
|
// });
|
|
|
|
|
|
// activities.value.push({
|
|
|
|
|
|
// content: '检测结束',
|
|
|
|
|
|
// timestamp: '2018-04-03 20:46',
|
|
|
|
|
|
// color: '#0bbd87',
|
|
|
|
|
|
// icon: SuccessFilled,
|
|
|
|
|
|
// size: 'large',
|
|
|
|
|
|
// });
|
|
|
|
|
|
// }
|
|
|
|
|
|
// })
|
2024-11-18 22:04:59 +08:00
|
|
|
|
|
|
|
|
|
|
const emit = defineEmits(['update:testStatus']);
|
|
|
|
|
|
//监听sn
|
|
|
|
|
|
watch(ts, function (newValue, oldValue) {
|
|
|
|
|
|
//修改父组件
|
|
|
|
|
|
emit('update:testStatus',ts.value)
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
</script>
|
|
|
|
|
|
<style scoped>
|
|
|
|
|
|
.right-title{
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
flex-direction: row; /* 横向排列 */
|
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
margin-bottom: 10px;
|
|
|
|
|
|
}
|
2024-11-21 23:02:43 +08:00
|
|
|
|
.right-content{
|
2024-11-22 10:46:10 +08:00
|
|
|
|
max-height: 400px;
|
2024-11-21 23:02:43 +08:00
|
|
|
|
}
|
2024-11-25 21:11:10 +08:00
|
|
|
|
|
|
|
|
|
|
.custom-tabs-label .el-icon {
|
|
|
|
|
|
vertical-align: middle;
|
|
|
|
|
|
}
|
|
|
|
|
|
.custom-tabs-label span {
|
|
|
|
|
|
vertical-align: middle;
|
|
|
|
|
|
margin-left: 4px;
|
|
|
|
|
|
}
|
2024-11-18 22:04:59 +08:00
|
|
|
|
</style>
|