From a1ec81c3b932a6758617c585a8397ced799936ff Mon Sep 17 00:00:00 2001
From: yuan <123@>
Date: 星期二, 16 六月 2026 10:58:29 +0800
Subject: [PATCH] feat: 优化能耗数据展示界面,调整布局和样式
---
src/views/energyManagement/energyStatistics/index.vue | 47 ++++++++++++++++++++++++++++++++++-------------
1 files changed, 34 insertions(+), 13 deletions(-)
diff --git a/src/views/energyManagement/energyStatistics/index.vue b/src/views/energyManagement/energyStatistics/index.vue
index 15889b5..4a63035 100644
--- a/src/views/energyManagement/energyStatistics/index.vue
+++ b/src/views/energyManagement/energyStatistics/index.vue
@@ -13,25 +13,25 @@
<el-col :span="6">
<div class="metric-box highlight">
<div class="metric-label">鎬荤敤鐢甸噺</div>
- <div class="metric-value">{{ yesterdaySummary.totalConsumption ?? 0 }} <span>kWh</span></div>
+ <div class="metric-value">{{ formatKwh(yesterdaySummary.totalConsumption) }} <span>kWh</span></div>
</div>
</el-col>
<el-col :span="6">
<div class="metric-box">
<div class="metric-label">骞冲潎鐢ㄧ數閲�</div>
- <div class="metric-value">{{ yesterdaySummary.avgConsumption ?? 0 }} <span>kWh</span></div>
+ <div class="metric-value">{{ formatKwh(yesterdaySummary.avgConsumption) }} <span>kWh</span></div>
</div>
</el-col>
<el-col :span="6">
<div class="metric-box">
<div class="metric-label">鏈�澶х敤鐢甸噺</div>
- <div class="metric-value">{{ yesterdaySummary.maxConsumption ?? 0 }} <span>kWh</span></div>
+ <div class="metric-value">{{ formatKwh(yesterdaySummary.maxConsumption) }} <span>kWh</span></div>
</div>
</el-col>
<el-col :span="6">
<div class="metric-box">
<div class="metric-label">鏈�灏忕敤鐢甸噺</div>
- <div class="metric-value">{{ yesterdaySummary.minConsumption ?? 0 }} <span>kWh</span></div>
+ <div class="metric-value">{{ formatKwh(yesterdaySummary.minConsumption) }} <span>kWh</span></div>
</div>
</el-col>
</el-row>
@@ -96,25 +96,25 @@
<el-col :span="6">
<div class="summary-card total">
<div class="label">鎬荤敤鐢甸噺</div>
- <div class="value">{{ summary.totalConsumption ?? 0 }} <span>kWh</span></div>
+ <div class="value">{{ formatKwh(summary.totalConsumption) }} <span>kWh</span></div>
</div>
</el-col>
<el-col :span="6">
<div class="summary-card">
<div class="label">骞冲潎鐢ㄧ數閲�</div>
- <div class="value">{{ summary.avgConsumption ?? 0 }} <span>kWh</span></div>
+ <div class="value">{{ formatKwh(summary.avgConsumption) }} <span>kWh</span></div>
</div>
</el-col>
<el-col :span="6">
<div class="summary-card">
<div class="label">鏈�澶х敤鐢甸噺</div>
- <div class="value">{{ summary.maxConsumption ?? 0 }} <span>kWh</span></div>
+ <div class="value">{{ formatKwh(summary.maxConsumption) }} <span>kWh</span></div>
</div>
</el-col>
<el-col :span="6">
<div class="summary-card">
<div class="label">鏈�灏忕敤鐢甸噺</div>
- <div class="value">{{ summary.minConsumption ?? 0 }} <span>kWh</span></div>
+ <div class="value">{{ formatKwh(summary.minConsumption) }} <span>kWh</span></div>
</div>
</el-col>
</el-row>
@@ -138,10 +138,21 @@
<el-table-column prop="meterId" label="鐢佃〃ID" width="100" />
<el-table-column prop="address" label="琛ㄥ湴鍧�" min-width="120" show-overflow-tooltip />
<el-table-column prop="collectorNo" label="閲囬泦鍣ㄥ彿" min-width="120" show-overflow-tooltip />
- <el-table-column prop="totalConsumption" label="鎬荤數閲�(kWh)" width="120" />
- <el-table-column prop="peakConsumption" label="宄�(kWh)" width="100" />
- <el-table-column prop="flatConsumption" label="骞�(kWh)" width="100" />
- <el-table-column prop="valleyConsumption" label="璋�(kWh)" width="100" />
+ <el-table-column prop="totalConsumption" label="鎬荤數閲�(kWh)" width="120">
+ <template #default="{ row }">{{ formatKwh(row.totalConsumption) }}</template>
+ </el-table-column>
+ <el-table-column prop="sharpConsumption" label="灏�(kWh)" width="100">
+ <template #default="{ row }">{{ formatKwh(row.sharpConsumption) }}</template>
+ </el-table-column>
+ <el-table-column prop="peakConsumption" label="宄�(kWh)" width="100">
+ <template #default="{ row }">{{ formatKwh(row.peakConsumption) }}</template>
+ </el-table-column>
+ <el-table-column prop="flatConsumption" label="骞�(kWh)" width="100">
+ <template #default="{ row }">{{ formatKwh(row.flatConsumption) }}</template>
+ </el-table-column>
+ <el-table-column prop="valleyConsumption" label="璋�(kWh)" width="100">
+ <template #default="{ row }">{{ formatKwh(row.valleyConsumption) }}</template>
+ </el-table-column>
<el-table-column prop="startTime" label="寮�濮嬫椂闂�" min-width="150" />
<el-table-column prop="endTime" label="缁撴潫鏃堕棿" min-width="150" />
</el-table>
@@ -183,6 +194,14 @@
const yearRange = ref([]);
const yesterdayLabel = computed(() => getYesterdayDayPicker());
+
+function formatKwh(value, digits = 2) {
+ const n = Number(value);
+ if (!Number.isFinite(n)) {
+ return (0).toFixed(digits);
+ }
+ return n.toFixed(digits);
+}
function initDefaultRange() {
const yesterday = getYesterdayDayPicker();
@@ -255,7 +274,9 @@
const labels = chartRecords.value.map((item) =>
parseTimeKey(item.timeKey, queryForm.dimension)
);
- const values = chartRecords.value.map((item) => item.totalConsumption || 0);
+ const values = chartRecords.value.map((item) =>
+ Number(formatKwh(item.totalConsumption))
+ );
chartInstance.setOption({
tooltip: { trigger: "axis" },
grid: { left: 50, right: 20, top: 30, bottom: 50 },
--
Gitblit v1.9.3