From bb7971ee1b8dbfaa0e1ceb0d60daee974da77671 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Fri, 20 Oct 2023 17:57:31 +0800
Subject: [PATCH] 新增从中台读取数据(按水库和按行政区)
---
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/damSecurity/mapper/DamSecurityMapper.xml | 605 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 591 insertions(+), 14 deletions(-)
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/damSecurity/mapper/DamSecurityMapper.xml b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/damSecurity/mapper/DamSecurityMapper.xml
index e45bb51..8fc6ac1 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/damSecurity/mapper/DamSecurityMapper.xml
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/damSecurity/mapper/DamSecurityMapper.xml
@@ -69,7 +69,6 @@
<if test="dam.endTime != null and dam.endTime !='' ">
AND DATE_FORMAT(time,'%Y-%m-%d') <= #{dam.endTime}
</if>
-
)) errorNum
),SJZT_MD."att_ad_base" aab
where 1=1
@@ -79,10 +78,6 @@
</select>
-
-
-
-
<select id="listRegionCount" resultType="cn.gistack.sm.damSecurity.vo.DamSecurityStatistics">
@@ -202,12 +197,14 @@
)
</select>
+
<select id="tableResCount" resultType="cn.gistack.sm.damSecurity.vo.DamStationStatistics">
SELECT
info."guid" AS resCd,
info."name" AS resName,
info."eng_scal" AS engScal,
+ info."res_reg_code" AS resRegCode,
info."town_ad_code" AS townCode,
info."town_ad_name" AS townName,
info."county_ad_code" AS countyCode,
@@ -225,6 +222,7 @@
a."guid",
a."name",
a."eng_scal",
+ a."res_reg_code",
case when b."ad_grad" = 4 THEN b."ad_code" ELSE NULL END AS "town_ad_code",
case when b."ad_grad" = 4 THEN b."ad_name" ELSE NULL END AS "town_ad_name",
case when b."ad_grad" = 4 THEN b."order_id" ELSE NULL END AS "town_order_id",
@@ -252,21 +250,30 @@
where (f."res_cd" is not null OR g."res_cd" is not null OR h."res_cd" is not null)
) baseRes
LEFT JOIN (
- SELECT "res_cd",COUNT(*) wyStation
- FROM ( SELECT b."guid" as "res_cd",'wy' as "sys_resource"
- FROM (SELECT "station_code" from sjzt_md."att_mqtt_calc_data" group by "station_code") a LEFT JOIN SJZT_MD."att_res_base" b on substr(a."station_code",0,length(a."station_code")-2) = b."guid" )
+ SELECT "res_cd",COUNT(*) wyStation
+ FROM
+ (
+ SELECT b."guid" as "res_cd",'wy' as "sys_resource"
+ FROM (
+ SELECT "station_code" from sjzt_md."att_mqtt_calc_data" group by "station_code") a LEFT JOIN SJZT_MD."att_res_base" b on substr(a."station_code",0,length(a."station_code")-2) = b."guid"
+ WHERE b."guid" is not null
+ )
GROUP BY "res_cd"
) wy ON wy."res_cd" = baseRes."guid"
LEFT JOIN(
SELECT "res_cd", COUNT(*) syStation
FROM( SELECT b."guid" as "res_cd",'sy' as "sys_resource"
- FROM sjzt_ods."dsm_spg_spprmp" a LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code")
+ FROM sjzt_ods."dsm_spg_spprmp" a LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code"
+ WHERE b."guid" is not null
+ )
GROUP BY "res_cd"
) sy ON sy."res_cd" = baseRes."guid"
LEFT JOIN (
SELECT "res_cd",COUNT(*) slStation
FROM ( SELECT b."guid" as "res_cd",'sl' as "sys_resource"
- FROM sjzt_ods."dsm_spg_spqnmp" a LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code" group by b."guid" )
+ FROM sjzt_ods."dsm_spg_spqnmp" a LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code"
+ WHERE b."guid" is not null
+ group by b."guid" )
GROUP BY "res_cd"
) sl ON sl."res_cd" = baseRes."guid"
LEFT JOIN (
@@ -367,19 +374,21 @@
LEFT JOIN (
SELECT "res_cd",COUNT(*) wyStation
FROM ( SELECT b."guid" as "res_cd",'wy' as "sys_resource"
- FROM (SELECT "station_code" from sjzt_md."att_mqtt_calc_data" group by "station_code") a LEFT JOIN SJZT_MD."att_res_base" b on substr(a."station_code",0,length(a."station_code")-2) = b."guid" )
+ FROM (SELECT "station_code" from sjzt_md."att_mqtt_calc_data" group by "station_code") a LEFT JOIN SJZT_MD."att_res_base" b on substr(a."station_code",0,length(a."station_code")-2) = b."guid"
+ WHERE b."guid" is not null)
GROUP BY "res_cd"
) wy ON wy."res_cd" = baseRes."guid"
LEFT JOIN(
SELECT "res_cd", COUNT(*) syStation
FROM( SELECT b."guid" as "res_cd",'sy' as "sys_resource"
- FROM sjzt_ods."dsm_spg_spprmp" a LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code")
+ FROM sjzt_ods."dsm_spg_spprmp" a LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code"
+ WHERE b."guid" is not null)
GROUP BY "res_cd"
) sy ON sy."res_cd" = baseRes."guid"
LEFT JOIN (
SELECT "res_cd",COUNT(*) slStation
FROM ( SELECT b."guid" as "res_cd",'sl' as "sys_resource"
- FROM sjzt_ods."dsm_spg_spqnmp" a LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code" group by b."guid" )
+ FROM sjzt_ods."dsm_spg_spqnmp" a LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code" WHERE b."guid" is not null group by b."guid" )
GROUP BY "res_cd"
) sl ON sl."res_cd" = baseRes."guid"
LEFT JOIN (
@@ -427,11 +436,14 @@
) info
</select>
+
<select id="alarmResCount" resultType="cn.gistack.sm.damSecurity.vo.DamStationStatistics">
SELECT
arb."center_long" AS longitude,
arb."center_lat" AS latitude,
- resCd
+ resCd,
+ abb."code" AS basCode,
+ abb."name" AS basName
FROM
(
SELECT NAG.dam_id resCd,count(*) FROM YWXT.NKY_ALARM_GET NAG GROUP BY NAG.dam_id
@@ -441,9 +453,574 @@
LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+
+ LEFT JOIN SJZT_MD."rel_res_bas_loc" rrbl ON rrbl."res_guid" = baseAlarm.resCd
+ LEFT JOIN SJZT_MD."att_bas_base" abb ON abb."code" = rrbl."bas_guid"
+ LEFT JOIN SJZT_MD."att_bas_base" pabb ON abb."p_code" = pabb."code"
+
WHERE 1=1
<if test="dam.adCode != null and dam.adCode !='' ">
AND (province."ad_code" =#{dam.adCode} or city."ad_code" = #{dam.adCode} or county."ad_code" = #{dam.adCode})
</if>
+ <if test="basCodes != null and basCodes !='' ">
+ AND(
+ abb."code" in
+ <foreach collection="basCodes.split(',')" item="item" index="index" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ or pabb."code" in
+ <foreach collection="basCodes.split(',')" item="item" index="index" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ )
+ </if>
</select>
+
+ <select id="damResInfoCount" resultType="cn.gistack.sm.damSecurity.vo.DamStatisticsRes">
+ SELECT
+ base.total AS total,
+ base.errorNum AS errorNum,
+ (base.total - base.errorNum) AS normalNum,
+ base.type AS type,
+ base.typeName AS typeName
+ FROM
+ (
+ SELECT * FROM
+ (
+ -- 位移水库数
+ SELECT
+ COUNT(*) total,
+ '位移' AS typeName,
+ '3' AS type,
+ (SELECT COUNT(*)FROM
+ (
+ SELECT DAM_ID FROM YWXT.NKY_ALARM_GET temp
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = temp.dam_id
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE
+ (TYPE = 3 or type = 4 or type = 5) AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <if test=" adCode!= null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ GROUP BY DAM_ID
+ )
+ ) errorNum
+ FROM
+ (
+ SELECT "res_cd",COUNT(*) wyStation
+ FROM
+ (
+ SELECT b."guid" as "res_cd",'wy' as "sys_resource"
+ FROM
+ (
+ SELECT "station_code" from sjzt_md."att_mqtt_calc_data" group by "station_code"
+ ) a LEFT JOIN SJZT_MD."att_res_base" b on substr(a."station_code",0,length(a."station_code")-2) = b."guid"
+ where b."guid" is not null
+ ) temp
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = temp."res_cd"
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE 1= 1
+ <if test=" adCode!= null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ GROUP BY "res_cd"
+ )
+ UNION ALL
+ -- 渗压水库数
+ SELECT
+ COUNT(*) total,
+ '渗压' AS typeName ,
+ '1' AS type,
+ (SELECT COUNT(*) FROM
+ (
+ SELECT DAM_ID FROM YWXT.NKY_ALARM_GET temp
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = temp.dam_id
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE
+ TYPE = 1
+ AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <if test=" adCode!= null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ GROUP BY DAM_ID
+ )
+ ) errorNum
+ FROM
+ (
+ SELECT "res_cd", COUNT(*) syStation
+ FROM
+ (
+ SELECT b."guid" as "res_cd",'sy' as "sys_resource"
+ FROM sjzt_ods."dsm_spg_spprmp" a
+ LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code"
+ WHERE b."guid" is not null
+ ) temp
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = temp."res_cd"
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE 1=1
+ <if test=" adCode!= null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ GROUP BY "res_cd"
+ )
+ UNION ALL
+ -- 渗流水库数
+ SELECT
+ COUNT(*) total,
+ '渗流' AS typeName,
+ '2' AS type,
+ (
+ SELECT COUNT(*) FROM
+ (
+ SELECT DAM_ID FROM YWXT.NKY_ALARM_GET temp
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = temp.dam_id
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE
+ TYPE = 2
+ AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <if test=" adCode!= null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ GROUP BY DAM_ID
+ )
+ ) errorNum
+ FROM
+ (
+ SELECT
+ "res_cd",
+ COUNT(*) slStation
+ FROM (
+ SELECT
+ b."guid" as "res_cd",
+ 'sl' as "sys_resource"
+ FROM sjzt_ods."dsm_spg_spqn" a
+ LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code"
+ WHERE
+ b."guid" IS NOT NULL
+ AND a."mstm" >=now()-30 and a."mstm"<= now()
+
+
+
+ group by b."guid"
+ ) temp
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = temp."res_cd"
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ <if test=" adCode!= null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ GROUP BY "res_cd"
+ )
+ )
+ ) base
+
+ </select>
+
+ <select id="getResErrorList" resultType="cn.gistack.sm.damSecurity.vo.DamStationStatistics">
+
+ SELECT
+ DISTINCT
+ arb."guid" AS resCd,
+ arb."name" AS resName,
+ arb."center_long" AS longitude,
+ arb."center_lat" AS latitude
+ FROM YWXT.NKY_ALARM_GET NAG
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = NAG.DAM_ID
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE
+ DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <if test="dam.type != null and dam.type != '' and dam.type == 1">
+ AND NAG.TYPE = #{dam.type}
+ </if>
+ <if test="dam.type != null and dam.type != '' and dam.type == 2">
+ AND NAG.TYPE = #{dam.type}
+ </if>
+ <if test="dam.type != null and dam.type !='' and dam.type == 3">
+ AND (NAG.TYPE = '3' or NAG.TYPE = '4' or NAG.TYPE = '5')
+ </if>
+ <if test="adCode != null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ </select>
+
+ <select id="getResWyNormalList" resultType="cn.gistack.sm.damSecurity.vo.DamStationStatistics">
+ SELECT
+ DISTINCT arb."guid" AS resCd,
+ arb."name" AS resName,
+ arb."center_long" AS longitude,
+ arb."center_lat" AS latitude
+ FROM (
+ SELECT
+ b."guid" as "res_cd",
+ 'wy' as "sys_resource"
+ FROM (
+ SELECT "station_code" from sjzt_md."att_mqtt_calc_data" group by "station_code"
+ ) a LEFT JOIN SJZT_MD."att_res_base" b on substr(a."station_code",0,length(a."station_code")-2) = b."guid"
+ WHERE
+ b."guid" IS NOT NULL
+ and b."guid" NOT IN (
+ ifnull(
+ (
+ SELECT wm_concat(temp.resCd) FROM(
+ SELECT DISTINCT arb."guid" AS resCd
+ FROM YWXT.NKY_ALARM_GET NAG
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = NAG.DAM_ID
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE
+ DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ AND (NAG.TYPE = 3 OR NAG.TYPE = 4 OR NAG.TYPE = 5)
+ <if test=" adCode != null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ ) temp),'')
+ )
+ ) baseRes
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = baseRes."res_cd"
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE 1=1
+ <if test=" adCode != null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+
+
+ </select>
+
+ <select id="getResSyNormalList" resultType="cn.gistack.sm.damSecurity.vo.DamStationStatistics">
+ SELECT
+ DISTINCT arb."guid" AS resCd,
+ arb."name" AS resName,
+ arb."center_long" AS longitude,
+ arb."center_lat" AS latitude
+ FROM(
+ SELECT
+ b."guid" as "res_cd",
+ 'sy' as "sys_resource"
+ FROM sjzt_ods."dsm_spg_spprmp" a LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code"
+ WHERE b."guid" IS NOT NULL
+ AND b."guid" NOT IN (
+ ifnull(
+ (
+ SELECT wm_concat(temp.resCd)
+ FROM (
+ SELECT DISTINCT arb."guid" AS resCd
+ FROM YWXT.NKY_ALARM_GET NAG
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = NAG.DAM_ID
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE NAG.TYPE = 1 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <if test=" adCode != null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ ) temp),'')
+ )
+ ) baseRes
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = baseRes."res_cd"
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE 1=1
+ <if test=" adCode != null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+
+
+
+ </select>
+
+ <select id="getResSlNormalList" resultType="cn.gistack.sm.damSecurity.vo.DamStationStatistics">
+ SELECT
+ DISTINCT arb."guid" AS resCd,
+ arb."name" AS resName,
+ arb."center_long" AS longitude,
+ arb."center_lat" AS latitude
+ FROM (
+
+ SELECT
+ b."guid" as "res_cd",
+ 'sl' as "sys_resource"
+ FROM sjzt_ods."dsm_spg_spqn" a
+ LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code"
+ WHERE
+ b."guid" IS NOT NULL
+ AND a."mstm" >=now()-30 and a."mstm"<= now()
+ AND b."guid" NOT IN (
+ ifnull(
+ (SELECT wm_concat(temp.resCd) FROM
+ (
+ SELECT DISTINCT arb."guid" AS resCd
+
+ FROM YWXT.NKY_ALARM_GET NAG
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = NAG.DAM_ID
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE NAG.TYPE = 2 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <if test=" adCode != null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ ) temp),''
+ )
+ )
+ group by b."guid" ) baseRes
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = baseRes."res_cd"
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE 1=1
+ <if test=" adCode != null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ </select>
+
+
+ <select id="getSyList" resultType="cn.gistack.sm.damSecurity.vo.DamStationStatistics">
+ SELECT
+ DISTINCT arb."guid" AS resCd,
+ arb."name" AS resName,
+ arb."center_long" AS longitude,
+ arb."center_lat" AS latitude
+ FROM(
+ SELECT
+ b."guid" as "res_cd",
+ 'sy' as "sys_resource"
+ FROM sjzt_ods."dsm_spg_spprmp" a LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code"
+ WHERE b."guid" IS NOT NULL
+
+ <if test="status ==2">
+ AND b."guid" NOT IN (
+ ifnull(
+ (
+ SELECT wm_concat(temp.resCd)
+ FROM (
+ SELECT DISTINCT arb."guid" AS resCd
+ FROM YWXT.NKY_ALARM_GET NAG
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = NAG.DAM_ID
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE NAG.TYPE = 1 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <if test=" adCode != null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ ) temp),'')
+ )
+ </if>
+
+ <if test="status == 3">
+ AND b."guid" IN (
+ ifnull(
+ (
+ SELECT wm_concat(temp.resCd)
+ FROM (
+ SELECT DISTINCT arb."guid" AS resCd
+ FROM YWXT.NKY_ALARM_GET NAG
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = NAG.DAM_ID
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE NAG.TYPE = 1 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <if test=" adCode != null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ ) temp),'')
+ )
+ </if>
+ ) baseRes
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = baseRes."res_cd"
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE 1=1
+ <if test=" adCode != null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ </select>
+
+ <select id="getSlList" resultType="cn.gistack.sm.damSecurity.vo.DamStationStatistics">
+
+ SELECT
+ DISTINCT arb."guid" AS resCd,
+ arb."name" AS resName,
+ arb."center_long" AS longitude,
+ arb."center_lat" AS latitude
+ FROM (
+ SELECT
+ b."guid" as "res_cd",
+ 'sl' as "sys_resource"
+ FROM sjzt_ods."dsm_spg_spqn" a
+ LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code"
+ WHERE
+ b."guid" IS NOT NULL
+ AND a."mstm" >=now()-30 and a."mstm"<= now()
+ <if test="status == 2">
+ AND b."guid" NOT IN (
+ ifnull(
+ (SELECT wm_concat(temp.resCd) FROM
+ (
+ SELECT DISTINCT arb."guid" AS resCd
+
+ FROM YWXT.NKY_ALARM_GET NAG
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = NAG.DAM_ID
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE NAG.TYPE = 2 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <if test=" adCode != null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ ) temp),''
+ )
+ )
+ </if>
+
+ <if test="status == 3">
+ AND b."guid" IN (
+ ifnull(
+ (SELECT wm_concat(temp.resCd) FROM
+ (
+ SELECT DISTINCT arb."guid" AS resCd
+
+ FROM YWXT.NKY_ALARM_GET NAG
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = NAG.DAM_ID
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE NAG.TYPE = 2 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <if test=" adCode != null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ ) temp),''
+ )
+ )
+ </if>
+ group by b."guid" ) baseRes
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = baseRes."res_cd"
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE 1=1
+ <if test=" adCode != null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+
+
+ </select>
+
+ <select id="getWyList" resultType="cn.gistack.sm.damSecurity.vo.DamStationStatistics">
+ SELECT
+ DISTINCT arb."guid" AS resCd,
+ arb."name" AS resName,
+ arb."center_long" AS longitude,
+ arb."center_lat" AS latitude
+ FROM (
+ SELECT
+ b."guid" as "res_cd",
+ 'wy' as "sys_resource"
+ FROM (
+ SELECT "station_code" from sjzt_md."att_mqtt_calc_data" group by "station_code"
+ ) a LEFT JOIN SJZT_MD."att_res_base" b on substr(a."station_code",0,length(a."station_code")-2) = b."guid"
+ WHERE
+ b."guid" IS NOT NULL
+
+ <if test="status == 2">
+
+ and b."guid" NOT IN (
+ ifnull(
+ (
+ SELECT wm_concat(temp.resCd) FROM(
+ SELECT DISTINCT arb."guid" AS resCd
+ FROM YWXT.NKY_ALARM_GET NAG
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = NAG.DAM_ID
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE
+ DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ AND (NAG.TYPE = 3 OR NAG.TYPE = 4 OR NAG.TYPE = 5)
+ <if test=" adCode != null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ ) temp),'')
+ )
+
+ </if>
+ <if test="status == 3">
+
+ and b."guid" IN (
+ ifnull(
+ (
+ SELECT wm_concat(temp.resCd) FROM(
+ SELECT DISTINCT arb."guid" AS resCd
+ FROM YWXT.NKY_ALARM_GET NAG
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = NAG.DAM_ID
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE
+ DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ AND (NAG.TYPE = 3 OR NAG.TYPE = 4 OR NAG.TYPE = 5)
+ <if test=" adCode != null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+ ) temp),'')
+ )
+
+ </if>
+
+
+ ) baseRes
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = baseRes."res_cd"
+ LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
+ WHERE 1=1
+ <if test=" adCode != null and adCode !='' ">
+ AND (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
+ </if>
+
+
+
+ </select>
+
+
</mapper>
--
Gitblit v1.9.3