修改问题

This commit is contained in:
zhujiyan
2024-10-22 15:01:41 +08:00
parent 28c0e2d23c
commit 25ffc10857
3 changed files with 129 additions and 120 deletions

View File

@@ -407,11 +407,15 @@ const handleTrend = async () => {
clearInterval(timer.value)
clearInterval(realDataTimer.value)
clearInterval(trendTimer.value)
await getHarmRealData(lineId.value, activeTrendName.value).then((res: any) => {
await getHarmRealData(lineId.value, activeTrendName.value)
.then((res: any) => {
if (res.code == 'A0000') {
ElMessage.success('装置应答成功')
mqttRef.value.on('message', (topic: any, message: any) => {
console.log('谐波频谱---mqtt接收到消息', JSON.parse(JSON.stringify(JSON.parse(new TextDecoder().decode(message)))))
console.log(
'谐波频谱---mqtt接收到消息',
JSON.parse(JSON.stringify(JSON.parse(new TextDecoder().decode(message))))
)
let obj = JSON.parse(JSON.stringify(JSON.parse(new TextDecoder().decode(message)))) || {}
if (obj.data1) {
realTrendRef.value && realTrendRef.value.setRealTrendData(obj)
@@ -421,6 +425,9 @@ const handleTrend = async () => {
ElMessage.success('装置应答失败')
}
})
.catch(e => {
realTrendRef.value && realTrendRef.value.setRealTrendData(false)
})
//每隔30s调用一下接口通知后台推送mqtt消息
trendTimer.value = setInterval(() => {
getHarmRealData(lineId.value, activeTrendName.value).then((res: any) => {
@@ -435,7 +442,10 @@ const handleTrend = async () => {
})
mqttRef.value.on('message', (topic: any, message: any) => {
console.log('谐波频谱----mqtt接收到消息', JSON.parse(JSON.stringify(JSON.parse(new TextDecoder().decode(message)))))
console.log(
'谐波频谱----mqtt接收到消息',
JSON.parse(JSON.stringify(JSON.parse(new TextDecoder().decode(message))))
)
let obj = JSON.parse(JSON.stringify(JSON.parse(new TextDecoder().decode(message)))) || {}
if (obj.data1) {
realTrendRef.value && realTrendRef.value.setRealTrendData(obj)
@@ -467,6 +477,7 @@ const handleHarmonicSpectrum = () => {
const handleReturn = () => {
realTimeFlag.value = true
sonTab.value = null
activeTrendName.value = 0
handleClick()
}
const getDeviceDataTrend = (e: any) => {
@@ -617,7 +628,10 @@ const getRealDataMqttMsg = async () => {
mqttRef.value.on('message', (topic: any, message: any) => {
mqttMessage.value = {}
console.log('实时数据&实时趋势---mqtt接收到消息', JSON.parse(JSON.stringify(JSON.parse(new TextDecoder().decode(message)))))
console.log(
'实时数据&实时趋势---mqtt接收到消息',
JSON.parse(JSON.stringify(JSON.parse(new TextDecoder().decode(message))))
)
let obj = JSON.parse(JSON.stringify(JSON.parse(new TextDecoder().decode(message))))
//处理mqtt数据 1转2除 2转1乘
//如果消息返回值是二次值,下拉框是二次值只需要单位换算 除以1000

View File

@@ -54,9 +54,9 @@ indexOptions.value = [
id: 0,
name: '电压总有效值(kV)',
children: [
{ name: 'vRmsA', phase: 'A相', data: [] },
{ name: 'vRmsB', phase: 'B相', data: [] },
{ name: 'vRmsC', phase: 'C相', data: [] }
{ name: 'vRmsA', phase: 'A相', data: [], yMethodList: [] },
{ name: 'vRmsB', phase: 'B相', data: [], yMethodList: [] },
{ name: 'vRmsC', phase: 'C相', data: [], yMethodList: [] }
],
unit: 'kV',
data: [],
@@ -66,9 +66,9 @@ indexOptions.value = [
id: 1,
name: '电流总有效值(A)',
children: [
{ name: 'iRmsA', phase: 'A相', data: [] },
{ name: 'iRmsB', phase: 'B相', data: [] },
{ name: 'iRmsC', phase: 'C相', data: [] }
{ name: 'iRmsA', phase: 'A相', data: [], yMethodList: [] },
{ name: 'iRmsB', phase: 'B相', data: [], yMethodList: [] },
{ name: 'iRmsC', phase: 'C相', data: [], yMethodList: [] }
],
unit: 'A',
data: [],
@@ -78,10 +78,10 @@ indexOptions.value = [
id: 2,
name: '有功功率(kW)',
children: [
{ name: 'pA', phase: 'A相', data: [] },
{ name: 'pB', phase: 'B相', data: [] },
{ name: 'pC', phase: 'C相', data: [] },
{ name: 'pTot', phase: '总', data: [] }
{ name: 'pA', phase: 'A相', data: [], yMethodList: [] },
{ name: 'pB', phase: 'B相', data: [], yMethodList: [] },
{ name: 'pC', phase: 'C相', data: [], yMethodList: [] },
{ name: 'pTot', phase: '总', data: [], yMethodList: [] }
],
unit: 'kW',
data: [],
@@ -91,10 +91,10 @@ indexOptions.value = [
id: 3,
name: '无功功率(kW)',
children: [
{ name: 'qA', phase: 'A相', data: [] },
{ name: 'qB', phase: 'B相', data: [] },
{ name: 'qC', phase: 'C相', data: [] },
{ name: 'qTot', phase: '总', data: [] }
{ name: 'qA', phase: 'A相', data: [], yMethodList: [] },
{ name: 'qB', phase: 'B相', data: [], yMethodList: [] },
{ name: 'qC', phase: 'C相', data: [], yMethodList: [] },
{ name: 'qTot', phase: '总', data: [], yMethodList: [] }
],
unit: 'kW',
data: [],
@@ -105,9 +105,9 @@ indexOptions.value = [
id: 4,
name: '基波电压总有效值(kV)',
children: [
{ name: 'v1A', phase: 'A相', data: [] },
{ name: 'v1B', phase: 'B相', data: [] },
{ name: 'v1C', phase: 'C相', data: [] }
{ name: 'v1A', phase: 'A相', data: [], yMethodList: [] },
{ name: 'v1B', phase: 'B相', data: [], yMethodList: [] },
{ name: 'v1C', phase: 'C相', data: [], yMethodList: [] }
],
unit: 'kV',
data: [],
@@ -117,9 +117,9 @@ indexOptions.value = [
id: 5,
name: '基波电流总有效值(A)',
children: [
{ name: 'i1A', phase: 'A相', data: [] },
{ name: 'i1B', phase: 'B相', data: [] },
{ name: 'i1C', phase: 'C相', data: [] }
{ name: 'i1A', phase: 'A相', data: [], yMethodList: [] },
{ name: 'i1B', phase: 'B相', data: [], yMethodList: [] },
{ name: 'i1C', phase: 'C相', data: [], yMethodList: [] }
],
unit: 'A',
data: [],
@@ -129,8 +129,8 @@ indexOptions.value = [
id: 6,
name: '频率(Hz)',
children: [
{ name: 'freq', phase: '频率', data: [] },
{ name: 'freqDev', phase: '频率偏差', data: [] }
{ name: 'freq', phase: '频率', data: [], yMethodList: [] },
{ name: 'freqDev', phase: '频率偏差', data: [], yMethodList: [] }
],
unit: 'Hz',
data: [],
@@ -139,7 +139,7 @@ indexOptions.value = [
{
id: 7,
name: '电压不平衡度(%)',
children: [{ name: 'vUnbalance', phase: '电压不平衡度', data: [] }],
children: [{ name: 'vUnbalance', phase: '电压不平衡度', data: [], yMethodList: [] }],
unit: '%',
data: [],
yMethodList: []
@@ -147,7 +147,7 @@ indexOptions.value = [
{
id: 8,
name: '电流不平衡度(%)',
children: [{ name: 'iUnbalance', phase: '电流不平衡度', data: [] }],
children: [{ name: 'iUnbalance', phase: '电流不平衡度', data: [], yMethodList: [] }],
unit: '%',
data: [],
yMethodList: []
@@ -166,94 +166,103 @@ const resetData = () => {
id: 0,
name: '电压总有效值(kV)',
children: [
{ name: 'vRmsA', phase: 'A相', data: [] },
{ name: 'vRmsB', phase: 'B相', data: [] },
{ name: 'vRmsC', phase: 'C相', data: [] }
{ name: 'vRmsA', phase: 'A相', data: [], yMethodList: [] },
{ name: 'vRmsB', phase: 'B相', data: [], yMethodList: [] },
{ name: 'vRmsC', phase: 'C相', data: [], yMethodList: [] }
],
unit: 'kV',
data: []
data: [],
yMethodList: []
},
{
id: 1,
name: '电流总有效值(A)',
children: [
{ name: 'iRmsA', phase: 'A相', data: [] },
{ name: 'iRmsB', phase: 'B相', data: [] },
{ name: 'iRmsC', phase: 'C相', data: [] }
{ name: 'iRmsA', phase: 'A相', data: [], yMethodList: [] },
{ name: 'iRmsB', phase: 'B相', data: [], yMethodList: [] },
{ name: 'iRmsC', phase: 'C相', data: [], yMethodList: [] }
],
unit: 'A',
data: []
data: [],
yMethodList: []
},
{
id: 2,
name: '有功功率(kW)',
children: [
{ name: 'pA', phase: 'A相', data: [] },
{ name: 'pB', phase: 'B相', data: [] },
{ name: 'pC', phase: 'C相', data: [] },
{ name: 'pTot', phase: '总', data: [] }
{ name: 'pA', phase: 'A相', data: [], yMethodList: [] },
{ name: 'pB', phase: 'B相', data: [], yMethodList: [] },
{ name: 'pC', phase: 'C相', data: [], yMethodList: [] },
{ name: 'pTot', phase: '总', data: [], yMethodList: [] }
],
unit: 'kW',
data: []
data: [],
yMethodList: []
},
{
id: 3,
name: '无功功率(kW)',
children: [
{ name: 'qA', phase: 'A相', data: [] },
{ name: 'qB', phase: 'B相', data: [] },
{ name: 'qC', phase: 'C相', data: [] },
{ name: 'qTot', phase: '总', data: [] }
{ name: 'qA', phase: 'A相', data: [], yMethodList: [] },
{ name: 'qB', phase: 'B相', data: [], yMethodList: [] },
{ name: 'qC', phase: 'C相', data: [], yMethodList: [] },
{ name: 'qTot', phase: '总', data: [], yMethodList: [] }
],
unit: 'kW',
data: []
data: [],
yMethodList: []
},
{
id: 4,
name: '基波电压总有效值(kV)',
children: [
{ name: 'v1A', phase: 'A相', data: [] },
{ name: 'v1B', phase: 'B相', data: [] },
{ name: 'v1C', phase: 'C相', data: [] }
{ name: 'v1A', phase: 'A相', data: [], yMethodList: [] },
{ name: 'v1B', phase: 'B相', data: [], yMethodList: [] },
{ name: 'v1C', phase: 'C相', data: [], yMethodList: [] }
],
unit: 'kV',
data: []
data: [],
yMethodList: []
},
{
id: 5,
name: '基波电流总有效值(A)',
children: [
{ name: 'i1A', phase: 'A相', data: [] },
{ name: 'i1B', phase: 'B相', data: [] },
{ name: 'i1C', phase: 'C相', data: [] }
{ name: 'i1A', phase: 'A相', data: [], yMethodList: [] },
{ name: 'i1B', phase: 'B相', data: [], yMethodList: [] },
{ name: 'i1C', phase: 'C相', data: [], yMethodList: [] }
],
unit: 'A',
data: []
data: [],
yMethodList: []
},
{
id: 6,
name: '频率(Hz)',
children: [
{ name: 'freq', phase: '频率', data: [] },
{ name: 'freqDev', phase: '频率偏差', data: [] }
{ name: 'freq', phase: '频率', data: [], yMethodList: [] },
{ name: 'freqDev', phase: '频率偏差', data: [], yMethodList: [] }
],
unit: 'Hz',
data: []
data: [],
yMethodList: []
},
{
id: 7,
name: '电压不平衡度(%)',
children: [{ name: 'vUnbalance', phase: '电压不平衡度', data: [] }],
children: [{ name: 'vUnbalance', phase: '电压不平衡度', data: [], yMethodList: [] }],
unit: '%',
data: []
data: [],
yMethodList: []
},
{
id: 8,
name: '电流不平衡度(%)',
children: [{ name: 'iUnbalance', phase: '电流不平衡度', data: [] }],
children: [{ name: 'iUnbalance', phase: '电流不平衡度', data: [], yMethodList: [] }],
unit: '%',
data: []
data: [],
yMethodList: []
}
]
searchForm.value.index = []
@@ -271,18 +280,19 @@ const setChildRef = (index: any) => {
}
const childRefs: any = {}
const init = () => {
resetData()
console.log(searchForm.value.index, '----------')
loading.value = true
searchForm.value.index.map((item: any, index: any) => {
item?.children.map((vv: any, vvs: any) => {
if (mqttMessage.value[vv.name]) {
item.linesList = []
item?.data.push({
item.data.push({
time: mqttMessage.value.dataTime,
value: mqttMessage.value[vv.name],
key: vv.name
})
item?.yMethodList.push([mqttMessage.value.dataTime, mqttMessage.value[vv.name], vv.name])
vv.data.push(mqttMessage.value[vv.name])
vv.yMethodList.push([mqttMessage.value.dataTime, mqttMessage.value[vv.name] + '', vv.phase])
}
})
})
@@ -334,25 +344,24 @@ const init = () => {
}
// data: timeList
},
// yAxis: {
// type: 'value',
// name: item.unit,
// splitLine: {
// show: false
// },
// axisTick: {
// show: true
// },
// axisLine: {
// show: true,
// lineStyle: {
// color: '#000'
// }
// },
// splitNumber: 5,
// minInterval: 1
// },
yAxis: [{}],
yAxis: {
type: 'value',
name: item.unit,
splitLine: {
show: false
},
axisTick: {
show: true
},
axisLine: {
show: true,
lineStyle: {
color: '#000'
}
},
splitNumber: 5,
minInterval: 1
},
series: []
}
//根据指标判断渲染几条线
@@ -361,11 +370,7 @@ const init = () => {
: (height = mainHeight(275, searchForm.value.index.length).height)
console.log(item.children, '<<<<<<<<<<<<<<<<<<<<<<344')
item.children.map((zz: any, zzIndex: any) => {
let seriesList: any = []
// zz.yMethodList = []
// console.log(zz.yMethodList, '不能给嘎嘎嘎哈哈')
// zz.yMethodList=new Set(...zz.yMethodList)
// return;
console.log(zz, '-------------', zz.yMethodList)
item.echartsData.series.push({
name: zz.phase,
type: 'line',
@@ -384,18 +389,7 @@ const init = () => {
loading.value = false
}
// watch(
// () => searchForm.value.index,
// (val: any, oldval: any) => {
// if (val && val.length != 0) {
// init()
// }
// },
// {
// deep: true,
// immediate: true
// }
// )
onMounted(() => {})
defineExpose({ resetData, setHarmonicSpectrumData })
</script>

View File

@@ -24,9 +24,7 @@
<div class="realtrend_table" v-if="Object.keys(tableData).length != 0">
<div class="thead_left">
<p>次数</p>
<p>
{{ item.groupName }}{{ item.unit?'('+item.unit+')':'' }}
</p>
<p>{{ item.groupName }}{{ item.unit ? '(' + item.unit + ')' : '' }}</p>
</div>
<div class="thead_right">
<div class="right_cell" v-for="(value, key, index) in tableData" :key="index">
@@ -206,6 +204,7 @@ const init = () => {
}
const handleClick = (tab: any, event: any) => {
loading.value = true
params.value.groupId = tabsList.value[tab.index].id
emit('changeTrendType', tab.index)
activeName.value = tab.index
@@ -215,6 +214,9 @@ const handleClick = (tab: any, event: any) => {
const mqttMessage: any = ref()
const tableData: any = ref({})
const setRealTrendData = (val: any) => {
if(!val){
return
}
loading.value = true
console.log(val, '谐波频谱')
tableData.value = {}
@@ -222,7 +224,7 @@ const setRealTrendData = (val: any) => {
for (let key in val) {
if (String(key).includes('data') && String(key) != 'dataLevel' && String(key) != 'dataTime') {
tableData.value[key] = val[key]
if(tabsList.value[activeName.value].groupName.includes("间")==false){
if (tabsList.value[activeName.value].groupName.includes('间') == false) {
delete tableData.value.data1
}
}
@@ -369,14 +371,13 @@ defineExpose({ open, setRealTrendData, setOverLimitData })
.tab_info {
width: 100%;
height: calc(100vh - 450px);
// height: calc(100vh - 450px);
// overflow: auto;
// padding-bottom: 20px;
.charts {
width: 100%;
margin-top: 10px;
height: calc(100vh - 600px);
height: calc(100vh - 560px);
}
}
</style>