From d2ab6f7153e604bac7bc4ad58f27f368b65d8a1e Mon Sep 17 00:00:00 2001
From: yuan <123@>
Date: 星期二, 16 六月 2026 13:54:58 +0800
Subject: [PATCH] feat: 添加能耗数据综合分析功能,支持按天和周维度的趋势分析

---
 src/main/resources/mapper/http/TqdianbiaoEleRecordMapper.xml |   45 +++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 45 insertions(+), 0 deletions(-)

diff --git a/src/main/resources/mapper/http/TqdianbiaoEleRecordMapper.xml b/src/main/resources/mapper/http/TqdianbiaoEleRecordMapper.xml
new file mode 100644
index 0000000..cd4170b
--- /dev/null
+++ b/src/main/resources/mapper/http/TqdianbiaoEleRecordMapper.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.http.mapper.TqdianbiaoEleRecordMapper">
+
+    <select id="selectRecordList" resultType="com.ruoyi.http.vo.StatisticEleRecordVo">
+        SELECT
+            r.id AS id,
+            r.time_key AS timeKey,
+            r.meter_id AS meterId,
+            COALESCE(m.meter_name, m.address) AS meterName,
+            m.address AS address,
+            r.ratio AS ratio,
+            r.reading_method AS readingMethod,
+            r.prev_reading AS prevReading,
+            r.curr_reading AS currReading,
+            r.start_time AS startTime,
+            r.end_time AS endTime,
+            r.total_consumption AS totalConsumption,
+            r.sharp_consumption AS sharpConsumption,
+            r.peak_consumption AS peakConsumption,
+            r.flat_consumption AS flatConsumption,
+            r.valley_consumption AS valleyConsumption,
+            r.start_reading AS startReading,
+            r.end_reading AS endReading
+        FROM tqdianbiao_ele_record r
+        LEFT JOIN tqdianbiao_meter m ON r.meter_id = m.meter_id
+        WHERE r.dimension IN
+        <foreach collection="dimensions" item="dim" open="(" separator="," close=")">
+            #{dim}
+        </foreach>
+          AND RPAD(r.time_key, 12, '0') &gt;= #{startTime}
+          AND RPAD(r.time_key, 12, '0') &lt;= #{endTime}
+        ORDER BY r.time_key DESC, r.meter_id ASC
+    </select>
+
+    <select id="selectPrevReading" resultType="com.ruoyi.http.pojo.TqdianbiaoEleRecord">
+        SELECT id, meter_id, time_key, curr_reading, end_reading, ratio
+        FROM tqdianbiao_ele_record
+        WHERE meter_id = #{meterId}
+          AND time_key &lt; #{timeKey}
+        ORDER BY time_key DESC
+        LIMIT 1
+    </select>
+
+</mapper>

--
Gitblit v1.9.3