From 897524d4918c407dbaa32fc98e5c5867c70e4064 Mon Sep 17 00:00:00 2001
From: zhangwencui <1064582902@qq.com>
Date: 星期六, 28 三月 2026 14:54:24 +0800
Subject: [PATCH] 能耗成本核算-能耗成本趋势统计图展示修改
---
src/views/costAccounting/energyCosts/index.vue | 33 ++++++++++++++++++++++++++++++---
1 files changed, 30 insertions(+), 3 deletions(-)
diff --git a/src/views/costAccounting/energyCosts/index.vue b/src/views/costAccounting/energyCosts/index.vue
index 3680891..c386ef3 100644
--- a/src/views/costAccounting/energyCosts/index.vue
+++ b/src/views/costAccounting/energyCosts/index.vue
@@ -1080,6 +1080,33 @@
// 鏇存柊鑳借�楁垚鏈秼鍔垮浘
const updateCostChart = () => {
const data = tableData.value;
+
+ // 鎸夋棩鏈熷垎缁勫苟鍚堝苟鏁版嵁
+ const groupedData = {};
+ data.forEach(item => {
+ const date = item.meterReadingDate;
+ if (!groupedData[date]) {
+ groupedData[date] = {
+ productionCost: 0,
+ officeCost: 0,
+ };
+ }
+ if (item.type === "鐢熶骇") {
+ groupedData[date].productionCost += parseFloat(item.cost) || 0;
+ } else if (item.type === "鍔炲叕") {
+ groupedData[date].officeCost += parseFloat(item.cost) || 0;
+ }
+ });
+
+ // 杞崲涓烘暟缁勫苟鎸夋棩鏈熸帓搴�
+ const mergedData = Object.entries(groupedData)
+ .map(([date, costs]) => ({
+ date,
+ productionCost: costs.productionCost,
+ officeCost: costs.officeCost,
+ }))
+ .sort((a, b) => new Date(a.date) - new Date(b.date));
+
const option = {
tooltip: {
trigger: "axis",
@@ -1106,7 +1133,7 @@
},
xAxis: {
type: "category",
- data: data.map(item => item.meterReadingDate),
+ data: mergedData.map(item => item.date),
axisLabel: {
rotate: statisticsType.value === "day" ? 45 : 0,
color: "rgba(15, 23, 42, 0.62)",
@@ -1126,7 +1153,7 @@
{
name: "鐢熶骇鑳借�楁垚鏈�",
type: "bar",
- data: data.map(item => (item.type === "鐢熶骇" ? item.cost : 0)),
+ data: mergedData.map(item => item.productionCost),
itemStyle: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{ offset: 0, color: "#409EFF" },
@@ -1141,7 +1168,7 @@
{
name: "鍔炲叕鑳借�楁垚鏈�",
type: "bar",
- data: data.map(item => (item.type === "鍔炲叕" ? item.cost : 0)),
+ data: mergedData.map(item => item.officeCost),
itemStyle: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{ offset: 0, color: "#67C23A" },
--
Gitblit v1.9.3