From 32a9814316c4292750a8e432e8a7e04ae2bef1c9 Mon Sep 17 00:00:00 2001
From: ZhuDongming <773644075@qq.com>
Date: Fri, 17 Apr 2020 14:53:20 +0800
Subject: [PATCH] update报表接口
---
src/main/resources/mapper/HistoryMinutelyMapper.xml | 38 ++++++++++++++++++++++++++++++++++++--
1 files changed, 36 insertions(+), 2 deletions(-)
diff --git a/src/main/resources/mapper/HistoryMinutelyMapper.xml b/src/main/resources/mapper/HistoryMinutelyMapper.xml
index 3c4b0f8..7af50a1 100644
--- a/src/main/resources/mapper/HistoryMinutelyMapper.xml
+++ b/src/main/resources/mapper/HistoryMinutelyMapper.xml
@@ -152,7 +152,7 @@
and hm.mac=#{mac}
</if>
and hm.time >= #{startTime}
- and hm.time <![CDATA[<=]]> #{endTime}
+ and hm.time <![CDATA[<]]> #{endTime}
</where>
ORDER BY
hm.time
@@ -173,10 +173,44 @@
and hm.mac=#{mac}
</if>
and hm.time >= #{startTime}
- and hm.time <![CDATA[<=]]> #{endTime}
+ and hm.time <![CDATA[<]]> #{endTime}
</where>
ORDER BY
hm.time
</select>
+ <select id="getDevicesAvgDataToExcel" resultType="java.util.LinkedHashMap">
+ select
+ rs.monitorPointName,rs.name,
+ <foreach collection="timeList" separator="," item="time">
+ max(case time when #{time} then rs.${sensorKey} else null end) as #{time}
+ </foreach>
+ from
+ (SELECT
+ m.name as monitorPointName,d.name,DATE_FORMAT(time, #{typeFormat}) time,
+ <foreach collection="sensorKeys" separator="," item="sensorKey">
+ AVG(json->'$.${sensorKey}[0]') AS '${sensorKey}'
+ </foreach>
+ FROM
+ history_${timeUnits} h,
+ device d,
+ monitor_point m
+ WHERE
+ h.mac=d.mac
+ AND d.monitor_point_id=m.id
+ AND h.time >= #{start}
+ AND h.time <![CDATA[<=]]> #{end}
+ AND h.mac in
+ <foreach collection="macs" open="(" separator="," close=")"
+ item="mac">
+ #{mac}
+ </foreach>
+ GROUP BY
+ h.mac,m.name,d.name,DATE_FORMAT(time, #{typeFormat})
+ ORDER BY
+ h.mac) rs
+ GROUP BY rs.monitorPointName,rs.name
+ order by rs.name
+ </select>
+
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0