From 106dbe94a4bcfc90fc646b0a1e017e23ad2b058b Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Mon, 07 May 2018 15:15:04 +0800
Subject: [PATCH] 三级警报数据

---
 src/main/resources/mapper/HistoryMinutelyMapper.xml |   34 +++++++++++++++++++++++++++-------
 1 files changed, 27 insertions(+), 7 deletions(-)

diff --git a/src/main/resources/mapper/HistoryMinutelyMapper.xml b/src/main/resources/mapper/HistoryMinutelyMapper.xml
index 148f6a4..4b1ea6e 100644
--- a/src/main/resources/mapper/HistoryMinutelyMapper.xml
+++ b/src/main/resources/mapper/HistoryMinutelyMapper.xml
@@ -7,7 +7,9 @@
 	</resultMap>
 	<select id="getSersionAvgByDevice" resultType="java.util.Map">
 		SELECT
-			${sensorKeyColumn}
+			<foreach  collection="sensorKeys" separator="," item="sensorKey">
+				AVG(json->'$.${sensorKey}[0]') AS '${sensorKey}'
+			</foreach>
 		FROM
 			history_minutely
 		WHERE
@@ -18,8 +20,10 @@
 	
 	<select id="getMonitorPointOrDeviceAvgData" resultType="java.util.Map">
 		SELECT
-			DATE_FORMAT(time, #{typeFormat}) time,
-			${sensorKeyColumn}
+			DATE_FORMAT(time, #{typeFormat}) time
+			<foreach  collection="sensorKeys" open="," separator="," item="sensorKey">
+				AVG(json->'$.${sensorKey}[0]') AS '${sensorKey}'
+			</foreach>
 		FROM
 			history_minutely h
 		WHERE
@@ -30,10 +34,26 @@
 		</if>
 		<if test="mac == null">
 		AND	h.mac IN
-			<foreach  collection="macs" open="(" separator="," close=")" item="listItem">
-				#{listItem}
-			</foreach>
-		
+			(SELECT
+				d.mac 
+			FROM
+				device d,
+				monitor_point mp 
+			WHERE
+				d.monitor_point_id = mp.id 
+				<if test="provinceCode != null">
+				AND mp.province_code = #{provinceCode}
+				</if>
+				<if test="cityCode != null">
+				AND mp.city_code = #{cityCode}
+				</if>
+				<if test="areaCode != null">
+				AND mp.area_code = #{areaCode}
+				</if>
+				<if test="monitorPointId != null">
+				AND mp.id =	#{monitorPointId}
+				</if>
+			)	
 		</if>
 		
 		GROUP BY

--
Gitblit v1.8.0