From 71af682447e953e309cc953e65a5f32cc24998b2 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期三, 18 三月 2026 17:04:56 +0800
Subject: [PATCH] feat: 生产下发时(砌块、板材)绑定最新的工艺路线到附表、删除生产订单时清除所有附表数据
---
src/main/resources/mapper/energy/EnergyConsumptionDetailMapper.xml | 32 ++++++++++++++++++++++++++++++--
1 files changed, 30 insertions(+), 2 deletions(-)
diff --git a/src/main/resources/mapper/energy/EnergyConsumptionDetailMapper.xml b/src/main/resources/mapper/energy/EnergyConsumptionDetailMapper.xml
index 4307123..227474c 100644
--- a/src/main/resources/mapper/energy/EnergyConsumptionDetailMapper.xml
+++ b/src/main/resources/mapper/energy/EnergyConsumptionDetailMapper.xml
@@ -41,14 +41,17 @@
</where>
</select>
<select id="calculateEnergy" resultType="java.util.Map">
- select SUM(COALESCE(ecd.dosage,0)) totalEnergyConsumption,
- SUM(COALESCE(ecd.dosage,0) * COALESCE(e.unit_price,0)) totalEnergyCost
+ select COALESCE(t.totalEnergyConsumption, 0) AS totalEnergyConsumption,
+ COALESCE(t.totalEnergyCost, 0) AS totalEnergyCost
+ from (select SUM(ecd.dosage) totalEnergyConsumption,
+ SUM(ecd.dosage * e.unit_price) totalEnergyCost
from energy_consumption_detail ecd
left join energy e on ecd.energy_id = e.id
where ecd.meter_reading_date between #{c.startDate} and #{c.endDate}
<if test="c.type != null and c.type != ''">
and ecd.type =#{c.type}
</if>
+ )t
</select>
<select id="energyConsumptionTypeProportion"
resultType="com.ruoyi.energy.dto.EnergyConsumptionTypeDto">
@@ -115,5 +118,30 @@
on z.meter_reading_date=C.meter_reading_date
order by z.meter_reading_date
</select>
+ <select id="energyAccountTypeDtos" resultType="com.ruoyi.energy.dto.EnergyAccountTypeDto">
+ select ecd.type energyAccountType,
+ SUM(COALESCE(ecd.dosage, 0) * e.unit_price) energyAccount
+ from energy_consumption_detail ecd
+ left join energy e on ecd.energy_id = e.id
+ where ecd.meter_reading_date between #{c.startDate} and #{c.endDate}
+ group by ecd.type
+ </select>
+ <select id="energyConsumptionDetailDtos"
+ resultType="com.ruoyi.energy.dto.EnergyConsumptionDetailDto">
+ select ecd.meter_reading_date,
+ e.energy_tyep,
+ ecd.type,
+ e.unit_price,
+ sum(ecd.dosage) dosage,
+ sum(ecd.dosage * e.unit_price) cost
+ from energy_consumption_detail ecd
+ left join energy e on ecd.energy_id = e.id
+ where ecd.meter_reading_date between #{c.startDate} and #{c.endDate}
+ group by ecd.meter_reading_date,
+ e.energy_tyep,
+ ecd.type,
+ e.unit_price
+ order by ecd.meter_reading_date
+ </select>
</mapper>
--
Gitblit v1.9.3