Files
pqs-9100_client/frontend/src/views/home/components/dataCheckResultTable.vue

157 lines
6.0 KiB
Vue
Raw Normal View History

<template>
2024-12-18 15:56:59 +08:00
<div class="table-main">
2025-01-06 19:20:36 +08:00
<el-table v-if="tableData.length > 0" :data="tableData" height="335px" :header-cell-style="{ textAlign: 'center' } "
2024-12-18 15:56:59 +08:00
:cell-style="{ textAlign: 'center' }">
2025-01-06 08:51:14 +08:00
<!-- <el-table-column prop="chnNum" label="通道号" width="80">-->
<!-- <template #default="{row}">-->
<!-- {{ '通道' + row.chnNum }}-->
<!-- </template>-->
<!-- </el-table-column>-->
2025-01-07 11:19:33 +08:00
<template v-if="phaseT === 0">
2024-12-31 14:27:36 +08:00
<el-table-column :label="`A${unit}`">
2025-01-08 14:33:47 +08:00
<el-table-column prop="stdA" width="100" label="标准值"/>
<el-table-column prop="dataA" width="100" label="被检值"/>
2025-01-07 14:54:44 +08:00
<el-table-column prop="isDataA" label="检测结果">
2025-01-07 11:19:33 +08:00
<template #default="scope">
2025-01-07 14:54:44 +08:00
<el-tooltip effect="dark" placement="bottom">
<template #content>
2025-01-08 14:33:47 +08:00
最大误差{{ maxErrorStr }}<br/>
误差值{{ scope.row.errorA }} {{ scope.row.errorA !== '/' ? unit : '' }}
2025-01-07 14:54:44 +08:00
</template>
2025-01-07 17:34:15 +08:00
<el-tag type="success" v-if="scope.row.isDataA === 1">符合</el-tag>
2025-01-07 14:54:44 +08:00
<el-tag type="danger" v-if="scope.row.isDataA === 2">不符合</el-tag>
<span v-if="scope.row.isDataA === 4">/</span>
</el-tooltip>
2025-01-07 11:19:33 +08:00
</template>
</el-table-column>
2024-12-18 15:56:59 +08:00
</el-table-column>
2024-12-31 14:27:36 +08:00
<el-table-column :label="`B${unit}`">
2025-01-08 14:33:47 +08:00
<el-table-column prop="stdB" width="100" label="标准值"/>
<el-table-column prop="dataB" width="100" label="被检值"/>
2025-01-07 14:54:44 +08:00
<el-table-column prop="isDataB" label="检测结果">
2025-01-07 11:19:33 +08:00
<template #default="scope">
2025-01-07 14:54:44 +08:00
<el-tooltip effect="dark" placement="bottom">
<template #content>
2025-01-08 14:33:47 +08:00
最大误差{{ maxErrorStr }}<br/>
误差值{{ scope.row.errorB }} {{ scope.row.errorB !== '/' ? unit : '' }}
2025-01-07 14:54:44 +08:00
</template>
2025-01-07 17:34:15 +08:00
<el-tag type="success" v-if="scope.row.isDataB === 1">符合</el-tag>
2025-01-07 14:54:44 +08:00
<el-tag type="danger" v-if="scope.row.isDataB === 2">不符合</el-tag>
<span v-if="scope.row.isDataB === 4">/</span>
</el-tooltip>
2025-01-07 11:19:33 +08:00
</template>
</el-table-column>
2024-12-18 15:56:59 +08:00
</el-table-column>
2024-12-31 14:27:36 +08:00
<el-table-column :label="`C${unit}`">
2025-01-08 14:33:47 +08:00
<el-table-column prop="stdC" width="100" label="标准值"/>
<el-table-column prop="dataC" width="100" label="被检值"/>
2025-01-07 14:54:44 +08:00
<el-table-column prop="isDataC" label="检测结果">
2025-01-07 11:19:33 +08:00
<template #default="scope">
2025-01-07 14:54:44 +08:00
<el-tooltip effect="dark" placement="bottom">
<template #content>
2025-01-08 14:33:47 +08:00
最大误差 {{ maxErrorStr }}<br/>
误差值{{ scope.row.errorC }} {{ scope.row.errorC !== '/' ? unit : '' }}
2025-01-07 14:54:44 +08:00
</template>
2025-01-07 17:34:15 +08:00
<el-tag type="success" v-if="scope.row.isDataC === 1">符合</el-tag>
2025-01-07 14:54:44 +08:00
<el-tag type="danger" v-if="scope.row.isDataC === 2">不符合</el-tag>
<span v-if="scope.row.isDataC === 4">/</span>
</el-tooltip>
2025-01-07 11:19:33 +08:00
</template>
</el-table-column>
2024-12-18 15:56:59 +08:00
</el-table-column>
2024-12-31 14:27:36 +08:00
</template>
2025-01-06 08:51:14 +08:00
2025-01-07 11:19:33 +08:00
<template v-if="phaseT === 1">
2024-12-31 14:27:36 +08:00
<el-table-column :label="`T${unit}`">
2025-01-08 14:33:47 +08:00
<el-table-column prop="stdT" label="标准值"/>
<el-table-column prop="dataT" label="被检值"/>
<el-table-column prop="isDataT" label="检测结果">
2025-01-07 14:54:44 +08:00
<template #default="scope">
<el-tooltip effect="dark" placement="bottom">
<template #content>
2025-01-08 14:33:47 +08:00
最大误差 {{ maxErrorStr }}<br/>
误差值{{ scope.row.errorT }} {{ scope.row.errorT !== '/' ? unit : '' }}
2025-01-07 14:54:44 +08:00
</template>
2025-01-07 17:34:15 +08:00
<el-tag type="success" v-if="scope.row.isDataT === 1">符合</el-tag>
2025-01-07 14:54:44 +08:00
<el-tag type="danger" v-if="scope.row.isDataT === 2">不符合</el-tag>
<span v-if="scope.row.isDataT === 4">/</span>
</el-tooltip>
</template>
</el-table-column>
2024-12-18 15:56:59 +08:00
</el-table-column>
2025-01-07 14:54:44 +08:00
<!-- <el-table-column prop="maxError" label="最大误差"/>-->
<!-- <el-table-column prop="result" label="检测结果">-->
<!-- <template #default="scope">-->
<!-- <span v-if="scope.row.result === 1">符合</span>-->
<!-- <el-tag type="danger" v-if="scope.row.result === 2">不符合</el-tag>-->
<!-- <span v-if="scope.row.result === 4">/</span>-->
<!-- </template>-->
<!-- </el-table-column>-->
2024-12-31 14:27:36 +08:00
</template>
2024-12-18 15:56:59 +08:00
2025-01-06 14:50:36 +08:00
</el-table>
2024-12-18 15:56:59 +08:00
</div>
</template>
<script lang="tsx" setup>
2024-12-31 14:27:36 +08:00
import {defineProps} from 'vue';
2024-12-25 18:04:16 +08:00
import {CheckData} from "@/api/check/interface";
2024-12-18 15:56:59 +08:00
2024-12-31 14:27:36 +08:00
const {tableData} = defineProps<{
tableData: CheckData.CheckResult[],
2024-12-18 15:56:59 +08:00
}>();
2025-01-06 08:51:14 +08:00
2024-12-31 14:27:36 +08:00
const unit = computed(() => {
2025-01-06 19:20:36 +08:00
return tableData.length > 0 ? tableData[0].unit : '';
2024-12-31 14:27:36 +08:00
})
2025-01-07 11:19:33 +08:00
const phaseT = computed(() => {
2025-01-08 14:33:47 +08:00
return tableData[0].dataT == null || tableData[0].dataT == undefined ? 0 : 1
2024-12-31 14:27:36 +08:00
})
2025-01-08 14:33:47 +08:00
const maxErrorStr = computed((data) => {
let result = tableData[0].maxError ?? '/'
2025-01-07 17:34:15 +08:00
let idx = result.indexOf('~');
if (idx > 0) {
result = result.substring(0, idx) + unit.value + result.substring(idx, result.length) + unit.value;
}
return result;
})
2025-01-07 14:54:44 +08:00
</script>
<style scoped>
.form-grid {
2024-12-31 14:27:36 +08:00
display: flex;
flex-direction: row; /* 横向排列 */
flex-wrap: wrap; /* 允许换行 */
}
2024-12-31 14:27:36 +08:00
.form-grid .el-form-item {
2024-12-31 14:27:36 +08:00
flex: 1 1 30%; /* 控件宽度 */
margin-right: 20px; /* 控件间距 */
}
2024-12-31 14:27:36 +08:00
.form-grid .el-form-item:last-child {
2024-12-31 14:27:36 +08:00
margin-right: 0; /* 最后一个控件不需要右边距 */
}
2024-12-31 14:27:36 +08:00
.dialog-footer {
2024-12-31 14:27:36 +08:00
display: flex;
justify-content: flex-start;
margin-bottom: 10px; /* 调整这里的值以增加或减少间距 */
}
2024-12-31 14:27:36 +08:00
.el-tabs {
2024-12-31 14:27:36 +08:00
margin-bottom: 20px; /* 添加底部边距 */
}
.el-table th, .el-table td {
2024-12-31 14:27:36 +08:00
text-align: center; /* 所有单元格文字居中 */
}
</style>