This commit is contained in:
caozehui
2025-08-26 15:39:58 +08:00
parent ac4e0e2077
commit d7f1224df4
4 changed files with 236 additions and 219 deletions

View File

@@ -1,6 +1,5 @@
import { pa } from 'element-plus/es/locale/index.mjs'
import http from '@/api'
import { CheckData } from '@/api/check/interface'
import {CheckData} from '@/api/check/interface'
export const getBigTestItem = (params: {
reCheckType: number
@@ -8,7 +7,7 @@ export const getBigTestItem = (params: {
devIds: string[]
patternId: string
}) => {
return http.post(`/adPlan/getBigTestItem`, params, { loading: false })
return http.post(`/adPlan/getBigTestItem`, params, {loading: false})
}
/**
@@ -21,7 +20,7 @@ export const getFormData = (params: {
chnNum: string
scriptType: string | null
}) => {
return http.post('/result/formContent/', params, { loading: false })
return http.post('/result/formContent/', params, {loading: false})
}
/**
@@ -35,7 +34,7 @@ export const getTreeData = (params: {
scriptType?: string | null
code?: string
}) => {
return http.post<CheckData.TreeItem[]>('/result/treeData/', params, { loading: false })
return http.post<CheckData.TreeItem[]>('/result/treeData/', params, {loading: false})
}
/**
@@ -50,7 +49,7 @@ export const getTableData = (params: {
code: string
index: number
}) => {
return http.post('/result/resultData/', params, { loading: false })
return http.post('/result/resultData/', params, {loading: false})
}
export const exportRawData = (params: {
@@ -61,7 +60,7 @@ export const exportRawData = (params: {
code: string
index: number
}) => {
return http.download('/result/exportRawData', params, { loading: false })
return http.download('/result/exportRawData', params, {loading: false})
}
/**
@@ -75,7 +74,7 @@ export const reCalculate = (params: {
deviceId: string
code: string
}) => {
return http.post('/result/reCalculate', params, { loading: true })
return http.post('/result/reCalculate', params, {loading: true})
}
/**
* 获取数据获取基本信息
@@ -85,10 +84,10 @@ export const getContrastFormContent = (params: {
planId: string
scriptType: string
deviceId: string
chnNum: string | number
num: number | string | null
chnNum: string
num: number | null
}) => {
return http.post('/result/getContrastFormContent', params, { loading: false })
return http.post('/result/getContrastFormContent', params, {loading: false})
}
/**
* 获取检测结果
@@ -101,7 +100,7 @@ export const getContrastResult = (params: {
chnNum: string | number
num: number | string | null
}) => {
return http.post('/result/getContrastResult', params, { loading: true })
return http.post('/result/getContrastResult', params, {loading: true})
}
/**
@@ -115,7 +114,7 @@ export const changeErrorSystem = (params: {
deviceId: string
code: string
}) => {
return http.post('/result/changeErrorSystem', params, { loading: true })
return http.post('/result/changeErrorSystem', params, {loading: true})
}
/**
@@ -123,5 +122,5 @@ export const changeErrorSystem = (params: {
* @param code
*/
export const deleteTempTable = (code: string) => {
return http.get(`/result/deleteTempTable?code=${code}`, null, { loading: false })
return http.get(`/result/deleteTempTable?code=${code}`, null, {loading: false})
}

View File

@@ -1,32 +1,32 @@
<template>
<div class="table-main">
<el-table
:data="prop.tableData"
stripe
border
:header-cell-style="{ textAlign: 'center' }"
:cell-style="{ textAlign: 'center' }"
height="368px"
style="width: 100%"
>
<el-table-column type="index" label="序号" width="70" fixed="left" />
<div class="table-main">
<el-table
:data="prop.tableData"
stripe
border
:header-cell-style="{ textAlign: 'center' }"
:cell-style="{ textAlign: 'center' }"
height="368px"
style="width: 100%"
>
<el-table-column type="index" label="序号" width="70" fixed="left"/>
<el-table-column prop="dataA" :label="'被检设备'">
<el-table-column prop="timeDev" label="数据时间" width="200" />
<el-table-column prop="uaDev" :label="'A相'" v-if="prop.tableData.length==0||prop.tableData[0]?.uaDev != null" />
<el-table-column prop="ubDev" :label="setB" v-if="prop.tableData.length==0||prop.tableData[0]?.ubDev != null" />
<el-table-column prop="ucDev" :label="'C相'" v-if="prop.tableData.length==0||prop.tableData[0]?.ucDev != null" />
<el-table-column prop="utDev" :label="'T相'" v-if="prop.tableData[0]?.utDev != null" />
</el-table-column>
<el-table-column prop="dataA" :label="'标准设备'">
<el-table-column prop="timeStdDev" label="数据时间" width="200" />
<el-table-column prop="uaStdDev" :label="'A相'" v-if="prop.tableData.length==0||prop.tableData[0]?.uaStdDev != null" />
<el-table-column prop="ubStdDev" :label="setB" v-if="prop.tableData.length==0||prop.tableData[0]?.ubStdDev != null" />
<el-table-column prop="ucStdDev" :label="'C相'" v-if="prop.tableData.length==0||prop.tableData[0]?.ucStdDev != null" />
<el-table-column prop="utStdDev" :label="'T相'" v-if="prop.tableData[0]?.utStdDev != null" />
</el-table-column>
</el-table>
</div>
<el-table-column prop="dataA" :label="'被检设备'">
<el-table-column prop="timeDev" label="数据时间" width="200"/>
<el-table-column prop="uaDev" :label="'A相'+(outerUnit==''?'':''+outerUnit+'')" v-if="prop.tableData.length==0||prop.tableData[0]?.uaDev != null"/>
<el-table-column prop="ubDev" :label="setB+(outerUnit==''?'':''+outerUnit+'')" v-if="prop.tableData.length==0||prop.tableData[0]?.ubDev != null"/>
<el-table-column prop="ucDev" :label="'C相'+(outerUnit==''?'':''+outerUnit+'')" v-if="prop.tableData.length==0||prop.tableData[0]?.ucDev != null"/>
<el-table-column prop="utDev" :label="setT+(outerUnit==''?'':''+outerUnit+'')" v-if="prop.tableData[0]?.utDev != null"/>
</el-table-column>
<el-table-column prop="dataA" :label="'标准设备'">
<el-table-column prop="timeStdDev" label="数据时间" width="200"/>
<el-table-column prop="uaStdDev" :label="'A相'+(outerUnit==''?'':''+outerUnit+'')" v-if="prop.tableData.length==0||prop.tableData[0]?.uaStdDev != null"/>
<el-table-column prop="ubStdDev" :label="setB+(outerUnit==''?'':''+outerUnit+'')" v-if="prop.tableData.length==0||prop.tableData[0]?.ubStdDev != null"/>
<el-table-column prop="ucStdDev" :label="'C相'+(outerUnit==''?'':''+outerUnit+'')" v-if="prop.tableData.length==0||prop.tableData[0]?.ucStdDev != null"/>
<el-table-column prop="utStdDev" :label="setT+(outerUnit==''?'':''+outerUnit+'')" v-if="prop.tableData[0]?.utStdDev != null"/>
</el-table-column>
</el-table>
</div>
</template>
<script lang="tsx" setup>
@@ -43,13 +43,21 @@ const prop = defineProps({
default: ''
}
})
const outerUnit = computed(() => {
return prop.tableData.length > 0 ? prop.tableData[0].unit : '';
})
const setB = computed(() => {
return prop.currentCheckItem == '三相电流不平衡度'
? '三相电流不平衡度'
: prop.currentCheckItem == '三相电压不平衡度'
return prop.currentCheckItem == '三相电流不平衡度'
? '三相电流不平衡度'
: prop.currentCheckItem == '三相电压不平衡度'
? '三相电压不平衡度'
: 'B相'
})
const setT = computed(() => {
return prop.currentCheckItem == '频率' ? '频率' : 'T相'
})
</script>
<style scoped></style>

View File

@@ -1,153 +1,162 @@
<template>
<div class="table-main">
<el-table
:data="prop.tableData"
height="368px"
:header-cell-style="{ textAlign: 'center' }"
:cell-style="{ textAlign: 'center' }"
>
<el-table-column type="index" label="序号" width="70" fixed="left" />
<el-table-column label="A相" v-if="prop.tableData.length==0|| prop.tableData[0]?.dataA">
<el-table-column prop="stdA" :label="'被检值'">
<template #default="{ row }">
{{ row.dataA.data }}
</template>
</el-table-column>
<el-table-column prop="dataA" :label="'标准值'">
<template #default="{ row }">
{{ row.dataA.resultData }}
</template>
</el-table-column>
<el-table-column prop="isDataA" label="检测结果">
<template #default="{ row }">
<el-tooltip effect="dark" placement="bottom">
<template #content>
误差范围{{ addPercentSigns(row.dataA.radius, row.dataA.unit) }}
<br />
误差值{{ row.dataA.errorData }}
</template>
<el-tag type="success" v-if="row.dataA.isData === 1">符合</el-tag>
<el-tag type="danger" v-if="row.dataA.isData === 2">不符合</el-tag>
<el-tag type="warning" v-if="row.dataA.isData === 4">/</el-tag>
<el-tag type="info" v-if="row.dataA.isData === 5">-</el-tag>
</el-tooltip>
</template>
</el-table-column>
</el-table-column>
<el-table-column :label="setB" v-if="prop.tableData.length==0|| prop.tableData[0]?.dataB">
<el-table-column prop="stdB" :label="'被检值'">
<template #default="{ row }">
{{ row.dataB.data }}
</template>
</el-table-column>
<el-table-column prop="dataB" :label="'标准值'">
<template #default="{ row }">
{{ row.dataB.resultData }}
</template>
</el-table-column>
<el-table-column prop="isDataB" label="检测结果">
<template #default="{ row }">
<el-tooltip effect="dark" placement="bottom">
<template #content>
误差范围{{ addPercentSigns(row.dataB.radius, row.dataB.unit) }}
<br />
误差值{{ row.dataB.errorData }}
</template>
<el-tag type="success" v-if="row.dataB.isData === 1">符合</el-tag>
<el-tag type="danger" v-if="row.dataB.isData === 2">不符合</el-tag>
<el-tag type="warning" v-if="row.dataB.isData === 4">/</el-tag>
<el-tag type="info" v-if="row.dataB.isData === 5">-</el-tag>
</el-tooltip>
</template>
</el-table-column>
</el-table-column>
<el-table-column label="C相" v-if="prop.tableData.length==0|| prop.tableData[0]?.dataC">
<el-table-column prop="stdC" :label="'被检值'">
<template #default="{ row }">
{{ row.dataC.data }}
</template>
</el-table-column>
<el-table-column prop="dataC" :label="'标准值'">
<template #default="{ row }">
{{ row.dataC.resultData }}
</template>
</el-table-column>
<el-table-column prop="isDataC" label="检测结果">
<template #default="{ row }">
<el-tooltip effect="dark" placement="bottom">
<template #content>
误差范围{{ addPercentSigns(row.dataC.radius, row.dataC.unit) }}
<br />
误差值{{ row.dataC.errorData }}
</template>
<el-tag type="success" v-if="row.dataC.isData === 1">符合</el-tag>
<el-tag type="danger" v-if="row.dataC.isData === 2">不符合</el-tag>
<el-tag type="warning" v-if="row.dataC.isData === 4">/</el-tag>
<el-tag type="info" v-if="row.dataC.isData === 5">-</el-tag>
</el-tooltip>
</template>
</el-table-column>
</el-table-column>
<el-table-column label="T" v-if="prop.tableData[0]?.dataT">
<el-table-column prop="stdT" :label="'被检值'">
<template #default="{ row }">
{{ row.dataT.data }}
</template>
</el-table-column>
<el-table-column prop="dataT" :label="'标准值'">
<template #default="{ row }">
{{ row.dataT.resultData }}
</template>
</el-table-column>
<el-table-column prop="isDataT" label="检测结果">
<template #default="{ row }">
<el-tooltip effect="dark" placement="bottom">
<template #content>
误差范围{{ addPercentSigns(row.dataT.radius, row.dataT.unit) }}
<br />
误差值{{ row.dataT.errorData }}
</template>
<el-tag type="success" v-if="row.dataT.isData === 1">符合</el-tag>
<el-tag type="danger" v-if="row.dataT.isData === 2">不符合</el-tag>
<el-tag type="warning" v-if="row.dataT.isData === 4">/</el-tag>
<el-tag type="info" v-if="row.dataT.isData === 5">-</el-tag>
</el-tooltip>
</template>
</el-table-column>
</el-table-column>
</el-table>
</div>
<div class="table-main">
<el-table
:data="prop.tableData"
height="368px"
:header-cell-style="{ textAlign: 'center' }"
:cell-style="{ textAlign: 'center' }"
>
<el-table-column type="index" label="序号" width="70" fixed="left" />
<el-table-column label="A相" v-if="prop.tableData.length==0|| prop.tableData[0]?.dataA">
<el-table-column prop="stdA" :label="'被检值'+(outerUnit==''?'':''+outerUnit+'')">
<template #default="{ row }">
{{ row.dataA.data }}
</template>
</el-table-column>
<el-table-column prop="dataA" :label="'标准值'+(outerUnit==''?'':''+outerUnit+'')">
<template #default="{ row }">
{{ row.dataA.resultData }}
</template>
</el-table-column>
<el-table-column prop="isDataA" label="检测结果">
<template #default="{ row }">
<el-tooltip effect="dark" placement="bottom">
<template #content>
误差范围{{ addPercentSigns(row.dataA.radius, row.dataA.unit) }}
<br/>
误差值{{ row.dataA.errorData }}{{ row.dataA.unit }}
</template>
<el-tag type="success" v-if="row.dataA.isData === 1">符合</el-tag>
<el-tag type="danger" v-if="row.dataA.isData === 2">不符合</el-tag>
<el-tag type="warning" v-if="row.dataA.isData === 4">/</el-tag>
<el-tag type="info" v-if="row.dataA.isData === 5">-</el-tag>
</el-tooltip>
</template>
</el-table-column>
</el-table-column>
<el-table-column :label="setB" v-if="prop.tableData.length==0|| prop.tableData[0]?.dataB">
<el-table-column prop="stdB" :label="'被检值'+(outerUnit==''?'':''+outerUnit+'')">
<template #default="{ row }">
{{ row.dataB.data }}
</template>
</el-table-column>
<el-table-column prop="dataB" :label="'标准值'+(outerUnit==''?'':''+outerUnit+'')">
<template #default="{ row }">
{{ row.dataB.resultData }}
</template>
</el-table-column>
<el-table-column prop="isDataB" label="检测结果">
<template #default="{ row }">
<el-tooltip effect="dark" placement="bottom">
<template #content>
误差范围{{ addPercentSigns(row.dataB.radius, row.dataB.unit) }}
<br/>
误差值{{ row.dataB.errorData }}{{ row.dataB.unit }}
</template>
<el-tag type="success" v-if="row.dataB.isData === 1">符合</el-tag>
<el-tag type="danger" v-if="row.dataB.isData === 2">不符合</el-tag>
<el-tag type="warning" v-if="row.dataB.isData === 4">/</el-tag>
<el-tag type="info" v-if="row.dataB.isData === 5">-</el-tag>
</el-tooltip>
</template>
</el-table-column>
</el-table-column>
<el-table-column label="C相" v-if="prop.tableData.length==0|| prop.tableData[0]?.dataC">
<el-table-column prop="stdC" :label="'被检值'+(outerUnit==''?'':''+outerUnit+'')">
<template #default="{ row }">
{{ row.dataC.data }}
</template>
</el-table-column>
<el-table-column prop="dataC" :label="'标准值'+(outerUnit==''?'':''+outerUnit+'')">
<template #default="{ row }">
{{ row.dataC.resultData }}
</template>
</el-table-column>
<el-table-column prop="isDataC" label="检测结果">
<template #default="{ row }">
<el-tooltip effect="dark" placement="bottom">
<template #content>
误差范围{{ addPercentSigns(row.dataC.radius, row.dataC.unit) }}
<br/>
误差值{{ row.dataC.errorData }}{{ row.dataC.unit }}
</template>
<el-tag type="success" v-if="row.dataC.isData === 1">符合</el-tag>
<el-tag type="danger" v-if="row.dataC.isData === 2">不符合</el-tag>
<el-tag type="warning" v-if="row.dataC.isData === 4">/</el-tag>
<el-tag type="info" v-if="row.dataC.isData === 5">-</el-tag>
</el-tooltip>
</template>
</el-table-column>
</el-table-column>
<el-table-column :label="setT" v-if="prop.tableData[0].dataT">
<el-table-column prop="stdT" :label="'被检值'+(outerUnit==''?'':''+outerUnit+'')">
<template #default="{ row }">
{{ row.dataT.data }}
</template>
</el-table-column>
<el-table-column prop="dataT" :label="'标准值'+(outerUnit==''?'':''+outerUnit+'')">
<template #default="{ row }">
{{ row.dataT.resultData }}
</template>
</el-table-column>
<el-table-column prop="isDataT" label="检测结果">
<template #default="{ row }">
<el-tooltip effect="dark" placement="bottom">
<template #content>
误差范围{{ addPercentSigns(row.dataT.radius, row.dataT.unit) }}
<br/>
误差值{{ row.dataT.errorData }}{{ row.dataT.unit }}
</template>
<el-tag type="success" v-if="row.dataT.isData === 1">符合</el-tag>
<el-tag type="danger" v-if="row.dataT.isData === 2">不符合</el-tag>
<el-tag type="warning" v-if="row.dataT.isData === 4">/</el-tag>
<el-tag type="info" v-if="row.dataT.isData === 5">-</el-tag>
</el-tooltip>
</template>
</el-table-column>
</el-table-column>
</el-table>
</div>
</template>
<script lang="tsx" setup>
import { computed } from 'vue'
import { CheckData } from '@/api/check/interface'
import {computed} from 'vue'
import {CheckData} from '@/api/check/interface'
const prop = defineProps({
tableData: {
type: Array as () => CheckData.TableRow[],
default: []
},
currentCheckItem: {
type: String,
default: ''
}
tableData: {
type: Array as () => CheckData.TableRow[],
default: []
},
currentCheckItem: {
type: String,
default: ''
}
})
// 添加单位
const outerUnit = computed(() => {
return prop.tableData.length > 0 ? prop.tableData[0].unit : '';
})
const addPercentSigns = (text: string, unit: string) => {
return text
.split('~')
.map(part => `${part}${unit}`)
.join('~')
return text
.split('~')
.map(part => `${part}${unit}`)
.join('~')
}
const setB = computed(() => {
return prop.currentCheckItem == '三相电流不平衡度'
? '三相电流不平衡度'
: prop.currentCheckItem == '三相电压不平衡度'
return prop.currentCheckItem == '三相电流不平衡度'
? '三相电流不平衡度'
: prop.currentCheckItem == '三相电压不平衡度'
? '三相电压不平衡度'
: 'B相'
})
const setT = computed(() => {
return prop.currentCheckItem == '频率' ? '频率' : 'T相'
})
</script>
<style scoped>

View File

@@ -214,7 +214,7 @@ const open = async (row: any, chnNum: string, deviceId: string | null, source: n
// 查询大项树
const initScriptData = async (row: any) => {
const pattern = dictStore.getDictData('Pattern').find(item => item.name === modeStore.currentMode)?.id ?? ''
let response: any = await getBigTestItem({
reCheckType: checkStore.reCheckType,
planId: checkStore.plan.id,
@@ -238,27 +238,27 @@ const initScriptData = async (row: any) => {
}
//获取基本信息
const getBasicInformation = async () => {
getContrastFormContent({
planId: checkStore.plan.id,
scriptType: rowList.value.scriptType,
deviceId: formContent.deviceId,
chnNum: formContent.chnNum,
num: formContent.num ?? null
}).then((res: any) => {
formContent.dataRule = res.data.dataRule
formContent.deviceName = res.data.deviceName
formContent.errorSysId = res.data.errorSysId
chnMapList.value = res.data.chnMap
formContent.num = res.data.checkNum
let chnMap: string[] = []
for (let key in res.data.chnMap) {
chnMap.push(key)
}
chnList.value = chnMap
formContent.chnNum = formContent.chnNum == null ? chnList.value[0] : formContent.chnNum
// 查询表格数据
getResults()
})
getContrastFormContent({
planId: checkStore.plan.id,
scriptType: rowList.value.scriptType,
deviceId: formContent.deviceId,
chnNum: formContent.chnNum,
num: formContent.num == '' ? null : parseInt(formContent.num)
}).then((res: any) => {
formContent.dataRule = res.data.dataRule
formContent.deviceName = res.data.deviceName
formContent.errorSysId = res.data.errorSysId
chnMapList.value = res.data.chnMap
formContent.num = res.data.checkNum
let chnMap: string[] = []
for (let key in res.data.chnMap) {
chnMap.push(key)
}
chnList.value = chnMap
formContent.chnNum = formContent.chnNum == null ? chnList.value[0] : formContent.chnNum
// 查询表格数据
getResults()
})
}
// 左边树变化
@@ -269,24 +269,25 @@ const handleNodeClick = (data: any) => {
}
// 获取结果
const getResults = async () => {
checkResultData.value = []
rawTableData.value = []
getContrastResult({
planId: checkStore.plan.id,
scriptType: rowList.value.scriptType,
deviceId: formContent.deviceId,
chnNum: formContent.chnNum,
num: formContent.num == '' ? null : formContent.num
}).then((res: any) => {
let list: string[] = []
for (let key in res.data.resultMap) {
list.push(key)
}
currentCheckItem.value = list[0]
tesList.value = list
checkResultData.value = res.data.resultMap
rawTableData.value = res.data.rawDataMap
})
checkResultData.value = []
rawTableData.value = []
getContrastResult({
planId: checkStore.plan.id,
scriptType: rowList.value.scriptType,
deviceId: formContent.deviceId,
chnNum: formContent.chnNum,
num: formContent.num == '' ? null : formContent.num
}).then((res: any) => {
let list: string[] = []
for (let key in res.data.resultMap) {
list.push(key)
}
currentCheckItem.value = list[0]
tesList.value = list
checkResultData.value = res.data.resultMap
rawTableData.value = res.data.rawDataMap
})
}
const close = () => {