From abfe6985b2678445ea8da974b204d9fe2ffdb887 Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期二, 24 十二月 2024 15:23:41 +0800
Subject: [PATCH] ll
---
screen/src/views/EnergyConsum.vue | 175 ++++++++++++++++++++++++++++++++++++----------------------
1 files changed, 109 insertions(+), 66 deletions(-)
diff --git a/screen/src/views/EnergyConsum.vue b/screen/src/views/EnergyConsum.vue
index 8e383e4..3ad40c9 100644
--- a/screen/src/views/EnergyConsum.vue
+++ b/screen/src/views/EnergyConsum.vue
@@ -25,9 +25,9 @@
<img src="@/assets/images/nenghao_ic1.png" class="co2" alt="">
<div>
<div class="name">鏈勾绱寰幆鐑熺</div>
- <div><span class="num" v-if="data1.smokeBoxTotal || data1.smokeBoxTotal == 0">{{
+ <div><span class="num" style="color: #68cfb2;" v-if="data1.smokeBoxTotal || data1.smokeBoxTotal == 0">{{
data1.smokeBoxTotal.toLocaleString()
- }}</span><span>鍙�</span></div>
+ }}</span><span>涓�</span></div>
</div>
</div>
</div>
@@ -89,7 +89,7 @@
Math.abs(((data1.electricityQuantity.totalNum -
data1.electricityQuantity.sameNum) / data1.electricityQuantity.totalNum * 100).toFixed(1))
}}%</span>
- <span class="val" v-else>-</span>
+ <span class="val" v-else style="margin-left: 4px;"> -</span>
<span class="lab">鐜瘮</span>
<img v-if="data1.electricityQuantity.totalNum > data1.electricityQuantity.ringNum" class="icon"
src="@/assets/images/ic_up.webp" alt="" />
@@ -99,7 +99,7 @@
Math.abs(((data1.electricityQuantity.totalNum -
data1.electricityQuantity.ringNum) / data1.electricityQuantity.totalNum * 100).toFixed(1))
}}%</span>
- <span class="val" v-else>-</span>
+ <span class="val" v-else style="margin-left: 4px;"> -</span>
</div>
</div>
<div class="item">
@@ -112,101 +112,114 @@
</div>
<div class="static" v-if="data1.waterQuantity">
<span class="lab">鍚屾瘮</span>
- <img v-if="data1.waterQuantity.totalNum > data1.waterQuantity.sameNum" class="icon"
- src="@/assets/images/ic_up.webp" alt="" />
- <img v-else class="icon" src="@/assets/images/ic_down.webp" alt="" />
- <span class="val" v-if="data1.waterQuantity.totalNum && data1.waterQuantity.totalNum != 0">{{
+ <template v-if="data1.waterQuantity.sameNum">
+ <img v-if="data1.waterQuantity.totalNum > data1.waterQuantity.sameNum" class="icon"
+ src="@/assets/images/ic_up.webp" alt="" />
+ <img v-else class="icon" src="@/assets/images/ic_down.webp" alt="" />
+ </template>
+ <span class="val" v-if="data1.waterQuantity.sameNum && data1.waterQuantity.sameNum != 0">{{
Math.abs(((data1.waterQuantity.totalNum -
- data1.waterQuantity.sameNum) / data1.waterQuantity.totalNum * 100).toFixed(1)) }}%</span>
- <span class="val" v-else>-</span>
+ data1.waterQuantity.sameNum) / data1.waterQuantity.sameNum * 100).toFixed(1)) }}%</span>
+ <span class="val" v-else style="margin-left: 4px;">-</span>
<span class="lab">鐜瘮</span>
- <img v-if="data1.waterQuantity.totalNum > data1.waterQuantity.ringNum" class="icon"
- src="@/assets/images/ic_up.webp" alt="" />
- <img v-else class="icon" src="@/assets/images/ic_down.webp" alt="" />
- <span class="val" v-if="data1.waterQuantity.totalNum && data1.waterQuantity.totalNum != 0">{{
+ <template v-if="data1.waterQuantity.ringNum">
+ <img v-if="data1.waterQuantity.totalNum > data1.waterQuantity.ringNum" class="icon"
+ src="@/assets/images/ic_up.webp" alt="" />
+ <img v-else class="icon" src="@/assets/images/ic_down.webp" alt="" />
+ </template>
+ <span class="val" v-if="data1.waterQuantity.ringNum && data1.waterQuantity.ringNum != 0">{{
Math.abs(((data1.waterQuantity.totalNum -
- data1.waterQuantity.ringNum) / data1.waterQuantity.totalNum * 100).toFixed(1)) }}%</span>
- <span class="val" v-else>-</span>
+ data1.waterQuantity.ringNum) / data1.waterQuantity.ringNum * 100).toFixed(1)) }}%</span>
+ <span class="val" v-else style="margin-left: 4px;">-</span>
</div>
</div>
<div class="item">
<div class="header">
<img class="icon" src="@/assets/images/ic_yongqi@2x.png" alt="" />
<div class="content">
- <div class="name">涓婃湀鐢ㄦ皵(t)</div>
+ <div class="name">涓婃湀鐢ㄦ皵(m鲁)</div>
<div class="num" v-if="data1.gasQuantity">{{ data1.gasQuantity.total.toLocaleString() }}</div>
</div>
</div>
<div class="static" v-if="data1.gasQuantity">
<span class="lab">鍚屾瘮</span>
- <img v-if="data1.gasQuantity.totalNum > data1.gasQuantity.sameNum" class="icon"
- src="@/assets/images/ic_up.webp" alt="" />
- <img v-else class="icon" src="@/assets/images/ic_down.webp" alt="" />
+ <template v-if="data1.gasQuantity.sameNum">
+ <img v-if="data1.gasQuantity.totalNum > data1.gasQuantity.sameNum" class="icon"
+ src="@/assets/images/ic_up.webp" alt="" />
+ <img v-else class="icon" src="@/assets/images/ic_down.webp" alt="" />
+ </template>
<span class="val" v-if="data1.gasQuantity.totalNum && data1.gasQuantity.totalNum != 0">{{
Math.abs(((data1.gasQuantity.totalNum - data1.gasQuantity.sameNum) / data1.gasQuantity.totalNum
* 100).toFixed(1))
}}%</span>
- <span class="val" v-else>-</span>
+ <span class="val" v-else style="margin-left: 4px;">-</span>
<span class="lab">鐜瘮</span>
- <img v-if="data1.gasQuantity.totalNum > data1.gasQuantity.ringNum" class="icon"
- src="@/assets/images/ic_up.webp" alt="" />
- <img v-else class="icon" src="@/assets/images/ic_down.webp" alt="" />
+ <template v-if="data1.gasQuantity.sameNum">
+ <img v-if="data1.gasQuantity.totalNum > data1.gasQuantity.ringNum" class="icon"
+ src="@/assets/images/ic_up.webp" alt="" />
+ <img v-else class="icon" src="@/assets/images/ic_down.webp" alt="" />
+ </template>
<span class="val" v-if="data1.gasQuantity.totalNum && data1.gasQuantity.totalNum != 0">{{
Math.abs(((data1.gasQuantity.totalNum - data1.gasQuantity.ringNum) / data1.gasQuantity.totalNum
* 100).toFixed(1))
}}%</span>
- <span class="val" v-else>-</span>
+ <span class="val" v-else style="margin-left: 4px;">-</span>
</div>
</div>
</div>
</div>
<div class="center_box_two">
<img class="bg" src="@/assets/images/img_city@2x.png" alt="" />
- <template v-if="data6 && data6.secondRegionDataList && data6.secondRegionDataList.length > 0">
- <div class="item item1">
- <div class="num fs_linear">{{ data6.secondRegionDataList[0].value }}<span class="unit">kw路h</span></div>
- <div class="name">{{ data6.secondRegionDataList[0].name }}</div>
+ <template v-if="data6 && data6 && data6.length > 0">
+ <div class="item item1" v-if="data6.length > 4">
+ <div class="num fs_linear">{{ data6[4].value }}<span class="unit">kw路h</span></div>
+ <div class="name">{{ data6[4].name }}</div>
<img src="@/assets/images/bg_data@2x.png" class="bg" alt="" />
</div>
- <div class="item item2" v-if="data6.secondRegionDataList.length > 1">
- <div class="num fs_linear">{{ data6.secondRegionDataList[1].value }}<span class="unit">kw路h</span></div>
- <div class="name">{{ data6.secondRegionDataList[1].name }}</div>
+ <div class="item item2" v-if="data6.length > 1">
+ <div class="num fs_linear">{{ data6[1].value }}<span class="unit">kw路h</span></div>
+ <div class="name">{{ data6[1].name }}</div>
<img src="@/assets/images/bg_data@2x.png" class="bg" alt="" />
</div>
- <div class="item item3" v-if="data6.secondRegionDataList.length > 2">
- <div class="num fs_linear">{{ data6.secondRegionDataList[2].value }}<span class="unit">kw路h</span></div>
- <div class="name">{{ data6.secondRegionDataList[2].name }}</div>
+ <div class="item item3" v-if="data6.length > 2">
+ <div class="num fs_linear">{{ data6[2].value }}<span class="unit">kw路h</span></div>
+ <div class="name">{{ data6[2].name }}</div>
<img src="@/assets/images/bg_data@2x.png" class="bg" alt="" />
</div>
- <div class="item item4" v-if="data6.secondRegionDataList.length > 3">
- <div class="num fs_linear">{{ data6.secondRegionDataList[3].value }}<span class="unit">kw路h</span></div>
- <div class="name">{{ data6.secondRegionDataList[3].name }}</div>
+ <div class="item item4" v-if="data6.length > 3">
+ <div class="num fs_linear">{{ data6[3].value }}<span class="unit">kw路h</span></div>
+ <div class="name">{{ data6[3].name }}</div>
<img src="@/assets/images/bg_data@2x.png" class="bg" alt="" />
</div>
- <div class="item item5" v-if="data6.secondRegionDataList.length > 4">
- <div class="num fs_linear">{{ data6.secondRegionDataList[4].value }}<span class="unit">kw路h</span></div>
- <div class="name">{{ data6.secondRegionDataList[4].name }}</div>
+ <div class="item item5">
+ <div class="num fs_linear">{{ data6[0].value }}<span class="unit">kw路h</span></div>
+ <div class="name">{{ data6[0].name }}</div>
<img src="@/assets/images/bg_data@2x.png" class="bg" alt="" />
</div>
</template>
<div class="bottom_wrap" v-if="data1.yesterdayElectricity">
- <div class="bottom bottom1">
- <div class="num fs_linear">{{ data1.yesterdayElectricity.total || 0 }}</div>
+ <div class="bottom bottom1" @click="changeacDay(3)">
+ <div :class="{ active: activeDays == 3 }" class="num fs_linear">{{ data1.yesterdayElectricity.total || 0
+ }}</div>
<div class="name">鏄ㄦ棩鐢ㄧ數</div>
<div class="unit">kw路h</div>
- <img src="@/assets/images/ic_dianliang_b@2x.png" class="bg" alt="" />
+ <img v-if="activeDays == 3" src="@/assets/images/ic_dianliang@2x.png" class="bg" alt="" />
+ <img v-else src="@/assets/images/ic_dianliang_b@2x.png" class="bg" alt="" />
</div>
- <div class="bottom bottom2">
- <div class="num">{{ data1.todayElectricity.total || 0 }}</div>
+ <div class="bottom bottom2" @click="changeacDay(1)">
+ <div :class="{ active: activeDays == 1 }" class="num">{{ data1.todayElectricity.total || 0 }}</div>
<div class="name">浠婃棩鐢ㄧ數</div>
<div class="unit">kw路h</div>
- <img src="@/assets/images/ic_dianliang@2x.png" class="bg" alt="" />
+ <img v-if="activeDays == 1" src="@/assets/images/ic_dianliang@2x.png" class="bg" alt="" />
+ <img v-else src="@/assets/images/ic_dianliang_b@2x.png" class="bg" alt="" />
</div>
- <div class="bottom bottom3">
- <div class="num fs_linear">{{ data1.monthElectricity.total || 0 }}</div>
+ <div class="bottom bottom3" @click="changeacDay(2)">
+ <div :class="{ active: activeDays == 2 }" class="num fs_linear">{{ data1.monthElectricity.total || 0 }}
+ </div>
<div class="name">鏈湀鐢ㄧ數</div>
<div class="unit">kw路h</div>
- <img src="@/assets/images/ic_dianliang_b@2x.png" class="bg" alt="" />
+ <img v-if="activeDays == 2" src="@/assets/images/ic_dianliang@2x.png" class="bg" alt="" />
+ <img v-else src="@/assets/images/ic_dianliang_b@2x.png" class="bg" alt="" />
</div>
</div>
</div>
@@ -285,7 +298,8 @@
zxenergyDataList,
zxlastMonthOil,
zxloadCurve,
- zxenergyRegionData
+ zxenergyRegionData,
+ regionDataRanking
} from '@/api'
@@ -330,7 +344,10 @@
xAxis: {
type: 'category',
boundaryGap: false,
- data: data5.value.map(i => i.timeData)
+ axisLabel: {
+ color: '#D2E0FF'
+ },
+ data: data5.value.map(i => dayjs(i.timeData).format('M'))
},
tooltip: {
trigger: 'axis',
@@ -341,8 +358,12 @@
yAxis: {
type: 'value',
name: '鍗曚綅锛歀',
+ axisLabel: {
+ color: '#D2E0FF'
+ },
nameTextStyle: {
- padding: [0, 0, 0, -16] // 鍥涗釜鏁板瓧鍒嗗埆涓轰笂鍙充笅宸︿笌鍘熶綅缃窛绂�
+ color: '#D2E0FF',
+ padding: [0, 0, 0, -18] // 鍥涗釜鏁板瓧鍒嗗埆涓轰笂鍙充笅宸︿笌鍘熶綅缃窛绂�
},
splitLine: {
show: true,
@@ -447,13 +468,17 @@
xAxis: {
type: 'category',
boundaryGap: false,
+ axisLabel: {
+ color: '#D2E0FF'
+ },
data: data4.value.map(i => i.timeData)
},
yAxis: {
type: 'value',
name: '鍗曚綅锛歬w路h',
nameTextStyle: {
- padding: [0, 0, 0, -16] // 鍥涗釜鏁板瓧鍒嗗埆涓轰笂鍙充笅宸︿笌鍘熶綅缃窛绂�
+ padding: [0, 0, 0, -16], // 鍥涗釜鏁板瓧鍒嗗埆涓轰笂鍙充笅宸︿笌鍘熶綅缃窛绂�
+ color: '#D2E0FF'
},
splitLine: {
show: true,
@@ -463,10 +488,13 @@
type: 'dashed',
},
splitNumber: 4
+ },
+ axisLabel: {
+ color: '#D2E0FF'
}
},
grid: {
- top: '26%',
+ top: '18%',
left: '4%',
right: '2%',
bottom: '2%',
@@ -533,13 +561,19 @@
data1.value = result
})
}
+const activeDays = ref('1')
const data6 = ref({})
+const changeacDay = (val) => {
+ activeDays.value = val
+ getData6()
+}
const getData6 = () => {
- zxenergyRegionData().then(res => {
+ regionDataRanking({ type: activeDays.value }).then(res => {
const result = res.data
data6.value = result
})
}
+
const activeTab2 = ref(0)
const tabsClick2 = (v) => {
@@ -554,7 +588,7 @@
myChart.setOption({
grid: {
- top: '24%',
+ top: '20%',
left: '6%',
right: '2%',
bottom: '4%',
@@ -568,12 +602,19 @@
},
xAxis: {
type: 'category',
- data: data2.value.map(i => i.timeData)
+ axisLabel: {
+ color: '#D2E0FF'
+ },
+ data: data2.value.map(i => dayjs(i.timeData).format('M'))
},
yAxis: {
type: 'value',
name: unit,
+ axisLabel: {
+ color: '#D2E0FF'
+ },
nameTextStyle: {
+ color: '#D2E0FF',
padding: [0, 0, 4, -30] // 鍥涗釜鏁板瓧鍒嗗埆涓轰笂鍙充笅宸︿笌鍘熶綅缃窛绂�
},
splitLine: {
@@ -875,6 +916,7 @@
position: absolute;
text-align: center;
padding-top: 70px;
+ cursor: pointer;
.num {
font-size: 24px;
@@ -892,6 +934,13 @@
font-size: 14px;
color: #D0FFFA;
}
+
+ .active {
+ font-size: 36px;
+ color: #01D9FE;
+ font-weight: bold;
+ margin-bottom: 10px;
+ }
}
.bottom1 {
@@ -908,14 +957,8 @@
bottom: -0px;
left: 50%;
transform: translate(-50%, 0);
- padding-top: 50px;
+ /* padding-top: 50px; */
- .num {
- font-size: 36px;
- color: #01D9FE;
- line-height: 54px;
- font-weight: bold;
- }
}
}
}
@@ -976,7 +1019,7 @@
font-weight: 500;
margin-right: 6px;
font-size: 13px;
- width: 64px;
+ width: 68px;
}
.num {
--
Gitblit v1.9.3