From a98b1db4392c357304036e8b3cdd01646920300d Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Thu, 21 Jul 2022 15:41:23 +0800
Subject: [PATCH] 1.山洪
---
src/main/java/org/springblade/modules/mountainrain/mapper/MountainrainMapper.xml | 512 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 498 insertions(+), 14 deletions(-)
diff --git a/src/main/java/org/springblade/modules/mountainrain/mapper/MountainrainMapper.xml b/src/main/java/org/springblade/modules/mountainrain/mapper/MountainrainMapper.xml
index b358fe6..d9c40c1 100644
--- a/src/main/java/org/springblade/modules/mountainrain/mapper/MountainrainMapper.xml
+++ b/src/main/java/org/springblade/modules/mountainrain/mapper/MountainrainMapper.xml
@@ -261,11 +261,21 @@
FROM dbo.blade_mountain m
INNER JOIN ST_STBPRP_B s ON s.STCD = m.cenconding
GROUP BY m.cenconding FOR XML PATH ('')),
- 1,
- 1,
- ''
- ) AS siteids
+ 1,
+ 1,
+ ''
+ ) AS siteids
</select>
+
+ <!-- <select id="selectCode" resultType="java.lang.String">-->
+ <!-- SELECT stuff((-->
+ <!-- SELECT ',' + CONVERT(VARCHAR (25), cenconding)-->
+ <!-- FROM dbo.blade_mountain FOR XML PATH ('')),-->
+ <!-- 1,-->
+ <!-- 1,-->
+ <!-- ''-->
+ <!-- ) AS siteids-->
+ <!-- </select>-->
<select id="Mountains" resultMap="mountainrainResultMapcInfo">
SELECT cs.id,
@@ -342,7 +352,7 @@
gthours
FROM blade_mountain
) cs ON cs.cenconding = a.STCD
- LEFT JOIN (
+ inner JOIN (
SELECT stcd, soilval
FROM sys_soleval
) so ON so.stcd = a.STCD
@@ -388,7 +398,7 @@
AND strs.STCD IN (${code})
GROUP BY STCD
) c ON a.STCD = c.STCD
- LEFT JOIN (
+ INNER JOIN (
SELECT STCD,
st.STNM,
st.ADDVCD,
@@ -416,9 +426,10 @@
<insert id="soleInster">
insert
- sys_soleval(stcd,soilval) value (
+ sys_soleval(stcd,soilval,stime) value (
#{stcd},
- #{soilval}
+ #{soilval},
+ #{stime}
)
</insert>
@@ -429,23 +440,496 @@
<!--通过行政区编码查询站点-->
- <select id="selectAddvcd" resultType="java.util.Map" >
+ <select id="selectAddvcd" resultType="java.util.Map">
SELECT STCD
FROM dbo.ST_STBPRP_B
- WHERE STTP='RR' AND ADDVCD=#{addvcd}
+ WHERE 1=1
+ <if test="addvcd!=null and addvcd!='' and addvcd!='361000'">
+ and ADDVCD = #{addvcd}
+ </if>
+ AND (STTP = 'PP'
+ OR STTP = 'ZQ'
+ OR STTP = 'ZZ')
</select>
<!-- 批量插入预报信息-->
- <insert id ="insertYuc" parameterType="java.util.List" >
+ <insert id="insertYuc" parameterType="java.util.List">
insert into sys_yucpptn
(STCD,TM,DRP,INTV)
values
- <foreach collection ="list" item="item" index= "index" separator =",">
+ <foreach collection="list" item="item" index="index" separator=",">
(
#{item.STCD},#{item.TM},
#{item.DRP},
#{item.INTV}
)
- </foreach >
- </insert >
+ </foreach>
+ </insert>
+
+ <!--预报雨量站预警-->
+ <select id="selectYup" resultType="java.util.Map">
+ SELECT cs.STCD,
+ cs.STNM,
+ cs.STLC,
+ cs.ADDVNM,
+ cs.RVNM,
+ cs.HNNM,
+ cs.LTTD,
+ cs.LGTD,
+ isnull(a.drp, 0) AS drp,
+ a.INTV
+ FROM (SELECT str.DRP AS drp, STCD, INTV FROM sys_yucpptn str) a
+ LEFT JOIN (
+ SELECT STCD,
+ st.STNM,
+ st.ADDVCD,
+ st.STLC,
+ st.LTTD,
+ st.LGTD,
+ st.RVNM,
+ st.HNNM,
+ ad.ADDVNM
+ FROM dbo.ST_STBPRP_B st
+ INNER JOIN dbo.ST_ADDVCD_D ad ON ad.ADDVCD = st.ADDVCD
+ ) cs ON cs.STCD = a.STCD
+ </select>
+
+ <delete id="del">
+ delete
+ from sys_yucpptn
+ </delete>
+
+
+ <!--第二种预警-->
+ <select id="selectYum" resultMap="mountainrainResultMapcInfo">
+ SELECT cs.id,
+ cs.cenconding,
+ cs.crainfall,
+ isnull(cs.gohour, 0) gohour,
+ isnull(cs.gthour, 0) gthour,
+ isnull(cs.gshour, 0) gshour,
+ isnull(cs.imohour, 0) imohour,
+ isnull(cs.imthour, 0) imthour,
+ isnull(cs.imshour, 0) imshour,
+ isnull(cs.gohours, 0) gohours,
+ isnull(cs.gthours, 0) gthours,
+ a.drp1,
+ cs.township,
+ cs.village,
+ cs.village_group,
+ cs.dj,
+ cs.bw,
+ cs.county,
+ isnull(cs.fyear, 0) AS fyear,
+ isnull(cs.tyear, 0) AS tyear,
+ isnull(cs.oyear, 0) AS oyear,
+ isnull(so.soilval, 0) AS soilval
+ FROM (SELECT DRP AS drp1, STCD FROM sys_yucpptn) a
+ LEFT JOIN (
+ SELECT id,
+ cenconding,
+ crainfall,
+ township,
+ village,
+ village_group,
+ dj,
+ bw,
+ county,
+ fyear,
+ tyear,
+ oyear,
+ gohour,
+ gthour,
+ gshour,
+ imohour,
+ imthour,
+ imshour,
+ gohours,
+ gthours
+ FROM blade_mountain
+ ) cs ON cs.cenconding = a.STCD
+ INNER JOIN (SELECT stcd, soilval FROM sys_soleval) so ON so.stcd = a.STCD
+ </select>
+
+
+ <!--中小河流-->
+ <select id="selctsmriver" resultType="java.util.Map">
+ SELECT cs1.STCD,
+ cs1.TM,
+ cs1.Z,
+ sm.yjsw,
+ sm.stname,
+ sm.river,
+ sm.addvnm,
+ st.LGTD,
+ st.LTTD,
+ st.HNNM,
+ cs2.minz
+ FROM (
+ SELECT A.STCD,
+ MAX(A.TM) TM
+ FROM (SELECT STCD, TM FROM dbo.ST_RIVER_R where TM > #{dateEnd} AND TM <= #{time}) AS A
+ GROUP BY A.STCD
+ ) cs
+ INNER JOIN (SELECT STCD, TM, Z FROM dbo.ST_RIVER_R where TM > #{dateEnd} AND TM <= #{time}) cs1
+ ON cs.STCD = cs1.STCD
+ AND cs.TM = cs1.TM
+ INNER JOIN (SELECT stcd, yjsw, stname, river, addvnm
+ FROM sys_smallriver
+ GROUP BY stcd, yjsw, stname, river, addvnm) sm ON sm.stcd = cs1.STCD
+ INNER JOIN (SELECT LGTD, LTTD, STCD,HNNM FROM ST_STBPRP_B) st ON st.STCD = cs1.STCD
+ INNER JOIN (SELECT MIN(Z) AS minz, STCD
+ FROM dbo.ST_RIVER_R
+ where TM > #{begintime24} AND TM <= #{time}
+ GROUP BY STCD) cs2 ON cs.STCD = cs2.STCD
+ </select>
+ <!--大江大河-->
+ <select id="selctbgriver" resultType="java.util.Map">
+ SELECT cs1.STCD,
+ cs1.TM,
+ cs1.Z,
+ sm.yjsw,
+ sm.stname,
+ sm.river,
+ sm.addvnm,
+ st.LGTD,
+ st.LTTD,
+ st.HNNM,
+ cs2.minz
+ FROM (
+ SELECT A.STCD,
+ MAX(A.TM) TM
+ FROM (SELECT STCD, TM FROM dbo.ST_RIVER_R where TM > #{dateEnd} AND TM <= #{time}) AS A
+ GROUP BY A.STCD
+ ) cs
+ INNER JOIN (SELECT STCD, TM, Z FROM dbo.ST_RIVER_R where TM > #{dateEnd} AND TM <= #{time}) cs1
+ ON cs.STCD = cs1.STCD
+ AND cs.TM = cs1.TM
+ INNER JOIN (SELECT stcd, yjsw, stname, river, addvnm
+ FROM sys_bigriver
+ GROUP BY stcd, yjsw, stname, river, addvnm) sm ON sm.stcd = cs1.STCD
+ INNER JOIN (SELECT LGTD, LTTD, STCD, HNNM FROM ST_STBPRP_B) st ON st.STCD = cs1.STCD
+ INNER JOIN (SELECT MIN(Z) AS minz, STCD
+ FROM dbo.ST_RIVER_R
+ where TM > #{begintime24} AND TM <= #{time}
+ GROUP BY STCD) cs2 ON cs.STCD = cs2.STCD
+ </select>
+
+
+ <select id="selectTu" resultType="java.util.Map">
+ SELECT m.cenconding,
+ m.village_group as village,
+ m.county,
+ isnull(s.soilval, 0) AS soilval
+ FROM blade_mountain m
+ LEFT JOIN sys_soleval s ON s.stcd = m.cenconding
+ GROUP BY m.cenconding,
+ s.soilval,
+ m.village_group,
+ m.county
+ </select>
+
+
+ <!--山洪1小时预警-->
+ <select id="MountainYi" resultMap="mountainrainResultMapcInfo">
+ SELECT cs.id,
+ cs.cenconding,
+ cs.crainfall,
+ isnull(cs.gohour, 0) gohour,
+ isnull(cs.gthour, 0) gthour,
+ isnull(cs.gshour, 0) gshour,
+ isnull(cs.imohour, 0) imohour,
+ isnull(cs.imthour, 0) imthour,
+ isnull(cs.imshour, 0) imshour,
+ isnull(cs.gohours, 0) gohours,
+ isnull(cs.gthours, 0) gthours,
+ a.drp1,
+ cs.township,
+ cs.village,
+ cs.village_group,
+ cs.dj,
+ cs.bw,
+ cs.county,
+ isnull(cs.fyear, 0) as fyear,
+ isnull(cs.tyear, 0) as tyear,
+ isnull(cs.oyear, 0) as oyear,
+ isnull(so.soilval, 0) as soilval
+ FROM (
+ SELECT ISNULL(SUM(str.DRP), 0) AS drp1,
+ STCD
+ FROM dbo.ST_PPTN_R str
+ WHERE str.TM > #{dateEnd1}
+ AND str.TM <= #{times}
+ AND str.STCD IN (${code})
+ GROUP BY str.STCD
+ ) a
+ LEFT JOIN (
+ SELECT id,
+ cenconding,
+ crainfall,
+ township,
+ village,
+ village_group,
+ dj,
+ bw,
+ county,
+ fyear,
+ tyear,
+ oyear,
+ gohour,
+ gthour,
+ gshour,
+ imohour,
+ imthour,
+ imshour,
+ gohours,
+ gthours
+ FROM blade_mountain
+ ) cs ON cs.cenconding = a.STCD
+ LEFT JOIN (
+ SELECT stcd, soilval
+ FROM sys_soleval where datediff(day,stime, #{stime}) = 0
+ ) so ON so.stcd = a.STCD
+ </select>
+ <!--山洪2小时预警-->
+ <select id="MountainTw" resultMap="mountainrainResultMapcInfo">
+ SELECT cs.id,
+ cs.cenconding,
+ cs.crainfall,
+ isnull(cs.gohour, 0) gohour,
+ isnull(cs.gthour, 0) gthour,
+ isnull(cs.gshour, 0) gshour,
+ isnull(cs.imohour, 0) imohour,
+ isnull(cs.imthour, 0) imthour,
+ isnull(cs.imshour, 0) imshour,
+ isnull(cs.gohours, 0) gohours,
+ isnull(cs.gthours, 0) gthours,
+ a.drp1,
+ cs.township,
+ cs.village,
+ cs.village_group,
+ cs.dj,
+ cs.bw,
+ cs.county,
+ isnull(cs.fyear, 0) as fyear,
+ isnull(cs.tyear, 0) as tyear,
+ isnull(cs.oyear, 0) as oyear,
+ isnull(so.soilval, 0) as soilval
+ FROM (
+ SELECT ISNULL(SUM(str.DRP), 0) AS drp1,
+ STCD
+ FROM dbo.ST_PPTN_R str
+ WHERE str.TM > #{dateEnd2}
+ AND str.TM <= #{times}
+ AND str.STCD IN (${code})
+ GROUP BY str.STCD
+ ) a
+ LEFT JOIN (
+ SELECT id,
+ cenconding,
+ crainfall,
+ township,
+ village,
+ village_group,
+ dj,
+ bw,
+ county,
+ fyear,
+ tyear,
+ oyear,
+ gohour,
+ gthour,
+ gshour,
+ imohour,
+ imthour,
+ imshour,
+ gohours,
+ gthours
+ FROM blade_mountain
+ ) cs ON cs.cenconding = a.STCD
+ LEFT JOIN (
+ SELECT stcd, soilval
+ FROM sys_soleval where datediff(day,stime, #{stime}) = 0
+ ) so ON so.stcd = a.STCD
+ </select>
+ <select id="MountainTr" resultMap="mountainrainResultMapcInfo">
+ SELECT cs.id,
+ cs.cenconding,
+ cs.crainfall,
+ isnull(cs.gohour, 0) gohour,
+ isnull(cs.gthour, 0) gthour,
+ isnull(cs.gshour, 0) gshour,
+ isnull(cs.imohour, 0) imohour,
+ isnull(cs.imthour, 0) imthour,
+ isnull(cs.imshour, 0) imshour,
+ isnull(cs.gohours, 0) gohours,
+ isnull(cs.gthours, 0) gthours,
+ a.drp1,
+ cs.township,
+ cs.village,
+ cs.village_group,
+ cs.dj,
+ cs.bw,
+ cs.county,
+ isnull(cs.fyear, 0) as fyear,
+ isnull(cs.tyear, 0) as tyear,
+ isnull(cs.oyear, 0) as oyear,
+ isnull(so.soilval, 0) as soilval
+ FROM (
+ SELECT ISNULL(SUM(str.DRP), 0) AS drp1,
+ STCD
+ FROM dbo.ST_PPTN_R str
+ WHERE str.TM > #{dateEnd3}
+ AND str.TM <= #{times}
+ AND str.STCD IN (${code})
+ GROUP BY str.STCD
+ ) a
+ LEFT JOIN (
+ SELECT id,
+ cenconding,
+ crainfall,
+ township,
+ village,
+ village_group,
+ dj,
+ bw,
+ county,
+ fyear,
+ tyear,
+ oyear,
+ gohour,
+ gthour,
+ gshour,
+ imohour,
+ imthour,
+ imshour,
+ gohours,
+ gthours
+ FROM blade_mountain
+ ) cs ON cs.cenconding = a.STCD
+ LEFT JOIN (
+ SELECT stcd, soilval
+ FROM sys_soleval where datediff(day,stime, #{stime}) = 0
+ ) so ON so.stcd = a.STCD
+ </select>
+
+ <!--第一种预警一小时-->
+ <select id="selecMoneYi" resultType="java.util.Map">
+ SELECT cs.STCD,
+ cs.STNM,
+ cs.STLC,
+ cs.ADDVNM,
+ cs.RVNM,
+ cs.HNNM,
+ cs.LTTD,
+ cs.LGTD,
+ isnull(a.drp1, 0) as drp1
+ FROM (
+ SELECT SUM(str.DRP) AS drp1,
+ STCD
+ FROM dbo.ST_PPTN_R str
+ WHERE str.TM > #{dateEnd1}
+ AND str.TM <= #{times}
+ AND str.STCD IN (${code})
+ GROUP BY str.STCD
+ ) a
+ INNER JOIN (
+ SELECT STCD,
+ st.STNM,
+ st.ADDVCD,
+ st.STLC,
+ st.LTTD,
+ st.LGTD,
+ st.RVNM,
+ st.HNNM,
+ ad.ADDVNM
+ FROM dbo.ST_STBPRP_B st
+ INNER JOIN dbo.ST_ADDVCD_D ad ON ad.ADDVCD = st.ADDVCD
+ ) cs ON cs.STCD = a.STCD
+ </select>
+ <!--第一种预警两小时-->
+ <select id="selecMoneTw" resultType="java.util.Map">
+ SELECT cs.STCD,
+ cs.STNM,
+ cs.STLC,
+ cs.ADDVNM,
+ cs.RVNM,
+ cs.HNNM,
+ cs.LTTD,
+ cs.LGTD,
+ isnull(a.drp1, 0) as drp1
+ FROM (
+ SELECT SUM(str.DRP) AS drp1,
+ STCD
+ FROM dbo.ST_PPTN_R str
+ WHERE str.TM > #{dateEnd2}
+ AND str.TM <= #{times}
+ AND str.STCD IN (${code})
+ GROUP BY str.STCD
+ ) a
+ INNER JOIN (
+ SELECT STCD,
+ st.STNM,
+ st.ADDVCD,
+ st.STLC,
+ st.LTTD,
+ st.LGTD,
+ st.RVNM,
+ st.HNNM,
+ ad.ADDVNM
+ FROM dbo.ST_STBPRP_B st
+ INNER JOIN dbo.ST_ADDVCD_D ad ON ad.ADDVCD = st.ADDVCD
+ ) cs ON cs.STCD = a.STCD
+ </select>
+ <select id="selecMoneTr" resultType="java.util.Map">
+ SELECT cs.STCD,
+ cs.STNM,
+ cs.STLC,
+ cs.ADDVNM,
+ cs.RVNM,
+ cs.HNNM,
+ cs.LTTD,
+ cs.LGTD,
+ isnull(a.drp1, 0) as drp1
+ FROM (
+ SELECT SUM(str.DRP) AS drp1,
+ STCD
+ FROM dbo.ST_PPTN_R str
+ WHERE str.TM > #{dateEnd3}
+ AND str.TM <= #{times}
+ AND str.STCD IN (${code})
+ GROUP BY str.STCD
+ ) a
+ INNER JOIN (
+ SELECT STCD,
+ st.STNM,
+ st.ADDVCD,
+ st.STLC,
+ st.LTTD,
+ st.LGTD,
+ st.RVNM,
+ st.HNNM,
+ ad.ADDVNM
+ FROM dbo.ST_STBPRP_B st
+ INNER JOIN dbo.ST_ADDVCD_D ad ON ad.ADDVCD = st.ADDVCD
+ ) cs ON cs.STCD = a.STCD
+ </select>
+
+
+ <!--土壤色斑图-->
+ <select id="selectS" resultType="java.util.Map">
+ SELECT so.stcd,
+ so.soilval,
+ st.LGTD,
+ st.LTTD
+ FROM sys_soleval so
+ INNER JOIN dbo.ST_STBPRP_B st ON so.stcd = st.STCD
+ where datediff(day,stime, #{stime}) = 0
+ </select>
+
+
+<!-- <!–土壤湿度优化–>-->
+<!-- <select id="ss" resultType="java.util.Map">-->
+<!-- SELECT * FROM ST_PPTN_R WHERE DATEDIFF(dd, TM , '2021-06-29 08:00:00') <= 30 AND RIGHT(CONVERT(varchar(19),TM,120),5)='00:00'-->
+<!-- </select>-->
</mapper>
--
Gitblit v1.9.3