修改样式

This commit is contained in:
GGJ
2024-12-05 15:22:46 +08:00
parent 8e2a22cf61
commit ea4edfadd0
10 changed files with 1619 additions and 1582 deletions

View File

@@ -10,7 +10,7 @@
/>
<!-- 表格主体 -->
<div class='card table-main'>
<div class='table-main' :class='{ card: showCard }' >
<!-- 表格头部 操作按钮 -->
<div class='table-header'>
<div class='header-button-lf'>
@@ -126,6 +126,7 @@ export interface ProTableProps {
requestError?: (params: any) => void; // 表格 api 请求错误监听 ==> 非必传
dataCallback?: (data: any) => any; // 返回数据的回调函数,可以对数据进行处理 ==> 非必传
title?: string; // 表格标题 ==> 非必传
showCard?: boolean; // 下个是否需要卡片
pagination?: boolean; // 是否需要分页组件 ==> 非必传默认为true
initParam?: any; // 初始化请求参数 ==> 非必传(默认为{}
border?: boolean; // 是否带有纵向边框 ==> 非必传默认为true
@@ -141,6 +142,7 @@ const props = withDefaults(defineProps<ProTableProps>(), {
pagination: true,
initParam: {},
border: true,
showCard: true,
toolButton: true,
rowKey: 'id',
searchCol: () => ({ xs: 1, sm: 2, md: 2, lg: 3, xl: 4 }),

View File

@@ -500,6 +500,18 @@
}
}
.el-message-box__headerbtn{
top: 5px;
}
.el-message-box__close{
svg{
color: #fff;
}
:hover{
color: #409eff;
}
}
.el-message-box__content{
padding: 10px ;
border-bottom: 1px solid #cccccc;
@@ -508,3 +520,59 @@
padding: 10px;}
}
.form-one {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
.el-form-item {
display: flex;
width: 98%;
margin-bottom: 15px !important;
.el-form-item__content {
flex: 1;
.el-select,
.el-cascader,
.el-input__inner,
.el-date-editor {
width: 100%;
}
}
}
}
.form-two {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
.el-form-item {
display: flex;
width: 48%;
.el-form-item__content {
flex: 1;
.el-select,
.el-cascader,
.el-input__inner,
.el-date-editor {
width: 100%;
}
}
}
}
.form-three {
display: flex;
flex-wrap: wrap;
// justify-content: space-between;
.el-form-item {
display: flex;
width: 32.3%;
.el-form-item__content {
flex: 1;
.el-select,
.el-cascader,
.el-input__inner,
.el-date-editor {
width: 100%;
}
}
}
}

View File

@@ -1,279 +1,283 @@
<template>
<div>
<div class = "test-dialog">
<div class="test-dialog">
<div class="dialog-content">
<div class="dialog-content">
<div class="right-title">
<div class="right-title">
<!-- <div>系数校准表</div> -->
<div>当前源输出为Ua=Ub=Uc=57.74V Ia=Ib=Ic=1A 电压误差为±0.1Un% 电流误差为±0.5%</div>
<div>
<el-button type="primary" loading v-if="activeIndex > 0 && activeIndex < activeTotalNum">通道系数已校准3台/共3台</el-button>
<el-button type="primary" :disabled="true" v-if="activeIndex === activeTotalNum">通道系数已校准3台/共3台</el-button>
<span style=" font-size: 18px;font-weight: 600;">
设备已合格 <span style="color: #67C23A">{{ qualified }}</span> / <span style="color: green">{{ total }}</span>
</span>
<!-- <el-button type="primary" loading
v-if="activeIndex > 0 && activeIndex < activeTotalNum">通道系数已校准3台/共3台</el-button>
<el-button type="primary" :disabled="true" v-if="activeIndex === activeTotalNum">通道系数已校准3台/共3台</el-button> -->
</div>
</div>
<div class="right-content">
<el-tabs type="border-card">
<el-empty description="暂无数据,等待检测开始" v-if="activeIndex === 0"/>
<el-tab-pane label="被检设备1" v-if="activeIndex > 0">
<channelsTestTable
:tableData="tableData1"
></channelsTestTable>
</el-tab-pane>
<el-tab-pane label="被检设备2" v-if="activeIndex > 1 ">
<template #label>
<span class="custom-tabs-label">
<span>被检设备2</span>
<el-icon><Failed /></el-icon>
</span>
</template>
<channelsTestTable
:tableData="tableData2"></channelsTestTable>
</el-tab-pane>
<el-tab-pane label="被检设备3" v-if="activeIndex > 2 ">
<channelsTestTable
:tableData="tableData3"></channelsTestTable>
</el-tab-pane>
</el-tabs>
</div>
<div class="right-content">
<el-tabs type="border-card">
<el-empty description="暂无数据,等待检测开始" v-if="activeIndex === 0" />
<el-tab-pane label="被检设备1" v-if="activeIndex > 0">
<channelsTestTable :tableData="tableData1"></channelsTestTable>
</el-tab-pane>
<el-tab-pane label="被检设备2" v-if="activeIndex > 1">
<template #label>
<span class="custom-tabs-label">
<span>被检设备2</span>
<el-icon>
<Failed />
</el-icon>
</span>
</template>
<channelsTestTable :tableData="tableData2"></channelsTestTable>
</el-tab-pane>
<el-tab-pane label="被检设备3" v-if="activeIndex > 2">
<channelsTestTable :tableData="tableData3"></channelsTestTable>
</el-tab-pane>
</el-tabs>
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script lang="tsx" setup name="channelsTest">
import { SuccessFilled,Failed } from '@element-plus/icons-vue'
import { SuccessFilled, Failed } from '@element-plus/icons-vue'
const activeIndex = ref(0)
const activeTotalNum = ref(3)
const qualified = ref(0)
const total = ref(0)
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,
},
{
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,
},
]
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: '合格',
},
])
{
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: '合格',
},
])
const currentStepStatus = ref<'error' | 'finish' | 'wait' | 'success' | 'process'>('finish');
const props = defineProps({
testStatus: {
type: String,
default: 'wait'
}
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'
ts.value = props.testStatus;
if (ts.value === 'start') {
ts.value = 'process'
let timer = setInterval(() => {
if(activeIndex.value < activeTotalNum.value)
activeIndex.value++
else if(activeIndex.value === activeTotalNum.value)
{
clearInterval(timer)
ts.value = 'success'
let timer = setInterval(() => {
if (activeIndex.value < activeTotalNum.value) {
activeIndex.value++
qualified.value = activeIndex.value
}
else
{
clearInterval(timer)
ts.value = 'success'
else if (activeIndex.value === activeTotalNum.value) {
clearInterval(timer)
ts.value = 'success'
}
else {
clearInterval(timer)
ts.value = 'success'
}
}, 1000);
}
total.value = activeTotalNum.value
}, 1000);
}
})
// watch(activeIndex, function (newValue, oldValue) {
@@ -333,33 +337,41 @@ if(ts.value==='start')
const emit = defineEmits(['update:testStatus']);
//监听sn
watch(ts, function (newValue, oldValue) {
//修改父组件
emit('update:testStatus',ts.value)
//修改父组件
emit('update:testStatus', ts.value)
})
</script>
<style scoped>
.right-title{
display: flex;
flex-direction: row; /* 横向排列 */
justify-content: space-between;
margin-bottom: 10px;
}
.right-content{
/* max-height: 400px; */
}
.right-title {
display: flex;
flex-direction: row;
/* 横向排列 */
justify-content: space-between;
margin-bottom: 10px;
}
.custom-tabs-label .el-icon {
.right-content {
/* max-height: 400px; */
}
.custom-tabs-label .el-icon {
vertical-align: middle;
}
.custom-tabs-label span {
vertical-align: middle;
margin-left: 4px;
}
.dialog-content{
.dialog-content {
height: 472px;
}
.el-tabs--border-card {
height: 435px;
height: 425px;
}
.el-icon svg {
color: #ff7171;
}
</style>

View File

@@ -1,11 +1,11 @@
<template>
<div class="table-container">
<div class="table-container table-main">
<el-table :data="tableData" :header-cell-style="{ textAlign: 'center' } " :cell-style="{ textAlign: 'center' }" style="width: 100%" >
<el-table-column prop="id" label="序号" width="70" />
<el-table-column prop="updateTime" label="上送时刻" />
<el-table-column prop="deviceName" label="设备名称" />
<el-table-column prop="updateTime" label="上送时刻" width="180"/>
<!-- <el-table-column prop="deviceName" label="设备名称" /> -->
<el-table-column prop="MonitorIdx" label="监测点序号" />
<el-table-column label="电压通道" >

View File

@@ -2,30 +2,20 @@
<el-dialog title="数据查询" :model-value='visible' @close="handleCancel" width="1065px" draggable>
<div class="data-check-dialog">
<div class="data-check-title">
<el-form :model='formContent'>
<el-row :gutter="24" >
<el-col :span="8">
<el-form :model='formContent' label-width="auto" class="form-three ">
<el-form-item label="检测脚本:" >
<el-input v-model='testScriptName' :disabled="true"/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="误差体系:" >
<el-input v-model='errorSysName' :disabled="true"/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="数据处理原则:" >
<el-input v-model='dataRule' :disabled="true"/>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="24" >
<el-col :span="8">
<el-form-item label="设备名称:" >
<el-input v-model='deviceName' :disabled="true"/>
</el-form-item>
</el-col>
<!-- <el-col :span="8">
<el-form-item label='复检次数:'>
<el-select v-model="reCheckIdx">
@@ -38,7 +28,6 @@
</el-select>
</el-form-item>
</el-col> -->
<el-col :span="8">
<el-form-item label='通道号:'>
<el-select v-model="monitorIdx">
<el-option
@@ -49,8 +38,6 @@
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<div class="data-check-content">

View File

@@ -1,7 +1,7 @@
<template>
<div class="table-container">
<el-table :data="tableData" stripe :header-cell-style="{ textAlign: 'center' } " :cell-style="{ textAlign: 'center' }" height="310px" style="width: 100%" >
<div class="table-container table-main">
<el-table :data="tableData" stripe border :header-cell-style="{ textAlign: 'center' } " :cell-style="{ textAlign: 'center' }" height="310px" style="width: 100%" >
<el-table-column prop="id" label="序号" width="70" />
<el-table-column prop="updateTime" label="数据时间" />
<el-table-column prop="L1" label="L1V" />

View File

@@ -1,8 +1,8 @@
<template>
<div class="table-container">
<div class="table-container table-main">
<el-table :data="tableData" max-height="300" :header-cell-style="{ textAlign: 'center' } " :cell-style="{ textAlign: 'center' }" style="width: 100%" >
<el-table :data="tableData" height="310px" :header-cell-style="{ textAlign: 'center' } " :cell-style="{ textAlign: 'center' }" style="width: 100%" >
<el-table-column prop="id" label="序号" width="70" />
<el-table-column prop="standardValue" label="标准值V" />
@@ -102,7 +102,7 @@ text-align: center; /* 所有单元格文字居中 */
}
.table-container {
max-height: 400px; /* 根据需要调整高度 */
/* max-height: 400px; */
overflow-y: auto; /* 允许垂直滚动 */
overflow-x: hidden; /* 隐藏水平滚动条 */
}

View File

@@ -40,8 +40,8 @@
<!-- v-on:cell-click="handleClick" -->
<!-- <el-table :key="tableKey" :data="tableData" :row-class-name="tableRowClassName" row-key="id" height="545px" :header-cell-style="{ background: '#003078', color: '#eee', textAlign: 'center' } " :cell-style="{ textAlign: 'center' }" style="width: 100%" border> -->
<!-- <el-table :data="tableData" :row-class-name="tableRowClassName" row-key="id" height="545px" :header-cell-style="{ background: '#003078', color: '#eee', textAlign: 'center' } " style="width: 100%" border> -->
<div class="dialog-content">
<el-table :data="tableData" :cell-class-name="tableCell" row-key="id" height="545px" :header-cell-style="{ background: '#003078', color: '#eee', textAlign: 'center' } " style="width: 100%" border>
<div class="dialog-content ">
<el-table :data="tableData" :cell-class-name="tableCell" row-key="id" height="450px" :header-cell-style="{ background: '#003078', color: '#eee', textAlign: 'center' } " style="width: 100%" border>
<el-table-column fixed prop="scriptItemName" label="检测项目" width="250px">
<!-- <template #default="scope">
<div :style="{ backgroundColor: '#003078' }">
@@ -226,8 +226,8 @@
</el-table-column> -->
</el-table>
</div>
<div >
<el-collapse model-value="0" accordion>
<div style="height: 98px;">
<el-collapse model-value="1" accordion>
<el-collapse-item title="检测日志:" name="1">
<div ref="scrollContainer" class="dialog-log">
<p v-for="(item, index) in testLogList" :key="index" :style="{color:item.type==='error'?'#F56C6C':'var(--el-text-color-regular)'}">
@@ -1925,7 +1925,7 @@ watch(ts, function (newValue, oldValue) {
margin-bottom:10px;
}
.dialog-content{
max-height: 545px;
max-height: 450px;
overflow-y: auto;
}
@@ -1939,3 +1939,12 @@ watch(ts, function (newValue, oldValue) {
</style>
<style lang="scss" scoped>
:deep(.el-button--small) {
height: 20px !important;
width: 20px !important;
}
:deep(.el-table--default td ){
padding: 5px 0 !important;
}
</style>

View File

@@ -1,14 +1,15 @@
<template>
<div>
<div class = "test-dialog">
<div class="dialog-left">
<el-steps direction="vertical" :active="activeIndex" :process-status="currentStepStatus" finish-status="success">
<el-step title="开始检测" :description="startTime"/>
<el-step title="GPS完成上送" :description="gpsTime"/>
<el-step title="设备开始上送时刻" :description="devStartTime"/>
<el-step title="设备最晚上送时刻" :description="devEndTime"/>
<el-step title="检测完成" :description="finishTime"/>
</el-steps>
<div>
<div class="test-dialog">
<div class="dialog-left">
<el-steps direction="vertical" :active="activeIndex" :process-status="currentStepStatus"
finish-status="success">
<el-step title="开始检测" :description="startTime" />
<el-step title="GPS完成上送" :description="gpsTime" />
<el-step title="设备开始上送时刻" :description="devStartTime" />
<el-step title="设备最晚上送时刻" :description="devEndTime" />
<el-step title="检测完成" :description="finishTime" />
</el-steps>
<!-- <el-timeline style="max-width: 600px">
<el-timeline-item
v-for="(activity, index) in activities"
@@ -23,27 +24,26 @@
{{ activity.content }}
</el-timeline-item>
</el-timeline> -->
</div>
<div class="dialog-right">
</div>
<div class="dialog-right">
<div class="right-title">
<!-- <div>设备上送时刻表</div> -->
<div>
<el-button type="primary" loading v-if="activeIndex > 0 && activeIndex < activeTotalNum">设备已合格3台/共4台</el-button>
<el-button type="primary" disabled="true" v-if="activeIndex === activeTotalNum">设备已合格3台/共4台</el-button>
</div>
<!-- <div>设备上送时刻表</div> -->
<span style=" font-size: 18px;font-weight: 600;">
设备已合格 <span style="color: #67C23A">{{ qualified }}</span> / <span style="color: green">4</span>
</span>
<div>
<!-- <el-button type="primary" loading v-if="activeIndex > 0 && activeIndex < activeTotalNum">设备已合格3台/共4台</el-button>
<el-button type="primary" disabled="true" v-if="activeIndex === activeTotalNum">设备已合格3台/共4台</el-button> -->
</div>
</div>
<div class="right-content">
<ProTable
ref='proTable'
:pagination = 'false'
:toolButton = 'false'
:columns='columns'
:data='deviceOperatorData'
stripe :header-cell-style="{ textAlign: 'center' } " :cell-style="{ textAlign: 'center' }" style="width: 100%; height:390px" border
>
<ProTable ref='proTable' :pagination='false' :toolButton='false' :showCard='false' :columns='columns'
:data='deviceOperatorData' stripe :header-cell-style="{ textAlign: 'center' }"
:cell-style="{ textAlign: 'center' }" style="width: 100%; height:435px" border>
</ProTable>
<!-- <el-table :data="deviceOperatorData" stripe :header-cell-style="{ textAlign: 'center' } " :cell-style="{ textAlign: 'center' }" style="width: 100%" border>
<!-- <el-table :data="deviceOperatorData" stripe :header-cell-style="{ textAlign: 'center' } " :cell-style="{ textAlign: 'center' }" style="width: 100%" border>
<el-table-column prop="deviceName" label="设备名" />
<el-table-column prop="updataTime" label="上送时刻" />
<el-table-column prop="ErrorValue" label="守时误差(ms)" />
@@ -51,12 +51,12 @@
<template #default="scope">
<el-tag :type="scope.row.Result === '合格' ? 'success' : 'danger'">{{ scope.row.Result }}</el-tag>
</template>
</el-table-column>
</el-table> -->
</el-table-column>
</el-table> -->
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script lang="tsx" setup name="timeTest">
@@ -78,6 +78,7 @@ interface Activity {
color?: string;
icon?: any;
}
const qualified = ref(0)
const activities = ref<Activity[]>([
{
content: '开始检测',
@@ -86,62 +87,62 @@ const activities = ref<Activity[]>([
const deviceOperatorData = ref([
{
deviceName: '240001',
updataTime: '—',
ErrorValue:'—',
Result: '—',
},
{
deviceName: '240002',
updataTime: '—',
ErrorValue:'—',
Result: '—',
},
{
deviceName: '240003',
updataTime: '—',
ErrorValue:'—',
Result: '—',
},
{
deviceName: '240004',
updataTime: '—',
ErrorValue:'—',
Result: '—',
},
])
{
deviceName: '240001',
updataTime: '—',
ErrorValue: '—',
Result: '—',
},
{
deviceName: '240002',
updataTime: '—',
ErrorValue: '—',
Result: '—',
},
{
deviceName: '240003',
updataTime: '—',
ErrorValue: '—',
Result: '—',
},
{
deviceName: '240004',
updataTime: '—',
ErrorValue: '—',
Result: '—',
},
])
const deviceData = ref([
{
deviceName: '240001',
updataTime: '2024-12-05 10:30:08.136',
ErrorValue:'148',
Result: '合格',
},
{
deviceName: '240002',
updataTime: '2024-12-05 10:30:08.136',
ErrorValue:'136',
Result: '合格',
},
{
deviceName: '240003',
updataTime: '2024-12-05 10:30:09.006',
ErrorValue:'1006',
Result: '不合格',
},
{
deviceName: '240004',
updataTime: '2024-12-05 10:30:08.736',
ErrorValue:'736',
Result: '合格',
},
])
const deviceData = ref([
{
deviceName: '240001',
updataTime: '2024-12-05 10:30:08.136',
ErrorValue: '148',
Result: '合格',
},
{
deviceName: '240002',
updataTime: '2024-12-05 10:30:08.136',
ErrorValue: '136',
Result: '合格',
},
{
deviceName: '240003',
updataTime: '2024-12-05 10:30:09.006',
ErrorValue: '1006',
Result: '不合格',
},
{
deviceName: '240004',
updataTime: '2024-12-05 10:30:08.736',
ErrorValue: '736',
Result: '合格',
},
])
const currentStepStatus = ref<'error' | 'finish' | 'wait' | 'success' | 'process'>('finish');
const props = defineProps({
testStatus: {
const props = defineProps({
testStatus: {
type: String,
default: 'wait'
}
@@ -171,42 +172,37 @@ const columns = reactive([
label: '检测结果',
width: 100,
render: (scope) => {
if(scope.row.Result === '不合格')
{
return (
<el-tag type='danger'>{ scope.row.Result }</el-tag>
)
}
else
{
return (
<span>{ scope.row.Result }</span>
)
}
},
if (scope.row.Result === '不合格') {
return (
<el-tag type='danger'>{scope.row.Result}</el-tag>
)
}
else {
return (
<span>{scope.row.Result}</span>
)
}
},
},
])
//监听testStatus的变化
watch(testStatus, function (newValue, oldValue) {
ts.value = props.testStatus;
if(ts.value==='start')
{
if (ts.value === 'start') {
ts.value = 'process'
let timer = setInterval(() => {
if(activeIndex.value < activeTotalNum.value - 2)
activeIndex.value++
else if(activeIndex.value === activeTotalNum.value -2)
{
activeIndex.value++
activeIndex.value++
}
else
{
clearInterval(timer)
ts.value = 'success'
}
}, 1000);
if (activeIndex.value < activeTotalNum.value - 2)
activeIndex.value++
else if (activeIndex.value === activeTotalNum.value - 2) {
activeIndex.value++
activeIndex.value++
}
else {
clearInterval(timer)
ts.value = 'success'
}
}, 1000);
}
})
@@ -224,101 +220,105 @@ function formatDateTime(date) {
watch(activeIndex, function (newValue, oldValue) {
if(activeIndex.value === 1)
{
startTime.value = formatDateTime(new Date());
if (activeIndex.value === 1) {
startTime.value = formatDateTime(new Date());
// activities.value.length = 0;
// activities.value.push({
// content: '开始检测',
// timestamp: '2018-04-12 20:46',
// size: 'large',
// color: '#0bbd87',
// icon: SuccessFilled,
// });
}
if(activeIndex.value === 2)
{
gpsTime.value = formatDateTime(new Date());
// 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',
// });
devStartTime.value = formatDateTime(new Date());
deviceOperatorData.value.length = 0;
deviceOperatorData.value = deviceData.value;
}
if(activeIndex.value > 3)
{
devEndTime.value = formatDateTime(new Date());
finishTime.value = formatDateTime(new Date());
// activities.value.length = 0;
// activities.value.push({
// content: '开始检测',
// timestamp: '2018-04-12 20:46',
// size: 'large',
// color: '#0bbd87',
// icon: SuccessFilled,
// });
}
if (activeIndex.value === 2) {
gpsTime.value = formatDateTime(new Date());
// 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',
// });
devStartTime.value = formatDateTime(new Date());
deviceOperatorData.value.length = 0;
deviceOperatorData.value = deviceData.value;
qualified.value = 3
}
if (activeIndex.value > 3) {
devEndTime.value = formatDateTime(new Date());
finishTime.value = formatDateTime(new Date());
// 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',
// });
}
// 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',
// });
}
})
const emit = defineEmits(['update:testStatus']);
//监听sn
watch(ts, function (newValue, oldValue) {
//修改父组件
emit('update:testStatus',ts.value)
emit('update:testStatus', ts.value)
})
</script>
<style scoped>
.test-dialog {
display: flex;
.test-dialog{
display: flex;
flex-direction: row; /* 横向排列 */
/* margin-top: 20px; */
/* min-height: 300px; */
height: 472px;
/* .dialog-left{
flex-direction: row;
/* 横向排列 */
/* margin-top: 20px; */
/* min-height: 300px; */
height: 472px;
/* .dialog-left{
margin-right: 20px;
} */
}
.dialog-left{
margin-left: 20px;
width: 20%;
}
.dialog-right{
margin-top: 25px;
margin-left: 20px;
width: 80%;
}
.right-title{
display: flex;
flex-direction: row; /* 横向排列 */
justify-content: flex-end;
margin-bottom: 10px;
}
/* width: 100%;
.dialog-left {
margin-left: 20px;
width: 20%;
}
.dialog-right {
/* margin-top: 25px;
margin-left: 20px; */
width: 80%;
}
.right-title {
height: 32px;
display: flex;
flex-direction: row;
/* 横向排列 */
justify-content: flex-end;
/* margin-bottom: 10px; */
}
/* width: 100%;
height: auto;
background: #fff;
border-radius: 4px;