节能减排

This commit is contained in:
jiang 2025-07-24 14:31:23 +08:00
parent d3400648ed
commit 2df2c9410b
2 changed files with 24 additions and 14 deletions

View File

@ -78,4 +78,6 @@ public class DeviceEnergyAnalysis {
* 用于区分所属工程可作为查询过滤条件
*/
private String proId;
private String lastRecordDate;
}

View File

@ -28,20 +28,28 @@
</select>
<select id="selectAnomalyByDateRange" resultType="com.securitycontrol.screen.domain.DeviceEnergyAnalysis">
SELECT id AS id,
device_name AS deviceName,
stat_date AS statDate,
consumption_kwh AS consumptionKwh,
renewable_used_kwh AS renewableUsedKwh,
anomaly_level AS anomalyLevel,
anomaly_desc AS anomalyDesc
FROM device_energy_analysis
WHERE anomaly_flag = 1
AND stat_date BETWEEN #{startDate} AND #{endDate}
and pro_id = #{proId}
ORDER BY
FIELD(anomaly_level, 'danger', 'warning', 'info') ASC,
stat_date ASC;
SELECT dea.id AS id,
dea.device_name AS deviceName,
dea.stat_date AS statDate,
dea.consumption_kwh AS consumptionKwh,
dea.renewable_used_kwh AS renewableUsedKwh,
dea.anomaly_level AS anomalyLevel,
dea.anomaly_desc AS anomalyDesc,
-- 上次记录时间:同一设备、当前日期之前的最大 stat_date
(SELECT MAX(prev.stat_date)
FROM device_energy_analysis prev
WHERE prev.device_name = dea.device_name
AND prev.stat_date &lt; dea.stat_date
AND prev.pro_id = dea.pro_id) AS lastRecordDate
FROM device_energy_analysis dea
WHERE dea.anomaly_flag = 1
AND dea.stat_date BETWEEN #{startDate} AND #{endDate}
AND dea.pro_id = #{proId}
ORDER BY FIELD(dea.anomaly_level, 'danger', 'warning', 'info') ASC,
dea.stat_date ASC;
</select>
<select id="selectLatestAll" resultType="com.securitycontrol.screen.domain.EnergySavingMeasure">