From fc8fe626f222e024c1c4b45759ef0102174e5b9c Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Wed, 12 Apr 2023 09:11:58 +0800
Subject: [PATCH] 添加风场历史小时数据显示

---
 screen-api/src/main/resources/mapper/HistoryHourlyMapper.xml |   57 ++++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 50 insertions(+), 7 deletions(-)

diff --git a/screen-api/src/main/resources/mapper/HistoryHourlyMapper.xml b/screen-api/src/main/resources/mapper/HistoryHourlyMapper.xml
index 90af3f8..92659b3 100644
--- a/screen-api/src/main/resources/mapper/HistoryHourlyMapper.xml
+++ b/screen-api/src/main/resources/mapper/HistoryHourlyMapper.xml
@@ -2,12 +2,55 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.moral.api.mapper.HistoryHourlyMapper">
 
-    <!-- ������������������������ -->
-    <resultMap id="BaseResultMap" type="com.moral.api.entity.HistoryHourly">
-        <result column="mac" property="mac"/>
-        <result column="time" property="time"/>
-        <result column="value" property="value"/>
-        <result column="version" property="version"/>
-    </resultMap>
+    <select id="selectHourlyData" resultType="java.lang.String">
+        SELECT `value` FROM history_hourly_${timeUnits} WHERE mac = #{mac} AND `time` = #{time}
+    </select>
+    
+    <select id="selectDataByMacsAndTime" parameterType="java.util.List" resultType="java.util.Map">
+        select mac, `time`, `value` from history_hourly_${timeUnits}
+        where mac in
+        <foreach collection="list" item="item" index="index" open="(" separator="," close=")">
+            #{item}
+        </foreach>
+        and `time` = #{time}
+    </select>
 
+    <select id="queryLastHourlyMac" resultType="java.lang.String">
+        SELECT `value` FROM history_hourly_${timeUnits} WHERE mac = #{mac} AND `time` = #{time}
+    </select>
+
+
+
+    <select id="getArea" resultType="com.moral.api.pojo.dto.Wind.WindData">
+        SELECT
+        d.longitude AS longitude,
+        d.latitude AS latitude,
+        CASE WHEN
+        h.value->'$.a01007' = 0 THEN 0.1 ELSE h.value->'$.a01007' END AS windSpeed,
+        h.value->'$.a01008' AS windDir
+        FROM history_hourly_${timeUnits} h ,
+        `device` AS d
+        WHERE d.mac = h.mac
+        AND d.mac IN
+        (SELECT mac FROM device WHERE monitor_point_id IN
+        <foreach item="monitorPointId" collection="monitorPointIds" index="index" open="(" separator="," close=")">
+            #{monitorPointId}
+        </foreach>
+        )
+        AND h.time = #{time}
+    </select>
+
+    <select id="getTVOCByMac" resultType="java.lang.String">
+        select `value` ->'$.${sensor}' from history_hourly_${yearAndMonth} where mac=#{mac} and time=#{time}
+    </select>
+
+
+    <select id="getPressureByMac" resultType="java.lang.String">
+        select `value`->'$.a01006' from history_hourly_${yearAndMonth} where mac=#{mac} and time=#{time}
+    </select>
+
+
+    <select id="getDataByMac" resultType="java.util.Map">
+        select `value`  from history_hourly_${yearAndMonth} where mac=#{mac} and time=#{time}
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0