From f694728af353dcf32e270c0b1b27d81ba76fecd8 Mon Sep 17 00:00:00 2001 From: jinpengyong <jpy123456> Date: Mon, 21 Sep 2020 10:51:51 +0800 Subject: [PATCH] update --- src/main/resources/mapper/RealWeatherMapper.xml | 78 ++++++++++++++++++++++++++++++++++++++- 1 files changed, 76 insertions(+), 2 deletions(-) diff --git a/src/main/resources/mapper/RealWeatherMapper.xml b/src/main/resources/mapper/RealWeatherMapper.xml index c726685..8328fa8 100644 --- a/src/main/resources/mapper/RealWeatherMapper.xml +++ b/src/main/resources/mapper/RealWeatherMapper.xml @@ -2,14 +2,88 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.moral.mapper.RealWeatherMapper"> <resultMap id="BaseResultMap" type="com.moral.entity.RealWeather" > - <id column="monitor_point_id" property="monitorPointId" jdbcType="INTEGER" /> + <id column="city_code" property="cityCode" jdbcType="INTEGER" /> </resultMap> <insert id="insertRealWeather"> insert into real_weather values <foreach collection="list" item="item" separator=","> - (#{item.monitorPointId},#{item.time},#{item.json}) + (#{item.cityCode},#{item.time},#{item.json}) </foreach> </insert> + + <delete id="deleteRealWeather"> + delete from real_weather where time=#{time} + </delete> + + <select id="getTempAndCloud" resultType="java.util.Map"> + select DATE_FORMAT(time, #{typeFormat}) time, + json->'$.temp' 'temp', + json->'$.cloud' 'cloud' + from real_weather + where city_code=#{cityCode} + and time >= #{startTime} + AND time <![CDATA[<]]> #{endTime} + and DATE_FORMAT(time,'%H:%i:%s')=#{time} + and cast(json->'$.condition' as UNSIGNED INTEGER)>=#{condition} + </select> + + <select id="getDayData" resultType="java.util.Map"> + select + round(avg(json->'$.temp')) 'tempAvg', + round(avg(json->'$.vis')) 'vis', + round(avg(json->'$.cloud')) 'cloud', + round(avg(json->'$.windSpeed')) 'windSpeed', + round(sum(json->'$.precip'),1) 'precip' + from real_weather + where city_code=#{cityCode} + and time >= #{start} + AND time <![CDATA[<]]> #{end} + </select> + + <select id="getTimeMaxTemp" resultType="java.util.Map"> + select + DATE_FORMAT(time, #{typeFormat}) time, + from real_weather + where city_code=#{cityCode} + and time >= #{start} + AND time <![CDATA[<]]> #{end} + and json->'$.temp'= + ( + SELECT REPLACE(max(json->'$.temp'),"\"","") + FROM real_weather + WHERE time>=#{start} + and time <![CDATA[<]]> #{end} + and city_code=130900 + ) limit 0,1; + </select> + + <select id="getTimeMinTemp" resultType="java.util.Map"> + select + DATE_FORMAT(time, #{typeFormat}) time, + from real_weather + where city_code=#{cityCode} + and time >= #{start} + AND time <![CDATA[<]]> #{end} + and json->'$.temp'= + ( + SELECT REPLACE(max(json->'$.temp'),"\"","") + FROM real_weather + WHERE time>=#{start} + and time <![CDATA[<]]> #{end} + and city_code=130900 + ) limit 0,1; + </select> + + <select id="getWeatherByHour" resultType="java.util.Map"> + select DATE_FORMAT(time, '%Y-%m-%d %H:%i:%s') time, + value + from history_weather_${timeUnits} + where city_code=#{cityCode} + and ( + DATE_FORMAT(time, '%Y%H')=#{yearAndHour} + or DATE_FORMAT(time, '%Y%H')=#{yearAndHour1} + ) + </select> </mapper> \ No newline at end of file -- Gitblit v1.8.0