From 5ed2476ff6672d9935682c4f360aa5c76d25d7f0 Mon Sep 17 00:00:00 2001
From: ZhuDongming <773644075@qq.com>
Date: Mon, 19 Aug 2019 16:53:30 +0800
Subject: [PATCH] 修改最大值最小值service实现

---
 src/main/resources/mapper/HistoryMinutelyMapper.xml |   66 ++++++++++++++++++++++----------
 1 files changed, 45 insertions(+), 21 deletions(-)

diff --git a/src/main/resources/mapper/HistoryMinutelyMapper.xml b/src/main/resources/mapper/HistoryMinutelyMapper.xml
index 45e4746..770c396 100644
--- a/src/main/resources/mapper/HistoryMinutelyMapper.xml
+++ b/src/main/resources/mapper/HistoryMinutelyMapper.xml
@@ -139,34 +139,58 @@
     <!-- ���������sensor������ -->
     <select id="getSensorData" resultType="java.util.LinkedHashMap">
         SELECT
-        <foreach collection="sensorKeys"
-                 item="sensorKey" separator="," close=",">
+        DATE_FORMAT(hm.time,'%Y-%m-%d %H:%i:%s') time,
+        <foreach collection="sensorKeys" item="sensorKey" separator=",">
             hm.json->'$.${sensorKey}[0]' as '${sensorKey}'
         </foreach>
-        DATE_FORMAT(hm.time,'%Y-%m-%d %H:%i:%s') as uavDate
         FROM
         history_minutely as hm
         <where>
-            <if test="mac!=null and mac!=''">
+            <if test="mac!=null">
                 and hm.mac=#{mac}
             </if>
+            and hm.time >= #{startTime}
+            and hm.time <![CDATA[<=]]> #{endTime}
         </where>
-        <choose>
-            <when test="startTime !=null and startTime != '' and endTime!=null and endTime !='' ">
-                and hm.time >= #{startTime}
-                and hm.time <![CDATA[<=]]> #{endTime}
-            </when>
-            <when test="startTime !=null and startTime != '' ">
-                and hm.time >= #{startTime}
-            </when>
-            <when test="endTime !=null and endTime != '' ">
-                and hm.time <![CDATA[<=]]> #{endTime}
-            </when>
-            <otherwise>
-                and hm.time >= date_add(now(), interval '-1 01:00:00' day_second)
-                and hm.time <![CDATA[<=]]> date_sub(now(),interval 1 day)
-            </otherwise>
-        </choose>
-        ORDER BY hm.time
+        ORDER BY
+        hm.time
+    </select>
+
+    <select id="getSensorDataMin" resultType="java.util.LinkedHashMap">
+        SELECT
+        DATE_FORMAT(hm.time,'%Y-%m-%d %H:%i:%s') time,
+        <foreach collection="sensorKeys" item="sensorKey" separator=",">
+            hm.json->'$.${sensorKey}[1]' as '${sensorKey}'
+        </foreach>
+        FROM
+        history_minutely as hm
+        <where>
+            <if test="mac!=null">
+                and hm.mac=#{mac}
+            </if>
+            and hm.time >= #{startTime}
+            and hm.time <![CDATA[<=]]> #{endTime}
+        </where>
+        ORDER BY
+        hm.time
+    </select>
+
+    <select id="getSensorDataMax" resultType="java.util.LinkedHashMap">
+        SELECT
+        DATE_FORMAT(hm.time,'%Y-%m-%d %H:%i:%s') time,
+        <foreach collection="sensorKeys" item="sensorKey" separator=",">
+            hm.json->'$.${sensorKey}[2]' as '${sensorKey}'
+        </foreach>
+        FROM
+        history_minutely as hm
+        <where>
+            <if test="mac!=null">
+                and hm.mac=#{mac}
+            </if>
+            and hm.time >= #{startTime}
+            and hm.time <![CDATA[<=]]> #{endTime}
+        </where>
+        ORDER BY
+        hm.time
     </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0