修改测试bug 优化页面
This commit is contained in:
@@ -77,7 +77,6 @@
|
||||
</el-descriptions-item> -->
|
||||
</el-descriptions>
|
||||
<el-tabs v-model.trim="dataSet" type="border-card" class="device-control-box-card" @tab-click="handleClick">
|
||||
|
||||
<el-tab-pane
|
||||
lazy
|
||||
:label="item.name"
|
||||
@@ -87,7 +86,7 @@
|
||||
>
|
||||
<template #label>
|
||||
<span class="custom-tabs-label">
|
||||
<el-icon>
|
||||
<!-- <el-icon>
|
||||
<TrendCharts v-if="item.name == 'APF模块数据'" />
|
||||
<DataLine v-if="item.name == '历史APF模块数据'" />
|
||||
<DataAnalysis v-if="item.name.includes('趋势数据')" />
|
||||
@@ -113,7 +112,7 @@
|
||||
!item.name.includes('暂态事件')
|
||||
"
|
||||
/>
|
||||
</el-icon>
|
||||
</el-icon> -->
|
||||
<span>{{ item.name }}</span>
|
||||
</span>
|
||||
</template>
|
||||
@@ -157,7 +156,7 @@
|
||||
</el-select> -->
|
||||
<el-radio-group
|
||||
v-model.trim="formInline.dataLevel"
|
||||
v-if="!dataSet.includes('_moduleData')"
|
||||
v-if="!dataSet.includes('_moduleData') && TrendList?.lineType == 1"
|
||||
:disabled="TrendList?.lineType != 1"
|
||||
@change="handleClick"
|
||||
>
|
||||
@@ -733,14 +732,14 @@ const handleHarmonicSpectrum = async () => {
|
||||
// getRealDataMqttMsg()
|
||||
await getBasicRealData(lineId.value).then((res: any) => {
|
||||
if (res.code == 'A0000') {
|
||||
ElMessage.success('装置应答成功')
|
||||
ElMessage.success('装置应答成功')
|
||||
// mqttMessage.value = {}
|
||||
|
||||
realDataTimer.value = window.setInterval(() => {
|
||||
if (!dataSet.value.includes('_realtimedata')) return
|
||||
|
||||
getBasicRealData(lineId.value).then((res: any) => {
|
||||
console.log(res, '获取基础实时数据')
|
||||
console.log(res, '获取基础实时数据')
|
||||
})
|
||||
}, 30000)
|
||||
}
|
||||
@@ -838,8 +837,8 @@ const devData: any = ref({})
|
||||
const lineId: any = ref('')
|
||||
const dataLevel: any = ref('')
|
||||
const dataSource = ref([])
|
||||
const nodeClick = async (e: anyObj) => {
|
||||
console.log("🚀 ~ nodeClick ~ e:", e)
|
||||
const engineeringName = ref('')
|
||||
const nodeClick = async (e: anyObj, node: any) => {
|
||||
if (e == undefined || e.level == 2) {
|
||||
return (loading.value = false)
|
||||
}
|
||||
@@ -855,6 +854,8 @@ const nodeClick = async (e: anyObj) => {
|
||||
|
||||
//选中设备名称后,点击标签页也能查询数据,要求点击设备名称后,点击标签页默认查询第一个监测点数据
|
||||
if (e.level == 3 || e.level == 2) {
|
||||
engineeringName.value = node?.parent.parent.data.name
|
||||
|
||||
await queryDictType({
|
||||
lineId: e?.id,
|
||||
conType: e.conType
|
||||
@@ -985,44 +986,42 @@ const getRealDataMqttMsg = async () => {
|
||||
JSON.parse(JSON.stringify(JSON.parse(new TextDecoder().decode(message))))
|
||||
)
|
||||
let obj = JSON.parse(JSON.stringify(JSON.parse(new TextDecoder().decode(message))))
|
||||
|
||||
|
||||
if (lineId.value != obj.lineId || adminInfo.userIndex != obj.userId) return
|
||||
|
||||
//处理mqtt数据 1转2除 2转1乘
|
||||
//如果消息返回值是二次值,下拉框是二次值只需要单位换算 除以1000
|
||||
//如果消息返回值是一次值,下拉框是一次值只需要单位换算 除以1000
|
||||
if (obj.dataLevel == formInline.dataLevel) {
|
||||
|
||||
obj = {
|
||||
...obj,
|
||||
// 电压有效值
|
||||
vRmsA: obj.vRmsA ,
|
||||
vRmsB: obj.vRmsB ,
|
||||
vRmsC: obj.vRmsC ,
|
||||
vRmsA: obj.vRmsA,
|
||||
vRmsB: obj.vRmsB,
|
||||
vRmsC: obj.vRmsC,
|
||||
//基波电压幅值
|
||||
v1A: obj.v1A ,
|
||||
v1B: obj.v1B ,
|
||||
v1C: obj.v1C ,
|
||||
v1A: obj.v1A,
|
||||
v1B: obj.v1B,
|
||||
v1C: obj.v1C,
|
||||
//有功功率
|
||||
pA: obj.pA ,
|
||||
pB: obj.pB ,
|
||||
pC: obj.pC ,
|
||||
pTot: obj.pTot ,
|
||||
pA: obj.pA,
|
||||
pB: obj.pB,
|
||||
pC: obj.pC,
|
||||
pTot: obj.pTot,
|
||||
//无功功率
|
||||
qA: obj.qA ,
|
||||
qB: obj.qB ,
|
||||
qC: obj.qC ,
|
||||
qTot: obj.qTot ,
|
||||
qA: obj.qA,
|
||||
qB: obj.qB,
|
||||
qC: obj.qC,
|
||||
qTot: obj.qTot,
|
||||
//视在功率
|
||||
sA: obj.sA ,
|
||||
sB: obj.sB ,
|
||||
sC: obj.sC ,
|
||||
sTot: obj.sTot
|
||||
sA: obj.sA,
|
||||
sB: obj.sB,
|
||||
sC: obj.sC,
|
||||
sTot: obj.sTot
|
||||
}
|
||||
}
|
||||
//如果消息返回值是二次值,下拉框是一次值需要单位换算 除以1000 并且乘以pt ct
|
||||
if (obj.dataLevel == 'Secondary' && formInline.dataLevel == 'Primary') {
|
||||
|
||||
obj = {
|
||||
...obj,
|
||||
// 电压有效值
|
||||
@@ -1103,9 +1102,11 @@ const getRealDataMqttMsg = async () => {
|
||||
}
|
||||
if (obj.hasOwnProperty('pA') && obj.hasOwnProperty('pB')) {
|
||||
mqttMessage.value = obj
|
||||
|
||||
|
||||
//更新实时数据主页面值
|
||||
realTimeFlag.value && realTimeRef.value && realTimeRef.value.setRealData(mqttMessage.value,formInline.dataLevel)
|
||||
realTimeFlag.value &&
|
||||
realTimeRef.value &&
|
||||
realTimeRef.value.setRealData(mqttMessage.value, formInline.dataLevel)
|
||||
tableLoading.value = false
|
||||
//更新实时趋势折线图数据
|
||||
if (sonTab.value == 2) {
|
||||
@@ -1229,6 +1230,7 @@ const handleClick = async (tab?: any) => {
|
||||
let obj = {
|
||||
devId: deviceId.value, //e.id
|
||||
lineId: lineId.value, //e.pid
|
||||
engineeringName: engineeringName.value, //e.name
|
||||
type: 3,
|
||||
list: [
|
||||
{
|
||||
@@ -1423,9 +1425,7 @@ const echoName = (value: any, arr: any[]) => {
|
||||
return value ? arr.find(item => item.value == value)?.label : '/'
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
|
||||
})
|
||||
onMounted(() => {})
|
||||
onBeforeUnmount(() => {
|
||||
clearInterval(realDataTimer.value)
|
||||
clearInterval(trendTimer.value)
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -2,8 +2,13 @@
|
||||
<div class="view">
|
||||
<TableHeader datePicker ref="headerRef" v-if="!isWaveCharts" :showReset="false"></TableHeader>
|
||||
<Table ref="tableRef" v-if="!isWaveCharts" />
|
||||
<waveFormAnalysis v-loading="loading" v-if="isWaveCharts" ref="waveFormAnalysisRef"
|
||||
@handleHideCharts="isWaveCharts = false" :wp="wp" />
|
||||
<waveFormAnalysis
|
||||
v-loading="loading"
|
||||
v-if="isWaveCharts"
|
||||
ref="waveFormAnalysisRef"
|
||||
@handleHideCharts="isWaveCharts = false"
|
||||
:wp="wp"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
<script lang="ts" setup>
|
||||
@@ -15,7 +20,7 @@ import TableHeader from '@/components/table/header/index.vue'
|
||||
import waveFormAnalysis from './components/waveFormAnalysis.vue'
|
||||
import { ArrowLeft, Message } from '@element-plus/icons-vue'
|
||||
import { ElMessage } from 'element-plus'
|
||||
import { analyseWave,getFileByEventId } from '@/api/common'
|
||||
import { analyseWave, getFileByEventId } from '@/api/common'
|
||||
import { getFileZip } from '@/api/cs-harmonic-boot/datatrend'
|
||||
const tableParams: any = ref({})
|
||||
const refheader = ref()
|
||||
@@ -31,12 +36,11 @@ const waveFormAnalysisRef = ref()
|
||||
const headerRef = ref()
|
||||
|
||||
const props = defineProps({
|
||||
deviceType: {
|
||||
type: String,
|
||||
default: '0'
|
||||
}
|
||||
});
|
||||
|
||||
deviceType: {
|
||||
type: String,
|
||||
default: '0'
|
||||
}
|
||||
})
|
||||
|
||||
const tableStore: any = new TableStore({
|
||||
url: '/cs-device-boot/csGroup/deviceDataByType',
|
||||
@@ -45,7 +49,9 @@ const tableStore: any = new TableStore({
|
||||
column: [
|
||||
// { width: '60', type: 'checkbox', fixed: 'left' },
|
||||
{
|
||||
title: '序号', width: 80, formatter: (row: any) => {
|
||||
title: '序号',
|
||||
width: 80,
|
||||
formatter: (row: any) => {
|
||||
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
|
||||
}
|
||||
},
|
||||
@@ -65,10 +71,11 @@ const tableStore: any = new TableStore({
|
||||
title: '持续时间(s)',
|
||||
minWidth: 100,
|
||||
formatter: (row: any) => {
|
||||
console.log('row.cellValue', row.cellValue)
|
||||
console.log('row.cellValue', row.cellValue)
|
||||
row.cellValue = row.cellValue ? row.cellValue.toFixed(2) : '/'
|
||||
return row.cellValue
|
||||
}, sortable: true
|
||||
},
|
||||
sortable: true
|
||||
},
|
||||
{
|
||||
field: 'featureAmplitude',
|
||||
@@ -109,7 +116,9 @@ const tableStore: any = new TableStore({
|
||||
row.loading1 = false
|
||||
if (res != undefined) {
|
||||
boxoList.value = row
|
||||
boxoList.value.systemType = 'WX'
|
||||
boxoList.value.systemType = 'YPT'
|
||||
boxoList.value.engineeringName = tableParams.value.engineeringName
|
||||
console.log("🚀 ~ tableParams.value.engineeringName:", tableParams.value.engineeringName)
|
||||
wp.value = res.data
|
||||
view.value = false
|
||||
view2.value = true
|
||||
@@ -134,7 +143,7 @@ const tableStore: any = new TableStore({
|
||||
icon: 'el-icon-DataLine',
|
||||
render: 'basicButton',
|
||||
disabled: row => {
|
||||
return row.showName != '未知';
|
||||
return row.showName != '未知'
|
||||
}
|
||||
},
|
||||
{
|
||||
@@ -158,25 +167,24 @@ const tableStore: any = new TableStore({
|
||||
document.body.appendChild(link)
|
||||
link.click() //执行下载
|
||||
document.body.removeChild(link) //释放标签
|
||||
|
||||
})
|
||||
}
|
||||
},
|
||||
{
|
||||
name: 'edit',
|
||||
title: '波形补召',
|
||||
type: 'primary',
|
||||
icon: 'el-icon-Check',
|
||||
render: 'basicButton',
|
||||
disabled: row => {
|
||||
return props.deviceType === '2' && row.wavePath || row.showName === '未知';
|
||||
},
|
||||
click: row => {
|
||||
getFileByEventId(row.id).then(res => {
|
||||
name: 'edit',
|
||||
title: '波形补召',
|
||||
type: 'primary',
|
||||
icon: 'el-icon-Check',
|
||||
render: 'basicButton',
|
||||
disabled: row => {
|
||||
return (props.deviceType === '2' && row.wavePath) || row.showName === '未知'
|
||||
},
|
||||
click: row => {
|
||||
getFileByEventId(row.id).then(res => {
|
||||
ElMessage.success(res.message)
|
||||
tableStore.index()
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -186,9 +194,10 @@ const tableStore: any = new TableStore({
|
||||
tableStore.table.params.devId = tableParams.value.devId
|
||||
tableStore.table.params.lineId = tableParams.value.lineId
|
||||
tableStore.table.params.list = tableParams.value.list
|
||||
console.log('🚀 ~ ableParams.value:', tableParams.value)
|
||||
tableStore.table.params.type = 3
|
||||
},
|
||||
loadCallback: () => { }
|
||||
loadCallback: () => {}
|
||||
})
|
||||
provide('tableStore', tableStore)
|
||||
const isWaveCharts = ref(false)
|
||||
|
||||
@@ -232,6 +232,7 @@ const init = async () => {
|
||||
loading.value = true
|
||||
// 选择指标的时候切换legend内容和data数据
|
||||
let list: any = []
|
||||
echartsData.value={}
|
||||
legendDictList.value?.selectedList?.map((item: any) => {
|
||||
searchForm.value.index.map((vv: any) => {
|
||||
if (item.dataType == vv) {
|
||||
|
||||
Reference in New Issue
Block a user