From 7276f122a92c9c7d45cf70fb1f8490dfb5c2448b Mon Sep 17 00:00:00 2001
From: zhangwencui <1064582902@qq.com>
Date: 星期二, 31 三月 2026 15:37:45 +0800
Subject: [PATCH] 能耗单耗修改
---
src/api/energyManagement/energyType.js | 8 ++++
src/views/reportAnalysis/unitEnergyConsumption/index.vue | 102 +++++++++++++++++++++++++++++++--------------------
2 files changed, 70 insertions(+), 40 deletions(-)
diff --git a/src/api/energyManagement/energyType.js b/src/api/energyManagement/energyType.js
index 1dd798a..80abc83 100644
--- a/src/api/energyManagement/energyType.js
+++ b/src/api/energyManagement/energyType.js
@@ -94,3 +94,11 @@
params: query,
});
}
+// 鑳借�楀崟鑰�---鎸夋棩鏈堝勾姹囨�荤粺璁�
+export function energyConsumptionDetailCollectEnergy(query) {
+ return request({
+ url: "/energyConsumptionDetail/collectEnergy",
+ method: "get",
+ params: query,
+ });
+}
diff --git a/src/views/reportAnalysis/unitEnergyConsumption/index.vue b/src/views/reportAnalysis/unitEnergyConsumption/index.vue
index d7a1867..dccd8fe 100644
--- a/src/views/reportAnalysis/unitEnergyConsumption/index.vue
+++ b/src/views/reportAnalysis/unitEnergyConsumption/index.vue
@@ -90,48 +90,38 @@
</el-icon>
鑳借�楀崟鑰楁暟鎹�
</h2>
- <el-table :data="tableValue"
+ <el-table :data="tableData2"
v-loading="tableLoading"
border>
- <el-table-column prop="meterReadingDate"
+ <!-- <el-table-column prop="meterReadingDate"
label="鏃ユ湡"
- align="center" />
- <!-- <el-table-column prop="type"
- label="绫诲瀷"
- align="center"
- width="100">
- <template #default="scope">
- <el-tag :type="scope.row.type === '鐢熶骇' ? 'primary' : 'success'">
- {{ scope.row.type }}
- </el-tag>
- </template>
- </el-table-column> -->
+ align="center" /> -->
<el-table-column prop="energyTyep"
label="鑳借�楃被鍨�"
align="center">
<template #default="scope">
- <el-tag :type="getEnergyTypeType(scope.row.type)">
- {{ scope.row.type }}
+ <el-tag :type="getEnergyTypeType(scope.row.energyTyep)">
+ {{ scope.row.energyTyep }}
</el-tag>
</template>
</el-table-column>
- <el-table-column prop="consumption"
+ <el-table-column prop="energyConsumption"
label="鐢ㄩ噺"
align="right" />
- <el-table-column prop="cost"
+ <el-table-column prop="energyCost"
label="鎴愭湰"
align="right">
<template #default="scope">
- <span class="data-value">楼{{ scope.row.cost }}</span>
+ <span class="data-value">楼{{ scope.row.energyCost }}</span>
</template>
</el-table-column>
- <el-table-column prop="unitConsumption"
+ <!-- <el-table-column prop="unitConsumption"
label="鍗曡��"
align="right">
<template #default="scope">
<span class="data-value">{{ scope.row.unitConsumption }}</span>
</template>
- </el-table-column>
+ </el-table-column> -->
</el-table>
</div>
</div>
@@ -142,7 +132,7 @@
import { ElMessage } from "element-plus";
import { TrendCharts, List } from "@element-plus/icons-vue";
import * as echarts from "echarts";
- import { energyConsumptionDetailStatistics } from "@/api/energyManagement/energyType";
+ import { energyConsumptionDetailCollectEnergy } from "@/api/energyManagement/energyType";
// 缁熻缁村害
const statisticsType = ref("day");
@@ -208,7 +198,7 @@
const typeMap = {
姘�: "primary",
鐢�: "warning",
- 钂告苯: "success",
+ 姘�: "success",
};
return typeMap[type] || "info";
};
@@ -330,7 +320,51 @@
);
// 浣跨敤瀹為檯鐨刴eterReadingDate浣滀负妯酱鏁版嵁
xAxisData = allDates;
-
+ const energyTypesList = ["姘�", "鐢�", "姘�"];
+ const seriesData = [
+ {
+ name: "姘�",
+ type: "line",
+ data: data.map(item => item.waterConsumption),
+ smooth: true,
+ symbol: "circle",
+ symbolSize: 8,
+ lineStyle: {
+ width: 3,
+ },
+ itemStyle: {
+ color: "#409EFF",
+ },
+ },
+ {
+ name: "鐢�",
+ type: "line",
+ data: data.map(item => item.electricityConsumption),
+ smooth: true,
+ symbol: "circle",
+ symbolSize: 8,
+ lineStyle: {
+ width: 3,
+ },
+ itemStyle: {
+ color: "#FF4D4F",
+ },
+ },
+ {
+ name: "姘�",
+ type: "line",
+ data: data.map(item => item.gasConsumption),
+ smooth: true,
+ symbol: "circle",
+ symbolSize: 8,
+ lineStyle: {
+ width: 3,
+ },
+ itemStyle: {
+ color: "#FF9900",
+ },
+ },
+ ];
const option = {
tooltip: {
trigger: "axis",
@@ -340,7 +374,7 @@
textStyle: { color: "#303133" },
},
legend: {
- data: ["鍗曡��"],
+ data: energyTypesList,
top: 0,
right: 10,
textStyle: { color: "#606266" },
@@ -370,26 +404,13 @@
axisLine: { show: false },
splitLine: { lineStyle: { color: "#f0f2f5" } },
},
- series: {
- name: "鍗曡��",
- type: "line",
- data: data.map(item => item.totalCost),
- smooth: true,
- symbol: "circle",
- symbolSize: 8,
- lineStyle: {
- width: 3,
- },
- itemStyle: {
- color: "#409EFF",
- },
- },
+ series: seriesData,
};
consumptionChartInstance.setOption(option);
};
const tableValue = ref([]);
-
+ const tableData2 = ref([]);
// 鏌ヨ
const handleQuery = () => {
tableLoading.value = true;
@@ -443,11 +464,12 @@
params.days = Math.ceil((end - start) / (1000 * 60 * 60 * 24)) + 1;
}
- energyConsumptionDetailStatistics(params)
+ energyConsumptionDetailCollectEnergy(params)
.then(res => {
if (res.code === 200) {
const data = res.data;
tableData.value = data.energyCostDtos || [];
+ tableData2.value = data.energyConsumptionTypeProportion || [];
tableValue.value = [];
tableData.value.forEach(item => {
tableValue.value.push({
--
Gitblit v1.9.3