From b6521ac9086788950b5ca059c541af7a8a809a4e Mon Sep 17 00:00:00 2001 From: hzz Date: Wed, 7 Jun 2023 16:54:18 +0800 Subject: [PATCH] update --- .../generalEnvironmentMechanical/index.vue | 165 +++++++++++++----- 1 file changed, 117 insertions(+), 48 deletions(-) diff --git a/src/views/generalEnvironmentMechanical/index.vue b/src/views/generalEnvironmentMechanical/index.vue index b90194a..bd0273d 100644 --- a/src/views/generalEnvironmentMechanical/index.vue +++ b/src/views/generalEnvironmentMechanical/index.vue @@ -16,7 +16,15 @@ -
+
+ + +
+
+
+
+
@@ -25,6 +33,7 @@ import { onMounted, onUnmounted, reactive, ref } from 'vue' import header2 from '@/components/headerBox/header2.vue' import verticalNumLoop from './components/verticalNumLoop.vue' +import power from './components/power.vue'; import { getSafeWarningData, getpipeData } from "@/http/realtimeSecurity"; import { getnoiseData } from "@/http/generalEnvironment"; import { getHumitureData, getPmtenData, getPmtwoData } from "@/http/generalEnvironment"; @@ -59,9 +68,15 @@ const verticalType = { 'FIRE': { icon: 'icon-weibiaoti1', title: t('messages.flameDetection'), unit: null }, 'noise': { icon: 'icon-shengyin', title: t('messages.noiseDetection'), unit: 'dB' }, } +/**用电量 */ +let listName = ref() +let powerTitle = t('messages.Powerto2023') +let powerSeries = ref() -let headerref=ref() + +let headerref = ref() let verticalList: any[] = reactive([]) +//获取传感器实时数据 async function getSensorData() { let list = [] const res: any = await Promise.all([ @@ -114,60 +129,113 @@ async function getSensorData() { store.setNewVerticalNum(handle_vertical) } +async function getPower_data() { + const { data }: any = await getPowerData({ time: 1 }) + listName.value = data.name + + + let series = [] + data.listData.forEach(res => { + if (res.years == 2023) { + for (let key in res.month) { + series.push({ + name: key + '月', + type: 'bar', + stack: res.years, + emphasis: { + focus: 'coordinateSystem', + label: { + show: true, + formatter: function (value, index) { + return value.value.toLocaleString() + } + } + }, + data: res.month[key] + }) + } + } + }) + //data0用于初始化计算的数据 + let data0 = [] + + for (let i = 1; i <= data.name.length; i++) { + data0.push(0) + } + + series.push( + { + name: '', + type: 'bar', + data: data0, + color: '#bbf', + stack: data.listData[1].years, + // barWidth: 30, + label: { + show: true, + position: 'right', + color: '#fff' + } + } + ) + powerSeries.value = series + +} + function getWebsocket(val) { - headerref.value.HeadergetWebsocket(val) - try{ - let data = JSON.parse(val); + headerref.value.HeadergetWebsocket(val) + try { + let data = JSON.parse(val); - //精饰车间燃气监测 - if (data.type == "paintingGas") { - let verticalData = {name:data.msg.devName,val:data.msg.paintingGas.value,devId:data.msg.devId} - store.changeNewVerticalNum({type:'Methane',data:verticalData}) - - } - //甲醛TVOC - if (data.type == "TVOC_CH2O") { - let verticalData_TVOC = {name:data.msg.TVOC.name,val:data.msg.TVOC.value,devId:data.msg.TVOC.devId} - store.changeNewVerticalNum({type:'TVOC',data:verticalData_TVOC}) - let verticalData_CH2O = {name:data.msg.CH2O.name,val:data.msg.CH2O.value,devId:data.msg.CH2O.devId} - store.changeNewVerticalNum({type:'CH2O',data:verticalData_CH2O}) - - } - //火焰传感器? - if (data.type == "flame") { - let verticalData = {name:data.msg.devName,val:data.msg.flame.value,devId:data.msg.devId} - store.changeNewVerticalNum({type:'FIRE',data:verticalData}) - - } - //精饰车间烟雾传感器 - if (data.type == "smoke") { - let verticalData = {name:data.msg.devName,val:data.msg.smoke.value,devId:data.msg.devId} - store.changeNewVerticalNum({type:'Smoke',data:verticalData}) - // console.log(JSON.stringify({type:'Smoke',data:verticalData}),"烟雾传感器"); - } -// if (data.type == "airPressure") { -// store.changePressure(data.msg); -// } -// if (data.type == "waterPressure") { -// store.changePipe(data.msg); -// } + //精饰车间燃气监测 + if (data.type == "paintingGas") { + let verticalData = { name: data.msg.devName, val: data.msg.paintingGas.value, devId: data.msg.devId } + store.changeNewVerticalNum({ type: 'Methane', data: verticalData }) - }catch(err){ - console.log(err,"报错了大哥",console.log(val) - ); + } + //甲醛TVOC + if (data.type == "TVOC_CH2O") { + let verticalData_TVOC = { name: data.msg.TVOC.name, val: data.msg.TVOC.value, devId: data.msg.TVOC.devId } + store.changeNewVerticalNum({ type: 'TVOC', data: verticalData_TVOC }) + let verticalData_CH2O = { name: data.msg.CH2O.name, val: data.msg.CH2O.value, devId: data.msg.CH2O.devId } + store.changeNewVerticalNum({ type: 'CH2O', data: verticalData_CH2O }) - } + } + //火焰传感器? + if (data.type == "flame") { + let verticalData = { name: data.msg.devName, val: data.msg.flame.value, devId: data.msg.devId } + store.changeNewVerticalNum({ type: 'FIRE', data: verticalData }) + + } + //精饰车间烟雾传感器 + if (data.type == "smoke") { + let verticalData = { name: data.msg.devName, val: data.msg.smoke.value, devId: data.msg.devId } + store.changeNewVerticalNum({ type: 'Smoke', data: verticalData }) + // console.log(JSON.stringify({type:'Smoke',data:verticalData}),"烟雾传感器"); + } + // if (data.type == "airPressure") { + // store.changePressure(data.msg); + // } + // if (data.type == "waterPressure") { + // store.changePipe(data.msg); + // } + + } catch (err) { + console.log(err, "报错了大哥", console.log(val) + ); + + } } function errWebsocket(val) { - headerref.value?headerref.value.HeadererrWebsocket(val):'' - // console.log(val); + headerref.value ? headerref.value.HeadererrWebsocket(val) : '' + // console.log(val); } onMounted(() => { getSensorData() - - connectWebsocket(null, null, getWebsocket, errWebsocket); + getPower_data() + connectWebsocket(null, null, getWebsocket, errWebsocket); }) @@ -177,12 +245,13 @@ onMounted(() => { width: 1920px; color: #20aec5; background-color: #100c2a; + box-sizing: border-box; }