From 634cc17925e9a7112238e08a53b6f70958e2cc2f Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Wed, 27 May 2020 11:34:56 +0800
Subject: [PATCH] 查询月度报警次数update

---
 src/main/resources/mapper/HangzhouAqiMapper.xml |   72 ++++++++++++++++++++++--------------
 1 files changed, 44 insertions(+), 28 deletions(-)

diff --git a/src/main/resources/mapper/HangzhouAqiMapper.xml b/src/main/resources/mapper/HangzhouAqiMapper.xml
index 81fe13b..26e4898 100644
--- a/src/main/resources/mapper/HangzhouAqiMapper.xml
+++ b/src/main/resources/mapper/HangzhouAqiMapper.xml
@@ -1,21 +1,21 @@
 <?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.moral.mapper.HangzhouAqiMapper">
-  <resultMap id="BaseResultMap" type="com.moral.entity.HangzhouAqi">
-    <id column="time" property="time" jdbcType="TIMESTAMP"/>
-    <result column="aqi_json" property="aqiJson" jdbcType="OTHER"/>
-    <result column="city_code" property="cityCode" jdbcType="VARCHAR"/>
-  </resultMap>
-  <sql id="Base_Column_List">
+    <resultMap id="BaseResultMap" type="com.moral.entity.HangzhouAqi">
+        <id column="time" property="time" jdbcType="TIMESTAMP"/>
+        <result column="aqi_json" property="aqiJson" jdbcType="OTHER"/>
+        <result column="city_code" property="cityCode" jdbcType="VARCHAR"/>
+    </resultMap>
+    <sql id="Base_Column_List">
     time, aqi_json, city_code
   </sql>
-  <!--<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.util.Date" >-->
-  <!--select-->
-  <!--<include refid="Base_Column_List" />-->
-  <!--from hangzhou_aqi-->
-  <!--where time = #{time,jdbcType=TIMESTAMP}-->
-  <!--</select>-->
-  <select id="selectAqisByCodeAndTimePeriod" resultType="map" parameterType="java.util.Date">
+    <!--<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.util.Date" >-->
+    <!--select-->
+    <!--<include refid="Base_Column_List" />-->
+    <!--from hangzhou_aqi-->
+    <!--where time = #{time,jdbcType=TIMESTAMP}-->
+    <!--</select>-->
+    <select id="selectAqisByCodeAndTimePeriod" resultType="map" parameterType="java.util.Date">
       select
         aqi_json->'$.AQI' as aqi,DATE_FORMAT(time,'${@com.moral.common.util.ReportTimeFormat@toMySqlTimeFormat(timePeriod.timeUnits)}') as 'time'
       from hangzhou_aqi
@@ -33,22 +33,38 @@
           order by time asc
     </select>
 
-  <select id="getAqisByOrganizationId" resultType="map">
-    SELECT
-    h.aqi_json ->> '$.AQI' * 1 aqi,
-    DATE_FORMAT( h.time, '%H' ) * 1 time
-    FROM
-    hangzhou_aqi h
-    <where>
-      h.city_code = #{cityCode}
-      AND h.time <![CDATA[<]]> #{end}
-    </where>
-    ORDER BY
-    h.time DESC
-    LIMIT 24
-  </select>
+    <select id="getAqisByOrganizationId" resultType="map">
+        SELECT
+        h.aqi_json ->> '$.AQI' * 1 aqi,
+        DATE_FORMAT( h.time, '%H' ) * 1 time
+        FROM
+        hangzhou_aqi h
+        <where>
+            h.city_code = #{cityCode}
+            AND h.time <![CDATA[<]]> #{end}
+        </where>
+        ORDER BY
+        h.time DESC
+        LIMIT 24
+    </select>
 
-  <select id="queryCityCode" resultType="integer">
+    <select id="queryCityCode" resultType="integer">
       select city_code from area where area_code = #{areaCode}
     </select>
+
+    <select id="getAreaAvgDataByAreaCode" resultType="java.util.Map">
+    SELECT
+    DATE_FORMAT(time, #{typeFormat}) time,
+    round(AVG(case when aqi_json->'$.${sensors}' is null then aqi_json->'$.${sensors1}' else aqi_json->'$.${sensors}' end),4)  as '${sensors2}'
+    FROM
+    hangzhou_aqi ha
+    WHERE
+    ha.time >= #{start}
+    AND ha.time <![CDATA[<]]> #{end}
+    AND ha.city_code = #{areaCode}
+    GROUP BY
+    DATE_FORMAT(time, #{typeFormat})
+    ORDER BY
+    time
+  </select>
 </mapper>

--
Gitblit v1.8.0