From 3152a4e4dadcd6ebfb8e882aa356d063416d49cc Mon Sep 17 00:00:00 2001 From: kaiyu <404897439@qq.com> Date: Tue, 24 Nov 2020 09:58:26 +0800 Subject: [PATCH] Merge branch 'master' of http://blit.7drlb.com:8888/r/screen_job --- src/main/resources/mapper/WeatherMapper.xml | 67 +++++++++++++++++++++++++++------ 1 files changed, 55 insertions(+), 12 deletions(-) diff --git a/src/main/resources/mapper/WeatherMapper.xml b/src/main/resources/mapper/WeatherMapper.xml index 11c492c..51d8c73 100644 --- a/src/main/resources/mapper/WeatherMapper.xml +++ b/src/main/resources/mapper/WeatherMapper.xml @@ -1,6 +1,7 @@ <?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.WeatherMapper"> + <select id="getCityWeatherConfig" resultType="java.util.Map"> select city_code AS cityCode, city_id AS cityId @@ -119,6 +120,15 @@ from history_weather_${timeUnits} <where> city_code=#{cityCode} + + <if test="windDir != null"> + and value->'$.windDir' = #{windDir} + </if> + + <if test="windScale != null"> + and value->'$.windScale' = #{windScale} + </if> + <if test="condition == 0"> and cast(value->'$.condition' as UNSIGNED integer) > #{score} </if> @@ -143,12 +153,24 @@ and cast(value->'$.pressure' as UNSIGNED integer) <![CDATA[<=]]> #{endPressure} </if> - and time >= #{start} - and time <![CDATA[<]]> #{end} - and DATE_FORMAT(time, '%H') in - <foreach collection="hours" open="(" separator="," close=")" item="hour"> - #{hour} - </foreach> + <if test="start != null"> + and time >= #{start} + </if> + + <if test="end != null"> + and time <![CDATA[<]]> #{end} + </if> + + <if test="hours != null"> + and DATE_FORMAT(time, '%H') in + <foreach collection="hours" open="(" separator="," close=")" item="hour"> + #{hour} + </foreach> + </if> + + <if test="month != null"> + and DATE_FORMAT(time, '%m') = #{month} + </if> </where> </select> @@ -157,6 +179,15 @@ from real_weather <where> city_code=#{cityCode} + + <if test="windDir != null"> + and json->'$.windDir' = #{windDir} + </if> + + <if test="windScale != null"> + and json->'$.windScale' = #{windScale} + </if> + <if test="condition == 0"> and cast(json->'$.condition' as UNSIGNED integer) > #{score} </if> @@ -181,12 +212,24 @@ and cast(json->'$.pressure' as UNSIGNED integer) <![CDATA[<=]]> #{endPressure} </if> - and time >= #{start} - and time <![CDATA[<]]> #{end} - and DATE_FORMAT(time, '%H') in - <foreach collection="hours" open="(" separator="," close=")" item="hour"> - #{hour} - </foreach> + <if test="start != null"> + and time >= #{start} + </if> + + <if test="end != null"> + and time <![CDATA[<]]> #{end} + </if> + + <if test="hours != null"> + and DATE_FORMAT(time, '%H') in + <foreach collection="hours" open="(" separator="," close=")" item="hour"> + #{hour} + </foreach> + </if> + + <if test="month != null"> + and DATE_FORMAT(time, '%m') = #{month} + </if> </where> </select> </mapper> \ No newline at end of file -- Gitblit v1.8.0