This commit is contained in:
sjl
2025-12-10 11:17:25 +08:00
4 changed files with 71 additions and 34 deletions

View File

@@ -83,7 +83,8 @@ export const reCalculate = (params: {
deviceId: string
code: string
patternId: string,
chnNum: string
chnNum?: string,
dataRuleId: string
}) => {
return http.post('/result/reCalculate', params, {loading: true})
}
@@ -115,6 +116,7 @@ export const getContrastResult = (params: {
waveNum: number | null
isWave: boolean
patternId: string
code: string
}) => {
return http.post('/result/getContrastResult', params, {loading: true})
}
@@ -130,7 +132,8 @@ export const changeErrorSystem = (params: {
deviceId: string
code: string
patternId: string,
chnNum: string
chnNum?: string,
dataRuleId: string
}) => {
return http.post('/result/changeErrorSystem', params, {loading: true})
}

View File

@@ -18,7 +18,7 @@
v-model="formContent.errorSysId"
placeholder="请选择误差体系"
autocomplete="off"
@change="handleErrorSysChange"
@change="handleErrorSysChange('切换误差体系成功')"
>
<el-option
v-for="option in pqErrorList"
@@ -29,7 +29,20 @@
</el-select>
</el-form-item>
<el-form-item label="数据原则">
<el-input v-model="formContent.dataRule" :disabled="true" />
<!-- <el-input v-model="formContent.dataRule" :disabled="true" />-->
<el-select
:disabled="checkStore.showDetailType === 2 || checkStore.showDetailType === 0"
v-model="formContent.dataRule"
placeholder="请选择数据原则"
autocomplete="off"
@change="handleErrorSysChange('切换数据处理原则成功')">
<el-option
v-for="item in dictStore.getDictData('Data_Rule')"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
</el-form-item>
<el-form-item label="设备名称">
<el-input v-model="formContent.deviceName" :disabled="true" />
@@ -55,7 +68,7 @@
</el-select>
</el-form-item>
<el-form-item v-if="checkStore.showDetailType === 1">
<el-button type="primary" :icon="Postcard">报告生成</el-button>
<el-button type="primary" :icon="Postcard" @click="handleGenerateReport">报告生成</el-button>
</el-form-item>
<el-form-item v-if="checkStore.showDetailType === 0">
<el-button type="primary" :icon="Histogram" @click="handleReCalculate">重新计算</el-button>
@@ -182,7 +195,7 @@ import CompareDataCheckChart from './compareDataCheckChart.vue'
import { CheckData } from '@/api/check/interface'
import { useCheckStore } from '@/stores/modules/check'
import { Histogram, Postcard } from '@element-plus/icons-vue'
import { getPqErrSysList } from '@/api/plan/plan'
import {generateDevReport, getPqErrSysList} from '@/api/plan/plan'
import { useModeStore } from '@/stores/modules/mode' // 引入模式 store
import { useDictStore } from '@/stores/modules/dict'
import {
@@ -399,6 +412,7 @@ const getBasicInformation = async (scriptType: any) => {
})
formContent.dataRule = res.data.dataRule
console.log('formContent.dataRule',formContent.dataRule)
formContent.deviceName = res.data.deviceName
formContent.errorSysId = res.data.errorSysId
chnMapList.value = res.data.chnMap
@@ -514,6 +528,7 @@ const getResults = async (code: any) => {
// 判断是否为录波数据请求
const isWaveDataRequest = code === 'wave_data' || isWaveData.value
console.log(checkStore.plan)
getContrastResult({
planId: checkStore.plan.id,
scriptType: rowList.value.scriptType,
@@ -522,7 +537,8 @@ const getResults = async (code: any) => {
num: formContent.num == '' ? null : formContent.num,
waveNum: isWaveDataRequest ? waveNumber.value : null,
isWave: isWaveDataRequest,
patternId: pattern.value
patternId: pattern.value,
code: checkStore.plan.code + (formContent.errorSysId!=checkStore.plan.errorSysId || formContent.dataRule!=checkStore.plan.dataRule? '_temp':'')
}).then((res: any) => {
let list: string[] = []
for (let key in res.data.resultMap) {
@@ -563,7 +579,7 @@ const close = async () => {
}
}
const handleErrorSysChange = async () => {
const handleErrorSysChange = async (msg:string) => {
changeErrorSystem({
planId: checkStore.plan.id,
scriptId: '',
@@ -571,10 +587,11 @@ const handleErrorSysChange = async () => {
deviceId: formContent.deviceId,
code: checkStore.plan.code + '',
patternId: dictStore.getDictData('Pattern').find(item => item.name === modeStore.currentMode)?.id ?? '',
chnNum: formContent.chnNum
chnNum: formContent.chnNum,
dataRuleId: formContent.dataRule
}).then(res => {
if (res.code === ResultEnum.SUCCESS) {
ElMessage.success('切换误差体系成功')
ElMessage.success(msg)
handleChnNumChange(formContent.chnNum)
}
})
@@ -588,7 +605,8 @@ const handleReCalculate = async () => {
deviceId: formContent.deviceId,
code: checkStore.plan.code + '',
patternId: dictStore.getDictData('Pattern').find(item => item.name === modeStore.currentMode)?.id ?? '',
chnNum: formContent.chnNum
chnNum: formContent.chnNum,
dataRuleId: formContent.dataRule,
}).then(res => {
if (res.code === ResultEnum.SUCCESS) {
ElMessage.success('重新计算成功!')
@@ -597,6 +615,20 @@ const handleReCalculate = async () => {
})
}
const handleGenerateReport = async () => {
generateDevReport({
planId: checkStore.plan.id,
devIdList: [formContent.deviceId],
scriptId: checkStore.plan.scriptId,
planCode: checkStore.plan.code + (formContent.errorSysId!=checkStore.plan.errorSysId ? '_temp':'')
}).then(res => {
if (res.code === ResultEnum.SUCCESS) {
ElMessage.success({ message: `报告生成成功!` })
handleChnNumChange(formContent.chnNum)
}
})
}
defineExpose({
open
})

View File

@@ -22,7 +22,7 @@
v-model="formContent.errorSysId"
placeholder="请选择误差体系"
autocomplete="off"
@change="handleErrorSysChange"
@change="handleErrorSysChange('切换误差体系成功')"
>
<el-option
v-for="option in pqErrorList"
@@ -33,7 +33,20 @@
</el-select>
</el-form-item>
<el-form-item label="数据原则">
<el-input v-model="formContent.dataRule" :disabled="true" />
<!-- <el-input v-model="formContent.dataRule" :disabled="true" />-->
<el-select
:disabled="checkStore.showDetailType === 2 || checkStore.showDetailType === 0"
v-model="formContent.dataRule"
placeholder="请选择数据原则"
autocomplete="off"
@change="handleErrorSysChange('切换数据处理原则成功')">
<el-option
v-for="item in dictStore.getDictData('Data_Rule')"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
</el-form-item>
<el-form-item label="设备名称">
<el-input v-model="formContent.deviceName" :disabled="true" />
@@ -203,7 +216,6 @@ const formContent = reactive<CheckData.DataCheck>({
})
// 原始误差体系id
let originErrorSysId: string = ''
let planCode: string = ''
// 谐波次数列表
// const harmNumList = reactive<{ value: string, label: string }[]>([])
// 当前选中的检测项
@@ -273,7 +285,7 @@ const handleNodeClick = async (data: any) => {
}
}
const handleErrorSysChange = async () => {
const handleErrorSysChange = async (msg:string) => {
changeErrorSystem({
planId: checkStore.plan.id,
@@ -281,15 +293,11 @@ const handleErrorSysChange = async () => {
errorSysId: formContent.errorSysId,
deviceId: deviceId,
code: checkStore.plan.code + '',
patternId: dictStore.getDictData('Pattern').find(item => item.name === modeStore.currentMode)?.id ?? ''
patternId: dictStore.getDictData('Pattern').find(item => item.name === modeStore.currentMode)?.id ?? '',
dataRuleId: formContent.dataRule
}).then(res => {
if (res.code === ResultEnum.SUCCESS) {
ElMessage.success('切换误差体系成功')
if (originErrorSysId != formContent.errorSysId) {
planCode = checkStore.plan.code + '_temp'
} else {
planCode = checkStore.plan.code + ''
}
ElMessage.success(msg)
if (formContent.chnNum != chnList[0].value) {
formContent.chnNum = chnList[0].value
} else {
@@ -317,7 +325,7 @@ const handleChnNumChange = async () => {
devId: deviceId,
devNum: formContent.chnNum + '',
scriptType: originScriptType,
code: planCode
code: checkStore.plan.code + (formContent.errorSysId!=checkStore.plan.errorSysId || formContent.dataRule!=checkStore.plan.dataRule? '_temp':'')
})
updateTreeFly(resTreeDataTemp, 4)
updateTreeFly(resTreeDataTemp, 2)
@@ -379,7 +387,7 @@ const updateTableData = async () => {
scriptId: checkStore.plan.scriptId,
devId: deviceId,
devNum: formContent.chnNum + '',
code: planCode,
code: checkStore.plan.code + (formContent.errorSysId!=checkStore.plan.errorSysId || formContent.dataRule!=checkStore.plan.dataRule? '_temp':''),
index: parseInt(checkIndex.value)
})
@@ -473,7 +481,6 @@ const doCurrentCheckItemUpdate = (newVal: string) => {
}
const open = async (_deviceId: string, chnNum: string, _scriptType: string | null) => {
planCode = checkStore.plan.code + ''
deviceId = _deviceId
originScriptType = _scriptType
scriptType = _scriptType
@@ -510,7 +517,7 @@ const handleGenerateReport = async () => {
planId: checkStore.plan.id,
devIdList: [deviceId],
scriptId: checkStore.plan.scriptId,
planCode: planCode
planCode: checkStore.plan.code + (formContent.errorSysId!=checkStore.plan.errorSysId || formContent.dataRule!=checkStore.plan.dataRule? '_temp':'')
})
ElMessage.success({ message: `报告生成成功!` })
}
@@ -522,14 +529,10 @@ const handleReCalculate = async () => {
errorSysId: formContent.errorSysId,
deviceId: deviceId,
code: checkStore.plan.code + '',
patternId: dictStore.getDictData('Pattern').find(item => item.name === modeStore.currentMode)?.id ?? ''
patternId: dictStore.getDictData('Pattern').find(item => item.name === modeStore.currentMode)?.id ?? '',
dataRuleId: formContent.dataRule
}).then(res => {
ElMessage.success('重新计算成功!')
// if (originErrorSysId != formContent.errorSysId) {
// planCode = checkStore.plan.code + "_temp"
// } else {
// planCode = checkStore.plan.code + ''
// }
if (formContent.chnNum != chnList[0].value) {
formContent.chnNum = chnList[0].value
} else {
@@ -560,7 +563,6 @@ const close = async () => {
currentScriptTypeName.value = ''
currentDesc.value = ''
pqErrorList.length = 0
planCode = ''
visible.value = false

View File

@@ -262,7 +262,7 @@ const open = async (mapping : Record<string, Record<string, string>>,data : any)
// 导出数据
const exportData =async () => {
useDownload(exportAlignData, '原始数据', null, false, '.xlsx')
useDownload(exportAlignData, '对齐数据', null, false, '.xlsx')
ElMessage.success('数据导出成功');
// 这里可以添加实际的数据导出逻辑
};