系数校准

This commit is contained in:
sjl
2024-12-30 14:43:13 +08:00
parent 6ce58e86ad
commit d76b055730
13 changed files with 1208 additions and 424 deletions

View File

@@ -6,57 +6,160 @@
style="width: 100%"
max-height="400px"
:span-method="objectSpanMethod">
<el-table-column prop="MonitorIdx" label="监测点序号"/>
<el-table-column prop="MonitorIdx" label="监测点序号" width="80"/>
<!-- <el-table-column prop="updateTime" label="上送时刻" width="180"/> -->
<!-- <el-table-column prop="deviceName" label="描述" /> -->
<el-table-column prop="deviceName" label="描述" width="90"/>
<el-table-column label="电压通道" >
<el-table-column prop="Ua" label="L1">
<el-table-column prop="UaData" label="数据(V)"/>
<el-table-column prop="UaData" label="数据(V)">
<template #default="scope">
<el-icon v-if="scope.row.UaData === '—'&& loading">
<el-icon-loading />
</el-icon>
<span v-else>
{{ scope.row.UaData }}
</span>
</template>
</el-table-column>
<el-table-column prop="UaChannel" label="系数">
<template #default="scope">
<el-tag type="danger" v-if="scope.row.UaChannel === '不合格'">{{ scope.row.UaChannel }}</el-tag>
<el-tag type="danger" v-if="scope.row.UaChannel === '不合格'">
{{ scope.row.UaChannel }}
</el-tag>
<el-icon v-else-if="scope.row.UaChannel === '—'&& loading">
<el-icon-loading />
</el-icon>
<span v-else>
{{ scope.row.UaChannel }}
</span>
<!-- <el-tag type="danger" v-if="scope.row.UaChannel === '不合格'">{{ scope.row.UaChannel }}</el-tag> -->
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="Ub" label="L2">
<el-table-column prop="UbData" label="数据(V)"/>
<el-table-column prop="UbData" label="数据(V)">
<template #default="scope">
<el-icon v-if="scope.row.UbData === '—'&& loading">
<el-icon-loading />
</el-icon>
<span v-else>
{{ scope.row.UbData }}
</span>
</template>
</el-table-column>
<el-table-column prop="UbChannel" label="系数">
<template #default="scope">
<el-tag type="danger" v-if="scope.row.UbChannel === '不合格'">{{ scope.row.UbChannel }}</el-tag>
<el-tag type="danger" v-if="scope.row.UbChannel === '不合格'">
{{ scope.row.UbChannel }}
</el-tag>
<el-icon v-else-if="scope.row.UbChannel === '—'&& loading">
<el-icon-loading />
</el-icon>
<span v-else>
{{ scope.row.UbChannel }}
</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="Uc" label="L3">
<el-table-column prop="UcData" label="数据(V)"/>
<el-table-column prop="UcData" label="数据(V)">
<template #default="scope">
<el-icon v-if="scope.row.UcData === '—'&& loading">
<el-icon-loading />
</el-icon>
<span v-else>
{{ scope.row.UcData }}
</span>
</template>
</el-table-column>
<el-table-column prop="UcChannel" label="系数">
<template #default="scope">
<el-tag type="danger" v-if="scope.row.UcChannel === '不合格'">{{ scope.row.UcChannel }}</el-tag>
<el-tag type="danger" v-if="scope.row.UcChannel === '不合格'">
{{ scope.row.UcChannel }}
</el-tag>
<el-icon v-else-if="scope.row.UcChannel === '—'&& loading">
<el-icon-loading />
</el-icon>
<span v-else>
{{ scope.row.UcChannel }}
</span>
</template>
</el-table-column>
</el-table-column>
</el-table-column>
<el-table-column label="电流通道" >
<el-table-column prop="Ia" label="L1">
<el-table-column prop="IaData" label="数据(A)"/>
<el-table-column prop="IaData" label="数据(A)">
<template #default="scope">
<el-icon v-if="scope.row.IaData === '—'&& loading">
<el-icon-loading />
</el-icon>
<span v-else>
{{ scope.row.IaData }}
</span>
</template>
</el-table-column>
<el-table-column prop="IaChannel" label="系数">
<template #default="scope">
<el-tag type="danger" v-if="scope.row.IaChannel === '不合格'">{{ scope.row.IaChannel }}</el-tag>
<el-tag type="danger" v-if="scope.row.IaChannel === '不合格'">
{{ scope.row.IaChannel }}
</el-tag>
<el-icon v-else-if="scope.row.IaChannel === '—'&& loading">
<el-icon-loading />
</el-icon>
<span v-else>
{{ scope.row.IaChannel }}
</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="Ib" label="L2">
<el-table-column prop="IbData" label="数据(A)"/>
<el-table-column prop="IbData" label="数据(A)">
<template #default="scope">
<el-icon v-if="scope.row.IbData === '—'&& loading">
<el-icon-loading />
</el-icon>
<span v-else>
{{ scope.row.IbData }}
</span>
</template>
</el-table-column>
<el-table-column prop="IbChannel" label="系数">
<template #default="scope">
<el-tag type="danger" v-if="scope.row.IbChannel === '不合格'">{{ scope.row.IbChannel }}</el-tag>
<el-tag type="danger" v-if="scope.row.IbChannel === '不合格'">
{{ scope.row.IbChannel }}
</el-tag>
<el-icon v-else-if="scope.row.IbChannel === '—'&& loading">
<el-icon-loading />
</el-icon>
<span v-else>
{{ scope.row.IbChannel }}
</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="Ic" label="L3">
<el-table-column prop="IcData" label="数据(A)"/>
<el-table-column prop="IcData" label="数据(A)">
<template #default="scope">
<el-icon v-if="scope.row.IcData === '—'&& loading">
<el-icon-loading />
</el-icon>
<span v-else>
{{ scope.row.IcData }}
</span>
</template>
</el-table-column>
<el-table-column prop="IcChannel" label="系数">
<template #default="scope">
<el-tag type="danger" v-if="scope.row.IcChannel === '不合格'">{{ scope.row.IcChannel }}</el-tag>
<el-tag type="danger" v-if="scope.row.IcChannel === '不合格'">
{{ scope.row.IcChannel }}
</el-tag>
<el-icon v-else-if="scope.row.IcChannel === '—'&& loading">
<el-icon-loading />
</el-icon>
<span v-else>
{{ scope.row.IcChannel }}
</span>
</template>
</el-table-column>
</el-table-column>
@@ -74,35 +177,35 @@
<script lang="ts" setup name="ErrorSystemDialog">
import { defineProps, defineEmits, reactive,watch,ref, Ref } from 'vue';
import { ElIcon, ElLoading, ElTag } from 'element-plus';
//import IndicatorTypeDialog from "@/views/machine/errorSystem/components/IndicatorTypeDialog.vue"; // 导入子组件
import {CirclePlus, Delete, EditPen,FolderOpened,CopyDocument} from '@element-plus/icons-vue'
import { useDictStore } from '@/stores/modules/dict'
const dictStore = useDictStore()
const props = defineProps<{
tableData: Array<{
id: string;
updateTime: string;
deviceName:string;
MonitorIdx:number;
UaData:number;
UaChannel:string;
UbData:number;
UbChannel:string;
UcData:number;
UcChannel:string;
IaData:number;
IaChannel:string;
IbData:number;
IbChannel:string;
IcData:number;
IcChannel:string;
Result: string;
deviceName?: string;
MonitorIdx: number;
UaData?: number | string;
UaChannel?: number | string;
UbData?: number | string;
UbChannel?: number | string;
UcData?: number | string;
UcChannel?: number | string;
IaData?: number | string;
IaChannel?: number | string;
IbData?: number | string;
IbChannel?: number | string;
IcData?: number | string;
IcChannel?: number | string;
Result?: string | string;
updateTime?: string;
}>
loading: boolean; // 定义 loading 属性
}>();
function objectSpanMethod({ row, column, rowIndex, columnIndex }: { row: any, column: any, rowIndex: number, columnIndex: number }) {
if (columnIndex === 0) {
if (rowIndex === 0 || rowIndex === 4 || rowIndex === 8 || rowIndex === 12) {
if (rowIndex % 4 === 0) {
return {
rowspan: 4,
colspan: 1,
@@ -114,6 +217,19 @@
};
}
}
if (columnIndex === 1) {
if (rowIndex % 2 === 0) {
return {
rowspan: 2,
colspan: 1,
};
} else {
return {
rowspan: 0,
colspan: 0,
};
}
}
}
// const tableData = ref([
@@ -171,6 +287,11 @@
// },
// ])
// 监听 tableData 的变化
</script>
<style scoped>
@@ -205,4 +326,6 @@
overflow-y: auto; /* 允许垂直滚动 */
overflow-x: hidden; /* 隐藏水平滚动条 */
}
</style>