From 6b8971db2990a8bcb4c67ba0d07df2368a00a45e Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Thu, 28 Dec 2023 19:57:42 +0800
Subject: [PATCH] 大坝一张图接口
---
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/damSecurity/mapper/DamSecurityMapper.xml | 3144 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 2,991 insertions(+), 153 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..ae244b1 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
@@ -4,85 +4,95 @@
<select id="getSingleRegionCount" resultType="cn.gistack.sm.damSecurity.vo.DamSecurityStatistics">
SELECT allNum,errorNum,AllNum-errorNum normalNum,aab."ad_name" adName,aab."guid" adCode FROM
- (
- SELECT
- (
- SELECT count(*) FROM
- (
- SELECT
- a."guid",
- a."name",
- a."eng_scal",
- 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",
- case when b."ad_grad" = 3 THEN b."ad_code" when c."ad_grad" = 3 THEN c."ad_code" END AS "county_ad_code",
- case when b."ad_grad" = 3 THEN b."ad_name"when c."ad_grad" = 3 THEN C."ad_name" END AS "county_ad_name",
- case when b."ad_grad" = 3 THEN b."order_id"when c."ad_grad" = 3 THEN C."order_id" END AS "county_order_id",
- case when b."ad_grad" = 2 THEN b."ad_code"when c."ad_grad" = 2 THEN c."ad_code"ELSE d."ad_code" END AS "city_ad_code",
- case when b."ad_grad" = 2 THEN b."ad_name"when c."ad_grad" = 2 THEN c."ad_name"ELSE d."ad_name" END AS "city_ad_name",
- case when b."ad_grad" = 2 THEN b."order_id" when c."ad_grad" = 2 THEN c."order_id"ELSE d."order_id" END AS "city_order_id",
- case when b."ad_grad" = 1 THEN b."ad_code"when c."ad_grad" = 1 THEN c."ad_code"when d."ad_grad" = 1 THEN d."ad_code"ELSE e."ad_code" END AS "province_ad_code",
- case when b."ad_grad" = 1 THEN b."ad_name"when c."ad_grad" = 1 THEN c."ad_name"when d."ad_grad" = 1 THEN d."ad_name"ELSE e."ad_name" END AS "province_ad_name",
- case when b."ad_grad" = 1 THEN b."order_id"when c."ad_grad" = 1 THEN c."order_id" when d."ad_grad" = 1 THEN d."order_id"ELSE e."order_id" END AS "province_order_id"
- FROM sjzt_md."att_res_base" a
- LEFT JOIN (
- SELECT "res_cd", "sys_resource"FROM
- (SELECT b."guid" as "res_cd", 'sy' as "sys_resource" FROM sjzt_ods."dsm_spg_pztb" a LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code"
- UNION
- 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 "res_cd" is not null) f ON a."guid" = f."res_cd"
- LEFT JOIN (
- SELECT "res_cd", "sys_resource" 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") WHERE "res_cd" is not null) G on a."guid" = g."res_cd"
- LEFT JOIN (
- SELECT "res_cd", "sys_resource" 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" group by b."guid") WHERE "res_cd" is not null) h ON a."guid" = h."res_cd"
- LEFT JOIN sjzt_md."att_ad_base" b ON a."interior_ad_guid" = b."guid"
- LEFT JOIN sjzt_md."att_ad_base" c ON b."p_ad_code" = c."guid"
- LEFT JOIN sjzt_md."att_ad_base" d ON c."p_ad_code" = d."guid"
- LEFT JOIN sjzt_md."att_ad_base" e ON d."p_ad_code" = e."guid"
- where (f."res_cd" is not null OR g."res_cd" is not null OR h."res_cd" is not null)
- ) baseRes
- LEFT JOIN SJZT_MD."att_ad_base" aab ON aab."guid" = baseRes."town_ad_code"
- LEFT JOIN SJZT_MD."att_ad_base" aa ON aab."p_ad_code" = aa."ad_code"
- LEFT JOIN SJZT_MD."att_ad_base" ab ON aa."p_ad_code" = ab."ad_code"
- LEFT JOIN SJZT_MD."att_ad_base" ac ON ab."p_ad_code" = ac."ad_code"
- where 1=1
- <if test="dam.adCode != null and dam.adCode != '' ">
- AND (aab."ad_code" =#{dam.adCode} or aa."ad_code" = #{dam.adCode} or ab."ad_code" = #{dam.adCode} or ac."ad_code" = #{dam.adCode})
- </if>
- ) AllNum,
- (
- SELECT COUNT(*)
- FROM (SELECT distinct DAM_ID FROM 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" aab ON aab."guid" = arb."interior_ad_guid"
- LEFT JOIN SJZT_MD."att_ad_base" aa ON aab."p_ad_code" = aa."ad_code"
- LEFT JOIN SJZT_MD."att_ad_base" ab ON aa."p_ad_code" = ab."ad_code"
- LEFT JOIN SJZT_MD."att_ad_base" ac ON ab."p_ad_code" = ac."ad_code"
- WHERE 1=1
- <if test="dam.adCode != null and dam.adCode != '' ">
- and (aab."ad_code" =#{dam.adCode} or aa."ad_code" = #{dam.adCode} or ab."ad_code" = #{dam.adCode} or ac."ad_code" = #{dam.adCode})
- </if>
+ (
+ SELECT
+ (
+ SELECT count(*) FROM
+ (
+ SELECT
+ a."guid",
+ a."name",
+ a."eng_scal",
+ 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",
+ case when b."ad_grad" = 3 THEN b."ad_code" when c."ad_grad" = 3 THEN c."ad_code" END AS "county_ad_code",
+ case when b."ad_grad" = 3 THEN b."ad_name"when c."ad_grad" = 3 THEN C."ad_name" END AS "county_ad_name",
+ case when b."ad_grad" = 3 THEN b."order_id"when c."ad_grad" = 3 THEN C."order_id" END AS "county_order_id",
+ case when b."ad_grad" = 2 THEN b."ad_code"when c."ad_grad" = 2 THEN c."ad_code"ELSE d."ad_code" END AS
+ "city_ad_code",
+ case when b."ad_grad" = 2 THEN b."ad_name"when c."ad_grad" = 2 THEN c."ad_name"ELSE d."ad_name" END AS
+ "city_ad_name",
+ case when b."ad_grad" = 2 THEN b."order_id" when c."ad_grad" = 2 THEN c."order_id"ELSE d."order_id" END AS
+ "city_order_id",
+ case when b."ad_grad" = 1 THEN b."ad_code"when c."ad_grad" = 1 THEN c."ad_code"when d."ad_grad" = 1 THEN
+ d."ad_code"ELSE e."ad_code" END AS "province_ad_code",
+ case when b."ad_grad" = 1 THEN b."ad_name"when c."ad_grad" = 1 THEN c."ad_name"when d."ad_grad" = 1 THEN
+ d."ad_name"ELSE e."ad_name" END AS "province_ad_name",
+ case when b."ad_grad" = 1 THEN b."order_id"when c."ad_grad" = 1 THEN c."order_id" when d."ad_grad" = 1 THEN
+ d."order_id"ELSE e."order_id" END AS "province_order_id"
+ FROM sjzt_md."att_res_base" a
+ LEFT JOIN (
+ SELECT "res_cd", "sys_resource"FROM
+ (SELECT b."guid" as "res_cd", 'sy' as "sys_resource" FROM sjzt_ods."dsm_spg_pztb" a LEFT JOIN
+ SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code"
+ UNION
+ 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 "res_cd" is not null) f ON a."guid" = f."res_cd"
+ LEFT JOIN (
+ SELECT "res_cd", "sys_resource" 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")
+ WHERE "res_cd" is not null) G on a."guid" = g."res_cd"
+ LEFT JOIN (
+ SELECT "res_cd", "sys_resource" 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" group by b."guid") WHERE "res_cd" is not
+ null) h ON a."guid" = h."res_cd"
+ LEFT JOIN sjzt_md."att_ad_base" b ON a."interior_ad_guid" = b."guid"
+ LEFT JOIN sjzt_md."att_ad_base" c ON b."p_ad_code" = c."guid"
+ LEFT JOIN sjzt_md."att_ad_base" d ON c."p_ad_code" = d."guid"
+ LEFT JOIN sjzt_md."att_ad_base" e ON d."p_ad_code" = e."guid"
+ where (f."res_cd" is not null OR g."res_cd" is not null OR h."res_cd" is not null)
+ ) baseRes
+ LEFT JOIN SJZT_MD."att_ad_base" aab ON aab."guid" = baseRes."town_ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" aa ON aab."p_ad_code" = aa."ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" ab ON aa."p_ad_code" = ab."ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" ac ON ab."p_ad_code" = ac."ad_code"
+ where 1=1
+ <if test="dam.adCode != null and dam.adCode != '' ">
+ AND (aab."ad_code" =#{dam.adCode} or aa."ad_code" = #{dam.adCode} or ab."ad_code" = #{dam.adCode} or
+ ac."ad_code" = #{dam.adCode})
+ </if>
+ ) AllNum,
+ (
+ SELECT COUNT(*)
+ FROM (SELECT distinct DAM_ID FROM 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" aab ON aab."guid" = arb."interior_ad_guid"
+ LEFT JOIN SJZT_MD."att_ad_base" aa ON aab."p_ad_code" = aa."ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" ab ON aa."p_ad_code" = ab."ad_code"
+ LEFT JOIN SJZT_MD."att_ad_base" ac ON ab."p_ad_code" = ac."ad_code"
+ WHERE 1=1
+ <if test="dam.adCode != null and dam.adCode != '' ">
+ and (aab."ad_code" =#{dam.adCode} or aa."ad_code" = #{dam.adCode} or ab."ad_code" = #{dam.adCode} or
+ ac."ad_code" = #{dam.adCode})
+ </if>
- <if test="dam.startTime != null and dam.startTime != ''">
- AND DATE_FORMAT(time,'%Y-%m-%d') >= #{dam.startTime}
- </if>
- <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
+ <if test="dam.startTime != null and dam.startTime != ''">
+ AND DATE_FORMAT(time,'%Y-%m-%d') >= #{dam.startTime}
+ </if>
+ <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
<if test="dam.adCode != null and dam.adCode != '' ">
and aab."guid" = #{dam.adCode}
</if>
</select>
-
-
-
-
<select id="listRegionCount" resultType="cn.gistack.sm.damSecurity.vo.DamSecurityStatistics">
@@ -144,7 +154,8 @@
'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 "res_cd" is not null) f ON a."guid" = f."res_cd"
+ LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code") WHERE "res_cd" is not null) f ON a."guid" =
+ f."res_cd"
LEFT JOIN (SELECT
"res_cd",
"sys_resource"
@@ -154,7 +165,8 @@
'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") WHERE "res_cd" is not null) G on a."guid" = g."res_cd"
+ LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code" group by b."guid") WHERE "res_cd" is not null)
+ G on a."guid" = g."res_cd"
LEFT JOIN (SELECT
"res_cd",
"sys_resource"
@@ -164,12 +176,14 @@
'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" group by b."guid") WHERE "res_cd" is not null) h ON a."guid" = h."res_cd"
+ LEFT JOIN SJZT_MD."att_res_base" b on substr(a."station_code",0,length(a."station_code")-2) = b."guid" group by
+ b."guid") WHERE "res_cd" is not null) h ON a."guid" = h."res_cd"
LEFT JOIN sjzt_md."att_ad_base" b ON a."interior_ad_guid" = b."guid"
LEFT JOIN sjzt_md."att_ad_base" c ON b."p_ad_code" = c."guid"
LEFT JOIN sjzt_md."att_ad_base" d ON c."p_ad_code" = d."guid"
LEFT JOIN sjzt_md."att_ad_base" e ON d."p_ad_code" = e."guid"
- where (f."res_cd" is not null OR g."res_cd" is not null OR h."res_cd" is not null) and (d."ad_code" = aab."guid" or c."ad_code" = aab."guid" or b."ad_code" = aab."guid" )
+ where (f."res_cd" is not null OR g."res_cd" is not null OR h."res_cd" is not null) and (d."ad_code" = aab."guid"
+ or c."ad_code" = aab."guid" or b."ad_code" = aab."guid" )
)
) allNum,
@@ -182,14 +196,14 @@
where (d."ad_code" = aab."guid" or c."ad_code" = aab."guid" or b."ad_code" = aab."guid" )
<if test="dam.startTime != null and dam.startTime != ''">
- AND DATE_FORMAT(time,'%Y-%m-%d') >= #{dam.startTime}
+ AND DATE_FORMAT(time,'%Y-%m-%d') >= #{dam.startTime}
</if>
<if test="dam.endTime != null and dam.endTime !='' ">
AND DATE_FORMAT(time,'%Y-%m-%d') <= #{dam.endTime}
</if>
)) errorNum,
- aab."ad_name" adName , aab."guid" adCode from SJZT_MD."att_ad_base" aab
+ aab."ad_name" adName , aab."guid" adCode from SJZT_MD."att_ad_base" aab
where
<choose>
<when test="dam.adCode != null and dam.adCode !='' ">
@@ -202,12 +216,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,
@@ -216,35 +232,50 @@
info."city_ad_name" AS cityName,
(info.wy+info.sy+info.sl) AS total,
(info.wy+info.sy+info.sl-info.errorCountNum) AS normalNum,
- info.errorNum AS errorNum
+ info.errorNum AS errorNum
FROM
(
- SELECT baseRes.*,ifnull(wy.wyStation,0) wy ,ifnull(sy.syStation,0) sy,ifnull(sl.slStation,0) sl,ifnull(alarm.errorNum,0) errorNum, ifnull(c1.errorCountNum,0) errorCountNum FROM
+ SELECT baseRes.*,ifnull(wy.wyStation,0) wy ,ifnull(sy.syStation,0) sy,ifnull(sl.slStation,0)
+ sl,ifnull(alarm.errorNum,0) errorNum, ifnull(c1.errorCountNum,0) errorCountNum FROM
(
SELECT
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",
case when b."ad_grad" = 3 THEN b."ad_code" when c."ad_grad" = 3 THEN c."ad_code" END AS "county_ad_code",
case when b."ad_grad" = 3 THEN b."ad_name" when c."ad_grad" = 3 THEN C."ad_name" END AS "county_ad_name",
case when b."ad_grad" = 3 THEN b."order_id" when c."ad_grad" = 3 THEN C."order_id" END AS "county_order_id",
- case when b."ad_grad" = 2 THEN b."ad_code" when c."ad_grad" = 2 THEN c."ad_code" ELSE d."ad_code" END AS "city_ad_code",
- case when b."ad_grad" = 2 THEN b."ad_name" when c."ad_grad" = 2 THEN c."ad_name" ELSE d."ad_name" END AS "city_ad_name",
- case when b."ad_grad" = 2 THEN b."order_id" when c."ad_grad" = 2 THEN c."order_id" ELSE d."order_id" END AS "city_order_id",
- case when b."ad_grad" = 1 THEN b."ad_code" when c."ad_grad" = 1 THEN c."ad_code" when d."ad_grad" = 1 THEN d."ad_code" ELSE e."ad_code" END AS "province_ad_code",
- case when b."ad_grad" = 1 THEN b."ad_name" when c."ad_grad" = 1 THEN c."ad_name" when d."ad_grad" = 1 THEN d."ad_name" ELSE e."ad_name" END AS "province_ad_name",
- case when b."ad_grad" = 1 THEN b."order_id" when c."ad_grad" = 1 THEN c."order_id" when d."ad_grad" = 1 THEN d."order_id" ELSE e."order_id" END AS "province_order_id"
+ case when b."ad_grad" = 2 THEN b."ad_code" when c."ad_grad" = 2 THEN c."ad_code" ELSE d."ad_code" END AS
+ "city_ad_code",
+ case when b."ad_grad" = 2 THEN b."ad_name" when c."ad_grad" = 2 THEN c."ad_name" ELSE d."ad_name" END AS
+ "city_ad_name",
+ case when b."ad_grad" = 2 THEN b."order_id" when c."ad_grad" = 2 THEN c."order_id" ELSE d."order_id" END AS
+ "city_order_id",
+ case when b."ad_grad" = 1 THEN b."ad_code" when c."ad_grad" = 1 THEN c."ad_code" when d."ad_grad" = 1 THEN
+ d."ad_code" ELSE e."ad_code" END AS "province_ad_code",
+ case when b."ad_grad" = 1 THEN b."ad_name" when c."ad_grad" = 1 THEN c."ad_name" when d."ad_grad" = 1 THEN
+ d."ad_name" ELSE e."ad_name" END AS "province_ad_name",
+ case when b."ad_grad" = 1 THEN b."order_id" when c."ad_grad" = 1 THEN c."order_id" when d."ad_grad" = 1 THEN
+ d."order_id" ELSE e."order_id" END AS "province_order_id"
FROM sjzt_md."att_res_base" a
LEFT JOIN (
- SELECT "res_cd","sys_resource" FROM (SELECT b."guid" as "res_cd",'sy' as "sys_resource" FROM sjzt_ods."dsm_spg_pztb" a LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code"
+ SELECT "res_cd","sys_resource" FROM (SELECT b."guid" as "res_cd",'sy' as "sys_resource" FROM
+ sjzt_ods."dsm_spg_pztb" a LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code"
UNION
- 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 "res_cd" is not null) f ON a."guid" = f."res_cd"
+ 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 "res_cd" is not null) f ON a."guid" = f."res_cd"
LEFT JOIN (
- SELECT "res_cd", "sys_resource" 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") WHERE "res_cd" is not null) G on a."guid" = g."res_cd"
- LEFT JOIN (SELECT "res_cd", "sys_resource" 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" group by b."guid") WHERE "res_cd" is not null) h ON a."guid" = h."res_cd"
+ SELECT "res_cd", "sys_resource" 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")
+ WHERE "res_cd" is not null) G on a."guid" = g."res_cd"
+ LEFT JOIN (SELECT "res_cd", "sys_resource" 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" group by b."guid")
+ WHERE "res_cd" is not null) h ON a."guid" = h."res_cd"
LEFT JOIN sjzt_md."att_ad_base" b ON a."interior_ad_guid" = b."guid"
LEFT JOIN sjzt_md."att_ad_base" c ON b."p_ad_code" = c."guid"
LEFT JOIN sjzt_md."att_ad_base" d ON c."p_ad_code" = d."guid"
@@ -253,20 +284,30 @@
) 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" )
+ 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 ( 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"
+ WHERE b."guid" is not null
+ group by b."guid" )
GROUP BY "res_cd"
) sl ON sl."res_cd" = baseRes."guid"
LEFT JOIN (
@@ -274,7 +315,7 @@
WHERE 1=1
<if test="dam.startTime != null and dam.startTime != ''">
- AND DATE_FORMAT(time,'%Y-%m-%d') >= #{dam.startTime}
+ AND DATE_FORMAT(time,'%Y-%m-%d') >= #{dam.startTime}
</if>
<if test="dam.endTime != null and dam.endTime !='' ">
AND DATE_FORMAT(time,'%Y-%m-%d') <= #{dam.endTime}
@@ -290,7 +331,7 @@
SELECT DAM_ID, COUNT(*) FROM YWXT.NKY_ALARM_GET
WHERE 1=1
<if test="dam.startTime != null and dam.startTime != ''">
- AND DATE_FORMAT(time,'%Y-%m-%d') >= #{dam.startTime}
+ AND DATE_FORMAT(time,'%Y-%m-%d') >= #{dam.startTime}
</if>
<if test="dam.endTime != null and dam.endTime !='' ">
AND DATE_FORMAT(time,'%Y-%m-%d') <= #{dam.endTime}
@@ -305,7 +346,8 @@
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} )
+ AND (province."ad_code" = #{dam.adCode} or city."ad_code" =#{dam.adCode}or county."ad_code" = #{dam.adCode}
+ )
</if>
<if test="dam.resName != null and dam.resName !='' ">
@@ -318,21 +360,22 @@
<select id="tableResCountPage" resultType="cn.gistack.sm.damSecurity.vo.DamStationStatistics">
SELECT
- info."guid" AS resCd,
- info."name" AS resName,
- info."eng_scal" AS engScal,
- info."town_ad_code" AS townCode,
- info."town_ad_name" AS townName,
- info."county_ad_code" AS countyCode,
- info."county_ad_name" AS countyName ,
- info."city_ad_code" AS cityCode,
- info."city_ad_name" AS cityName,
- (info.wy+info.sy+info.sl) AS total,
- (info.wy+info.sy+info.sl-info.errorCountNum) AS normalNum,
- info.errorNum AS errorNum
+ info."guid" AS resCd,
+ info."name" AS resName,
+ info."eng_scal" AS engScal,
+ info."town_ad_code" AS townCode,
+ info."town_ad_name" AS townName,
+ info."county_ad_code" AS countyCode,
+ info."county_ad_name" AS countyName ,
+ info."city_ad_code" AS cityCode,
+ info."city_ad_name" AS cityName,
+ (info.wy+info.sy+info.sl) AS total,
+ (info.wy+info.sy+info.sl-info.errorCountNum) AS normalNum,
+ info.errorNum AS errorNum
FROM
(
- SELECT baseRes.*,ifnull(wy.wyStation,0) wy ,ifnull(sy.syStation,0) sy,ifnull(sl.slStation,0) sl,ifnull(alarm.errorNum,0) errorNum, ifnull(c1.errorCountNum,0) errorCountNum FROM
+ SELECT baseRes.*,ifnull(wy.wyStation,0) wy ,ifnull(sy.syStation,0) sy,ifnull(sl.slStation,0)
+ sl,ifnull(alarm.errorNum,0) errorNum, ifnull(c1.errorCountNum,0) errorCountNum FROM
(
SELECT
a."guid",
@@ -344,20 +387,33 @@
case when b."ad_grad" = 3 THEN b."ad_code" when c."ad_grad" = 3 THEN c."ad_code" END AS "county_ad_code",
case when b."ad_grad" = 3 THEN b."ad_name" when c."ad_grad" = 3 THEN C."ad_name" END AS "county_ad_name",
case when b."ad_grad" = 3 THEN b."order_id" when c."ad_grad" = 3 THEN C."order_id" END AS "county_order_id",
- case when b."ad_grad" = 2 THEN b."ad_code" when c."ad_grad" = 2 THEN c."ad_code" ELSE d."ad_code" END AS "city_ad_code",
- case when b."ad_grad" = 2 THEN b."ad_name" when c."ad_grad" = 2 THEN c."ad_name" ELSE d."ad_name" END AS "city_ad_name",
- case when b."ad_grad" = 2 THEN b."order_id" when c."ad_grad" = 2 THEN c."order_id" ELSE d."order_id" END AS "city_order_id",
- case when b."ad_grad" = 1 THEN b."ad_code" when c."ad_grad" = 1 THEN c."ad_code" when d."ad_grad" = 1 THEN d."ad_code" ELSE e."ad_code" END AS "province_ad_code",
- case when b."ad_grad" = 1 THEN b."ad_name" when c."ad_grad" = 1 THEN c."ad_name" when d."ad_grad" = 1 THEN d."ad_name" ELSE e."ad_name" END AS "province_ad_name",
- case when b."ad_grad" = 1 THEN b."order_id" when c."ad_grad" = 1 THEN c."order_id" when d."ad_grad" = 1 THEN d."order_id" ELSE e."order_id" END AS "province_order_id"
+ case when b."ad_grad" = 2 THEN b."ad_code" when c."ad_grad" = 2 THEN c."ad_code" ELSE d."ad_code" END AS
+ "city_ad_code",
+ case when b."ad_grad" = 2 THEN b."ad_name" when c."ad_grad" = 2 THEN c."ad_name" ELSE d."ad_name" END AS
+ "city_ad_name",
+ case when b."ad_grad" = 2 THEN b."order_id" when c."ad_grad" = 2 THEN c."order_id" ELSE d."order_id" END AS
+ "city_order_id",
+ case when b."ad_grad" = 1 THEN b."ad_code" when c."ad_grad" = 1 THEN c."ad_code" when d."ad_grad" = 1 THEN
+ d."ad_code" ELSE e."ad_code" END AS "province_ad_code",
+ case when b."ad_grad" = 1 THEN b."ad_name" when c."ad_grad" = 1 THEN c."ad_name" when d."ad_grad" = 1 THEN
+ d."ad_name" ELSE e."ad_name" END AS "province_ad_name",
+ case when b."ad_grad" = 1 THEN b."order_id" when c."ad_grad" = 1 THEN c."order_id" when d."ad_grad" = 1 THEN
+ d."order_id" ELSE e."order_id" END AS "province_order_id"
FROM sjzt_md."att_res_base" a
LEFT JOIN (
- SELECT "res_cd","sys_resource" FROM (SELECT b."guid" as "res_cd",'sy' as "sys_resource" FROM sjzt_ods."dsm_spg_pztb" a LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code"
+ SELECT "res_cd","sys_resource" FROM (SELECT b."guid" as "res_cd",'sy' as "sys_resource" FROM
+ sjzt_ods."dsm_spg_pztb" a LEFT JOIN SJZT_MD."att_res_base" b on a."rscd" = b."res_reg_code"
UNION
- 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 "res_cd" is not null) f ON a."guid" = f."res_cd"
+ 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 "res_cd" is not null) f ON a."guid" = f."res_cd"
LEFT JOIN (
- SELECT "res_cd", "sys_resource" 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") WHERE "res_cd" is not null) G on a."guid" = g."res_cd"
- LEFT JOIN (SELECT "res_cd", "sys_resource" 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" group by b."guid") WHERE "res_cd" is not null) h ON a."guid" = h."res_cd"
+ SELECT "res_cd", "sys_resource" 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")
+ WHERE "res_cd" is not null) G on a."guid" = g."res_cd"
+ LEFT JOIN (SELECT "res_cd", "sys_resource" 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" group by b."guid")
+ WHERE "res_cd" is not null) h ON a."guid" = h."res_cd"
LEFT JOIN sjzt_md."att_ad_base" b ON a."interior_ad_guid" = b."guid"
LEFT JOIN sjzt_md."att_ad_base" c ON b."p_ad_code" = c."guid"
LEFT JOIN sjzt_md."att_ad_base" d ON c."p_ad_code" = d."guid"
@@ -365,29 +421,33 @@
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" )
- GROUP BY "res_cd"
+ 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")
- GROUP BY "res_cd"
+ 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)
+ 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" )
- GROUP BY "res_cd"
+ 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" WHERE
+ b."guid" is not null group by b."guid" )
+ GROUP BY "res_cd"
) sl ON sl."res_cd" = baseRes."guid"
LEFT JOIN (
- SELECT DAM_ID ,COUNT(*) errorNum FROM NKY_ALARM_GET
- WHERE 1=1
+ SELECT DAM_ID ,COUNT(*) errorNum FROM NKY_ALARM_GET
+ WHERE 1=1
<if test="dam.startTime != null and dam.startTime != ''">
- AND DATE_FORMAT(time,'%Y-%m-%d') >= #{dam.startTime}
+ AND DATE_FORMAT(time,'%Y-%m-%d') >= #{dam.startTime}
</if>
<if test="dam.endTime != null and dam.endTime !='' ">
AND DATE_FORMAT(time,'%Y-%m-%d') <= #{dam.endTime}
@@ -395,21 +455,21 @@
GROUP BY "DAM_ID"
- ) alarm ON alarm.DAM_ID = baseRes."guid"
+ ) alarm ON alarm.DAM_ID = baseRes."guid"
LEFT JOIN (
- SELECT DAM_ID ,COUNT(*) errorCountNum
- FROM (
- SELECT DAM_ID, COUNT(*) FROM YWXT.NKY_ALARM_GET
- WHERE 1=1
+ SELECT DAM_ID ,COUNT(*) errorCountNum
+ FROM (
+ SELECT DAM_ID, COUNT(*) FROM YWXT.NKY_ALARM_GET
+ WHERE 1=1
<if test="dam.startTime != null and dam.startTime != ''">
- AND DATE_FORMAT(time,'%Y-%m-%d') >= #{dam.startTime}
+ AND DATE_FORMAT(time,'%Y-%m-%d') >= #{dam.startTime}
</if>
<if test="dam.endTime != null and dam.endTime !='' ">
AND DATE_FORMAT(time,'%Y-%m-%d') <= #{dam.endTime}
</if>
GROUP BY DAM_ID,POINT_ID
- ) baseCount GROUP BY DAM_ID) c1 ON c1.dam_id = baseRes."guid"
+ ) baseCount GROUP BY DAM_ID) c1 ON c1.dam_id = baseRes."guid"
LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = "town_ad_code"
LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code"
@@ -418,7 +478,8 @@
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} )
+ AND (province."ad_code" = #{dam.adCode} or city."ad_code" =#{dam.adCode}or county."ad_code" = #{dam.adCode}
+ )
</if>
<if test="dam.resName != null and dam.resName !='' ">
@@ -427,23 +488,2800 @@
) info
</select>
+
<select id="alarmResCount" resultType="cn.gistack.sm.damSecurity.vo.DamStationStatistics">
SELECT
- arb."center_long" AS longitude,
- arb."center_lat" AS latitude,
- resCd
+ arb."center_long" AS longitude,
+ arb."center_lat" AS latitude,
+ 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
+ ) baseAlarm
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = baseAlarm.resCd
+ 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"
+
+ 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 NAG.dam_id resCd,count(*) FROM YWXT.NKY_ALARM_GET NAG GROUP BY NAG.dam_id
- ) baseAlarm
- LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = baseAlarm.resCd
+ 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>
+ <select id="listRegionCountMonitor" resultType="cn.gistack.sm.damSecurity.vo.DamSecurityStatistics">
+ SELECT errorNum,adName,adCode FROM(
+ SELECT(
+ SELECT COUNT(*)FROM (
+ SELECT distinct DAM_ID FROM 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" b on arb."interior_ad_guid" = b."ad_code"
+ left join SJZT_MD."att_ad_base" c on b."p_ad_code" = c."ad_code"
+ left join SJZT_MD."att_ad_base" d on c."p_ad_code" = d."ad_code"
+
+ LEFT JOIN SJZT_MD."rel_res_bas_loc" rrbl ON rrbl."res_guid" = NAG.DAM_ID
+ 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 (d."ad_code" = aab."guid" or c."ad_code" = aab."guid" or b."ad_code" = aab."guid" )
+ <if test="dam.startTime != null and dam.startTime != ''">
+ AND DATE_FORMAT(time,'%Y-%m-%d') >= #{dam.startTime}
+ </if>
+ <if test="dam.endTime != null and dam.endTime !='' ">
+ AND DATE_FORMAT(time,'%Y-%m-%d') <= #{dam.endTime}
+ </if>
+
+ <if test="dam.engScal != null and dam.engScal !='' ">
+ AND arb."eng_scal" = #{dam.engScal}
+ </if>
+
+ <if test="dam.type != null and dam.type != '' and dam.type != 3">
+ 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="dam.label != null and dam.label != '' ">
+ AND( 1=1
+ <foreach collection="dam.label.split(',')" item="item" open="" separator="" close="" index="index">
+ OR #{item} in (arb."label")
+ </foreach>
+ )
+ </if>
+
+ <if test="dam.basGuid != null and dam.basGuid !='' ">
+ AND(
+ abb."code" in
+ <foreach collection="dam.basGuid.split(',')" item="item" index="index" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ or pabb."code" in
+ <foreach collection="dam.basGuid.split(',')" item="item" index="index" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ )
+ </if>
+ )
+ ) errorNum,
+ aab."ad_name" adName , aab."guid" adCode from SJZT_MD."att_ad_base" aab
+ where
+ <choose>
+ <when test="dam.adCode != null and dam.adCode !='' ">
+ "p_ad_code" = #{dam.adCode}
+ </when>
+ <otherwise>
+ "ad_grad" = 2
+ </otherwise>
+ </choose>
+ )
+
+ </select>
+
+
+ <select id="getRegionList" resultType="cn.gistack.sm.damSecurity.vo.DamMonitor">
+ SELECT aab."ad_name" adName , aab."guid" adCode from SJZT_MD."att_ad_base" aab where
+ <choose>
+ <when test="dam.adCode != null and dam.adCode !='' ">
+ "p_ad_code" = #{dam.adCode}
+ </when>
+ <otherwise>
+ "ad_grad" = 2
+ </otherwise>
+ </choose>
+ </select>
+ <select id="getLevelList" resultType="cn.gistack.sm.damSecurity.vo.LevelPo">
+ SELECT COUNT(*) AS num ,level FROM 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 arb."interior_ad_guid" = town."ad_code"
+ left join SJZT_MD."att_ad_base" county on town."p_ad_code" = county."ad_code"
+ left join SJZT_MD."att_ad_base" city on county."p_ad_code" = city."ad_code"
+ left join SJZT_MD."att_ad_base" province on city."p_ad_code" = province."ad_code"
+ LEFT JOIN SJZT_MD."rel_res_bas_loc" rrbl ON rrbl."res_guid" = NAG.DAM_ID
+
+ 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 and NAG.level != 5
+ AND (province."ad_code" = #{dam.adCode} or city."ad_code" = #{dam.adCode} or county."ad_code" = #{dam.adCode} or town."ad_code" = #{dam.adCode})
+ <if test="dam.startTime != null and dam.startTime != ''">
+ AND DATE_FORMAT(time,'%Y-%m-%d') >= #{dam.startTime}
+ </if>
+ <if test="dam.endTime != null and dam.endTime !='' ">
+ AND DATE_FORMAT(time,'%Y-%m-%d') <= #{dam.endTime}
+ </if>
+
+ <if test="dam.engScal != null and dam.engScal !='' ">
+ AND arb."eng_scal" = #{dam.engScal}
+ </if>
+
+ <if test="dam.type != null and dam.type != '' and dam.type != 3">
+ 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="dam.labels != null and dam.labels != '' ">
+ AND( 1!=1
+ <foreach collection="dam.labels.split(',')" item="item" open="" separator="" close="" index="index">
+ OR #{item} in (arb."label")
+ </foreach>
+ )
+ </if>
+
+ <if test="dam.basGuids != null and dam.basGuids !='' ">
+ AND(
+ abb."code" in
+ <foreach collection="dam.basGuids.split(',')" item="item" index="index" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ or pabb."code" in
+ <foreach collection="dam.basGuids.split(',')" item="item" index="index" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ )
+ </if>
+
+ GROUP BY LEVEL ORDER BY level ASC
+
+ </select>
+
+
+
+ <select id="pageMonitor" resultType="cn.gistack.nky.vo.AlarmGetVO">
+ SELECT
+ NAG.ID,
+ NAG.DAM_ID,
+ NAG.POINT_ID,
+ NAG.TYPE,
+ (
+ CASE
+ WHEN NAG.TYPE=1 THEN '渗压'
+ WHEN NAG.TYPE=2 THEN '渗流'
+ WHEN (NAG.TYPE=3 OR NAG.TYPE=4 OR NAG.TYPE=5) THEN '位移'
+ END) AS typeName,
+ NAG.TIME,
+ NAG.VALUE,
+ NAG."DESC",
+ NAG.CREATE_TIME,
+ NAG.TASK_CATEGORY,
+ NAG.LEVEL,
+ NAG.BAOJINGZHI,
+ NAG.ORIGIN_ID,
+ NAG.FORWARD,
+ NAG."REVERSE",
+ NAG.RATIO,
+ NAG.STATUS,
+ province."guid" as provinceCode,
+ province."ad_name" as provinceName,
+ city."guid" as cityCode,
+ city."ad_name" as cityName,
+ county."guid" as countyCode,
+ county."ad_name" as countyName,
+
+ arb."name" as reservoirName,
+ acb."cd_nm" as cdName
+
+ FROM 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"
+
+
+ LEFT JOIN SJZT_MD."rel_res_bas_loc" rrbl ON rrbl."res_guid" = NAG.DAM_ID
+
+ 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"
+ LEFT JOIN SJZT_MD."att_cd_base" acb ON acb."res_cd" = NAG.DAM_ID AND NAG.POINT_ID = acb."cd"
+ WHERE 1=1 and level != 5
+ <if test=" vo.adCode != null and vo.adCode !='' ">
+ AND (province."ad_code" =#{vo.adCode} or city."ad_code" = #{vo.adCode} or county."ad_code" = #{vo.adCode})
+ </if>
+
+ <if test="vo.startTime != null and vo.startTime != ''">
+ AND DATE_FORMAT(NAG.time,'%Y-%m-%d') >= #{vo.startTime}
+ </if>
+
+ <if test="vo.endTime != null and vo.endTime !='' ">
+ AND DATE_FORMAT(NAG.time,'%Y-%m-%d') <= #{vo.endTime}
+ </if>
+
+ <if test="vo.level != null and vo.level !='' ">
+ AND NAG.level = #{vo.level}
+ </if>
+
+ <if test="vo.status != null and vo.status !='' ">
+ AND NAG.status = #{vo.status}
+ </if>
+
+ <if test="vo.type != null and vo.type !='' and vo.type == 1 ">
+ AND NAG.type = #{vo.type}
+ </if>
+
+ <if test="vo.type != null and vo.type !='' and vo.type == 2">
+ AND NAG.type = #{vo.type}
+ </if>
+
+ <if test="vo.type != null and vo.type !='' and vo.type == 3">
+ AND (NAG.type = '3' or NAG.type = '4' or NAG.type = '5')
+ </if>
+
+ <if test="vo.pointId != null and vo.pointId !='' ">
+ AND NAG.POINT_id = #{vo.pointId}
+ </if>
+
+ <if test="vo.basGuids != null and vo.basGuids !='' ">
+ AND(
+ abb."code" in
+ <foreach collection="vo.basGuids.split(',')" item="item" index="index" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ or pabb."code" in
+ <foreach collection="vo.basGuids.split(',')" item="item" index="index" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ )
+ </if>
+
+ <if test="vo.labels != null and vo.labels != '' ">
+ AND( 1!=1
+ <foreach collection="vo.labels.split(',')" item="item" open="" separator="" close="" index="index">
+ OR #{item} in (arb."label")
+ </foreach>
+ )
+ </if>
+
+ <if test="vo.engScal != null and vo.engScal !='' ">
+ AND arb."eng_scal" = #{vo.engScal}
+ </if>
+
+ <if test="vo.resCds != null and vo.resCds != ''">
+ AND NAG.dam_id in
+ <foreach collection="vo.resCds.split(',')" item="item" index="index" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ </if>
+ ORDER BY NAG.TIME DESC
+
+ </select>
+ <select id="pageMonitorWy" resultType="cn.gistack.nky.vo.AlarmGetVO">
+
+ SELECT
+ NAG.ID,
+ NAG.DAM_ID,
+ NAG.POINT_ID,
+ NAG.TYPE,
+ (
+ CASE
+ WHEN NAG.TYPE=1 THEN '渗压'
+ WHEN NAG.TYPE=2 THEN '渗流'
+ WHEN (NAG.TYPE=3 OR NAG.TYPE=4 OR NAG.TYPE=5) THEN '位移'
+ END) AS typeName,
+ NAG.TIME,
+ NAG.VALUE,
+ NAG."DESC",
+ NAG.CREATE_TIME,
+ NAG.TASK_CATEGORY,
+ NAG.LEVEL,
+ NAG.BAOJINGZHI,
+ NAG.ORIGIN_ID,
+ NAG.FORWARD,
+ NAG."REVERSE",
+ NAG.RATIO,
+ NAG.STATUS,
+ province."guid" as provinceCode,
+ province."ad_name" as provinceName,
+ city."guid" as cityCode,
+ city."ad_name" as cityName,
+ county."guid" as countyCode,
+ county."ad_name" as countyName,
+
+ arb."name" as reservoirName,
+ awcb."cd_nm" as cdName
+
+ FROM 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"
+
+
+ LEFT JOIN SJZT_MD."rel_res_bas_loc" rrbl ON rrbl."res_guid" = NAG.DAM_ID
+
+ 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"
+ LEFT JOIN SJZT_MD."att_wy_cd_base" awcb ON awcb."res_cd" = NAG.DAM_ID AND NAG.POINT_ID = awcb."cd"
+ WHERE 1=1 and level != 5
+ <if test=" vo.adCode != null and vo.adCode !='' ">
+ AND (province."ad_code" =#{vo.adCode} or city."ad_code" = #{vo.adCode} or county."ad_code" = #{vo.adCode})
+ </if>
+
+ <if test="vo.startTime != null and vo.startTime != ''">
+ AND DATE_FORMAT(NAG.time,'%Y-%m-%d') >= #{vo.startTime}
+ </if>
+
+ <if test="vo.endTime != null and vo.endTime !='' ">
+ AND DATE_FORMAT(NAG.time,'%Y-%m-%d') <= #{vo.endTime}
+ </if>
+
+ <if test="vo.level != null and vo.level !='' ">
+ AND NAG.level = #{vo.level}
+ </if>
+
+ <if test="vo.status != null and vo.status !='' ">
+ AND NAG.status = #{vo.status}
+ </if>
+ <if test="vo.type != null and vo.type !='' and vo.type == 3">
+ AND (NAG.type = '3' or NAG.type = '4' or NAG.type = '5')
+ </if>
+
+ <if test="vo.pointId != null and vo.pointId !='' ">
+ AND NAG.POINT_id = #{vo.pointId}
+ </if>
+
+ <if test="vo.basGuids != null and vo.basGuids !='' ">
+ AND(
+ abb."code" in
+ <foreach collection="vo.basGuids.split(',')" item="item" index="index" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ or pabb."code" in
+ <foreach collection="vo.basGuids.split(',')" item="item" index="index" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ )
+ </if>
+
+ <if test="vo.labels != null and vo.labels != '' ">
+ AND( 1!=1
+ <foreach collection="vo.labels.split(',')" item="item" open="" separator="" close="" index="index">
+ OR #{item} in (arb."label")
+ </foreach>
+ )
+ </if>
+
+ <if test="vo.engScal != null and vo.engScal !='' ">
+ AND arb."eng_scal" = #{vo.engScal}
+ </if>
+
+ <if test="vo.resCds != null and vo.resCds != ''">
+ AND NAG.dam_id in
+ <foreach collection="vo.resCds.split(',')" item="item" index="index" open="(" separator="," close=")">
+ #{item}
+ </foreach>
+ </if>
+ ORDER BY NAG.TIME DESC
+
+ </select>
+
+
+
+ <select id="levelMonitorPie" resultType="cn.gistack.sm.damSecurity.vo.LevelPo">
+
+ </select>
+
+
+
+ <select id="getDamSyRegion" resultType="cn.gistack.sm.damSecurity.vo.DamStatisticsRegion">
+
+ <if test="dam.adCode == '420000000000'">
+ SELECT
+ tmp.*,
+ 'sy' as type,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.provinceName as adName,
+ r.provinceCode as adCode,
+ count(*) as total,
+ '1' AS adGrad
+ FROM (
+ SELECT
+ resList."res_cd",
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ 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=" 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>
+ GROUP BY "res_cd"
+
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList."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" )r
+ group by r.provinceName,r.provinceCode)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+ UNION ALL
+ </if>
+
+ SELECT
+ tmp.*,
+ 'sy' as type,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.cityName as adName,
+ r.cityCode as adCode,
+ count(*) as total,
+ '2' AS adGrad
+ FROM (
+ SELECT
+ resList."res_cd",
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ 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=" 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>
+ GROUP BY "res_cd"
+
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList."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" )r
+ group by r.cityName,r.cityCode)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+ UNION ALL
+
+ SELECT
+ tmp.*,
+ 'sy' as type,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.countyCode as adCode,
+ r.countyName as adName,
+ count(*) as total,
+ '3' AS adGrad
+ FROM (
+ SELECT
+ resList."res_cd",
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ 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=" 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>
+ GROUP BY "res_cd"
+
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList."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" )r
+ group by r.countyCode,r.countyName)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+
+ </select>
+ <select id="getDamSlRegion" resultType="cn.gistack.sm.damSecurity.vo.DamStatisticsRegion">
+ <if test="dam.adCode == '420000000000'">
+ SELECT
+ tmp.*,
+ 'sl' as type,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.provinceName as adName,
+ r.provinceCode as adCode,
+ count(*) as total,
+ '1' AS adGrad
+ FROM (
+ SELECT
+ resList."res_cd",
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ 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=" 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>
+ GROUP BY "res_cd"
+
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList."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" )r
+ group by r.provinceName,r.provinceCode)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+ UNION ALL
+ </if>
+
+ SELECT
+ tmp.*,
+ 'sl' as type,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.cityName as adName,
+ r.cityCode as adCode,
+ count(*) as total,
+ '2' AS adGrad
+ FROM (
+ SELECT
+ resList."res_cd",
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ 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=" 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>
+ GROUP BY "res_cd"
+
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList."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" )r
+ group by r.cityName,r.cityCode)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+ UNION ALL
+
+ SELECT
+ tmp.*,
+ 'sl' as type,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.countyCode as adCode,
+ r.countyName as adName,
+ count(*) as total,
+ '3' AS adGrad
+ FROM (
+ SELECT
+ resList."res_cd",
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ 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=" 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>
+ GROUP BY "res_cd"
+
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList."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" )r
+ group by r.countyCode,r.countyName)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+ </select>
+
+ <select id="getDamWyRegion" resultType="cn.gistack.sm.damSecurity.vo.DamStatisticsRegion">
+ <if test="dam.adCode == '420000000000'">
+ SELECT
+ tmp.*,
+ 'wy' as type,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.provinceName as adName,
+ r.provinceCode as adCode,
+ count(*) as total,
+ '1' AS adGrad
+ FROM (
+ SELECT
+ resList."res_cd",
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ 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=" 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>
+ GROUP BY "res_cd"
+
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList."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" )r
+ group by r.provinceName,r.provinceCode)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+ UNION ALL
+ </if>
+
+ SELECT
+ tmp.*,
+ 'wy' as type,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.cityName as adName,
+ r.cityCode as adCode,
+ count(*) as total,
+ '2' AS adGrad
+ FROM (
+ SELECT
+ resList."res_cd",
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ 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=" 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>
+ GROUP BY "res_cd"
+
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList."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" )r
+ group by r.cityName,r.cityCode)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+ UNION ALL
+
+ SELECT
+ tmp.*,
+ 'wy' as type,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.countyCode as adCode,
+ r.countyName as adName,
+ count(*) as total,
+ '3' AS adGrad
+ FROM (
+ SELECT
+ resList."res_cd",
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ 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=" 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>
+ GROUP BY "res_cd"
+
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList."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" )r
+ group by r.countyCode,r.countyName)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+ </select>
+
+
+
+ <select id="getErrorDamRegion" resultType="cn.gistack.sm.damSecurity.vo.DamStatisticsRegion">
+
+ <if test="dam.adCode == '420000000000'">
+ SELECT
+ tmp.*,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.provinceName as adName,
+ r.provinceCode as adCode,
+ count(*) as total,
+ '1' AS adGrad
+ FROM (
+ SELECT
+ resList.resCd,
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ FROM(
+
+ SELECT DAM_ID 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 1= 1 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <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="dam.type =='sy' ">
+ AND NAG.type = '1'
+ </if>
+ <if test="dam.type =='sl' ">
+ AND NAG.type = '2'
+ </if>
+ <if test="dam.type =='wy' ">
+ AND (NAG.type = '3' or NAG.type ='4' or NAG.type ='5' )
+ </if>
+
+ GROUP BY DAM_ID
+
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList.resCd
+ 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" )r
+ group by r.provinceName,r.provinceCode)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+ UNION ALL
+ </if>
+
+ SELECT
+ tmp.*,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.cityName as adName,
+ r.cityCode as adCode,
+ count(*) as total,
+ '2' AS adGrad
+ FROM (
+ SELECT
+ resList.resCd,
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ FROM(
+
+
+ SELECT DAM_ID 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 1= 1 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <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="dam.type =='sy' ">
+ AND NAG.type = '1'
+ </if>
+ <if test="dam.type =='sl' ">
+ AND NAG.type = '2'
+ </if>
+ <if test="dam.type =='wy' ">
+ AND (NAG.type = '3' or NAG.type ='4' or NAG.type ='5' )
+ </if>
+
+ GROUP BY DAM_ID
+
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList.resCd
+ 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" )r
+ group by r.cityName,r.cityCode)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+ UNION ALL
+
+ SELECT
+ tmp.*,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.countyCode as adCode,
+ r.countyName as adName,
+ count(*) as total,
+ '3' AS adGrad
+ FROM (
+ SELECT
+ resList.resCd,
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ FROM(
+
+ SELECT DAM_ID 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 1= 1 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <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="dam.type =='sy' ">
+ AND NAG.type = '1'
+ </if>
+ <if test="dam.type =='sl' ">
+ AND NAG.type = '2'
+ </if>
+ <if test="dam.type =='wy' ">
+ AND (NAG.type = '3' or NAG.type ='4' or NAG.type ='5' )
+ </if>
+
+ GROUP BY DAM_ID
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList.resCd
+ 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" )r
+ group by r.countyCode,r.countyName)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+
+
+ </select>
+ <select id="getDamSyRegionNormal" resultType="cn.gistack.sm.damSecurity.vo.DamStatisticsRegion">
+
+ <if test="dam.adCode == '420000000000'">
+ SELECT
+ tmp.*,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.provinceName as adName,
+ r.provinceCode as adCode,
+ count(*) as total,
+ '1' AS adGrad
+ FROM (
+ SELECT
+ resList.resCd,
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ FROM(
+
+ SELECT normalList."res_cd" as resCd FROM (
+ SELECT allList."res_cd",errorList."name" 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=" 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>
+ GROUP BY "res_cd"
+
+
+
+ ) allList LEFT JOIN
+
+ (
+ SELECT DAM_ID as resCd,arb."name" 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 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})
+ WHERE 1= 1 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <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="dam.type =='sy' ">
+ AND NAG.type = '1'
+ </if>
+ <if test="dam.type =='sl' ">
+ AND NAG.type = '2'
+ </if>
+ <if test="dam.type =='wy' ">
+ AND (NAG.type = '3' or NAG.type ='4' or NAG.type ='5' )
+ </if>
+
+ GROUP BY DAM_ID,arb."name"
+
+
+ ) errorList ON allList."res_cd" = errorList.resCd
+ )normalList where normalList."name" is null
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList.resCd
+ 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" )r
+ group by r.provinceName,r.provinceCode)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+ UNION ALL
</if>
+
+ SELECT
+ tmp.*,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.cityName as adName,
+ r.cityCode as adCode,
+ count(*) as total,
+ '2' AS adGrad
+ FROM (
+ SELECT
+ resList.resCd,
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ FROM(
+
+ SELECT normalList."res_cd" as resCd FROM (
+ SELECT allList."res_cd",errorList."name" 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=" 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>
+ GROUP BY "res_cd"
+ ) allList LEFT JOIN
+
+ (
+ SELECT DAM_ID as resCd,arb."name" 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 1= 1 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <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="dam.type =='sy' ">
+ AND NAG.type = '1'
+ </if>
+ <if test="dam.type =='sl' ">
+ AND NAG.type = '2'
+ </if>
+ <if test="dam.type =='wy' ">
+ AND (NAG.type = '3' or NAG.type ='4' or NAG.type ='5' )
+ </if>
+
+ GROUP BY DAM_ID,arb."name"
+
+
+ ) errorList ON allList."res_cd" = errorList.resCd
+ )normalList where normalList."name" is null
+
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList.resCd
+ 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" )r
+ group by r.cityName,r.cityCode)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+ UNION ALL
+
+ SELECT
+ tmp.*,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.countyCode as adCode,
+ r.countyName as adName,
+ count(*) as total,
+ '3' AS adGrad
+ FROM (
+ SELECT
+ resList.resCd,
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ FROM(
+
+ SELECT normalList."res_cd" as resCd FROM (
+ SELECT allList."res_cd",errorList."name" 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=" 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>
+ GROUP BY "res_cd"
+ ) allList LEFT JOIN
+
+ (
+ SELECT DAM_ID as resCd,arb."name" 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 1= 1 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <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="dam.type =='sy' ">
+ AND NAG.type = '1'
+ </if>
+ <if test="dam.type =='sl' ">
+ AND NAG.type = '2'
+ </if>
+ <if test="dam.type =='wy' ">
+ AND (NAG.type = '3' or NAG.type ='4' or NAG.type ='5' )
+ </if>
+
+ GROUP BY DAM_ID,arb."name"
+
+
+ ) errorList ON allList."res_cd" = errorList.resCd
+ )normalList where normalList."name" is null
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList.resCd
+ 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" )r
+ group by r.countyCode,r.countyName)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
</select>
+ <select id="getDamSlRegionNormal" resultType="cn.gistack.sm.damSecurity.vo.DamStatisticsRegion">
+
+
+
+
+
+
+
+
+ <if test="dam.adCode == '420000000000'">
+ SELECT
+ tmp.*,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.provinceName as adName,
+ r.provinceCode as adCode,
+ count(*) as total,
+ '1' AS adGrad
+ FROM (
+ SELECT
+ resList.resCd,
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ FROM(
+
+ SELECT normalList."res_cd" as resCd FROM (
+ SELECT allList."res_cd",errorList."name" 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=" 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>
+ GROUP BY "res_cd"
+
+
+
+ ) allList LEFT JOIN
+
+ (
+ SELECT DAM_ID as resCd,arb."name" 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 1= 1 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <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="dam.type =='sy' ">
+ AND NAG.type = '1'
+ </if>
+ <if test="dam.type =='sl' ">
+ AND NAG.type = '2'
+ </if>
+ <if test="dam.type =='wy' ">
+ AND (NAG.type = '3' or NAG.type ='4' or NAG.type ='5' )
+ </if>
+
+ GROUP BY DAM_ID,arb."name"
+
+
+ ) errorList ON allList."res_cd" = errorList.resCd
+ )normalList where normalList."name" is null
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList.resCd
+ 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" )r
+ group by r.provinceName,r.provinceCode)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+ UNION ALL
+ </if>
+
+ SELECT
+ tmp.*,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.cityName as adName,
+ r.cityCode as adCode,
+ count(*) as total,
+ '2' AS adGrad
+ FROM (
+ SELECT
+ resList.resCd,
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ FROM(
+
+ SELECT normalList."res_cd" as resCd FROM (
+ SELECT allList."res_cd",errorList."name" 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=" 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>
+ GROUP BY "res_cd"
+
+
+
+ ) allList LEFT JOIN
+
+ (
+ SELECT DAM_ID as resCd,arb."name" 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 1= 1 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <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="dam.type =='sy' ">
+ AND NAG.type = '1'
+ </if>
+ <if test="dam.type =='sl' ">
+ AND NAG.type = '2'
+ </if>
+ <if test="dam.type =='wy' ">
+ AND (NAG.type = '3' or NAG.type ='4' or NAG.type ='5' )
+ </if>
+
+ GROUP BY DAM_ID,arb."name"
+
+
+ ) errorList ON allList."res_cd" = errorList.resCd
+ )normalList where normalList."name" is null
+
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList.resCd
+ 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" )r
+ group by r.cityName,r.cityCode)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+ UNION ALL
+
+ SELECT
+ tmp.*,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.countyCode as adCode,
+ r.countyName as adName,
+ count(*) as total,
+ '3' AS adGrad
+ FROM (
+ SELECT
+ resList.resCd,
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ FROM(
+ SELECT normalList."res_cd" as resCd FROM (
+ SELECT allList."res_cd",errorList."name" 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=" 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>
+ GROUP BY "res_cd"
+
+
+
+ ) allList LEFT JOIN
+
+ (
+ SELECT DAM_ID as resCd,arb."name" 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 1= 1 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <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="dam.type =='sy' ">
+ AND NAG.type = '1'
+ </if>
+ <if test="dam.type =='sl' ">
+ AND NAG.type = '2'
+ </if>
+ <if test="dam.type =='wy' ">
+ AND (NAG.type = '3' or NAG.type ='4' or NAG.type ='5' )
+ </if>
+
+ GROUP BY DAM_ID,arb."name"
+
+
+ ) errorList ON allList."res_cd" = errorList.resCd
+ )normalList where normalList."name" is null
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList.resCd
+ 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" )r
+ group by r.countyCode,r.countyName)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ </select>
+ <select id="getDamWyRegionNormal" resultType="cn.gistack.sm.damSecurity.vo.DamStatisticsRegion">
+
+ <if test="dam.adCode == '420000000000'">
+ SELECT
+ tmp.*,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.provinceName as adName,
+ r.provinceCode as adCode,
+ count(*) as total,
+ '1' AS adGrad
+ FROM (
+ SELECT
+ resList.resCd,
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ FROM(
+
+ SELECT normalList."res_cd" as resCd FROM (
+ SELECT allList."res_cd",errorList."name" 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=" 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>
+ GROUP BY "res_cd"
+
+
+
+ ) allList LEFT JOIN
+
+ (
+ SELECT DAM_ID as resCd,arb."name" 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 1= 1 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <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="dam.type =='sy' ">
+ AND NAG.type = '1'
+ </if>
+ <if test="dam.type =='sl' ">
+ AND NAG.type = '2'
+ </if>
+ <if test="dam.type =='wy' ">
+ AND (NAG.type = '3' or NAG.type ='4' or NAG.type ='5' )
+ </if>
+
+ GROUP BY DAM_ID,arb."name"
+
+
+ ) errorList ON allList."res_cd" = errorList.resCd
+ )normalList where normalList."name" is null
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList.resCd
+ 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" )r
+ group by r.provinceName,r.provinceCode)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+ UNION ALL
+ </if>
+
+ SELECT
+ tmp.*,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.cityName as adName,
+ r.cityCode as adCode,
+ count(*) as total,
+ '2' AS adGrad
+ FROM (
+ SELECT
+ resList.resCd,
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ FROM(
+
+ SELECT normalList."res_cd" as resCd FROM (
+ SELECT allList."res_cd",errorList."name" 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=" 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>
+ GROUP BY "res_cd"
+
+
+
+
+ ) allList LEFT JOIN
+
+ (
+ SELECT DAM_ID as resCd,arb."name" 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 1= 1 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <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="dam.type =='sy' ">
+ AND NAG.type = '1'
+ </if>
+ <if test="dam.type =='sl' ">
+ AND NAG.type = '2'
+ </if>
+ <if test="dam.type =='wy' ">
+ AND (NAG.type = '3' or NAG.type ='4' or NAG.type ='5' )
+ </if>
+
+ GROUP BY DAM_ID,arb."name"
+
+
+ ) errorList ON allList."res_cd" = errorList.resCd
+ )normalList where normalList."name" is null
+
+
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList.resCd
+ 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" )r
+ group by r.cityName,r.cityCode)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+ UNION ALL
+
+ SELECT
+ tmp.*,
+ parent."p_ad_code" pAdCode,
+ parent."p_ad_name" pAdName
+ FROM(
+ SELECT
+ r.countyCode as adCode,
+ r.countyName as adName,
+ count(*) as total,
+ '3' AS adGrad
+ FROM (
+ SELECT
+ resList.resCd,
+ case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode,
+ case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName,
+ case when town."ad_grad" = 3 THEN town."ad_code"
+ when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode,
+ case when town."ad_grad" = 3 THEN town."ad_name"
+ when county."ad_grad" = 3 THEN county."ad_name" END AS countyName,
+ case when town."ad_grad" = 2 THEN town."ad_code"
+ when county."ad_grad" = 2 THEN county."ad_code"
+ ELSE city."ad_code" END AS cityCode,
+ case when town."ad_grad" = 2 THEN town."ad_name"
+ when county."ad_grad" = 2 THEN county."ad_name"
+ ELSE city."ad_name" END AS cityName,
+ case when town."ad_grad" = 1 THEN town."ad_code"
+ when county."ad_grad" = 1 THEN county."ad_code"
+ when city."ad_grad" = 1 THEN city."ad_code"
+ ELSE province."ad_code" END AS provinceCode,
+ case when town."ad_grad" = 1 THEN town."ad_name"
+ when county."ad_grad" = 1 THEN county."ad_name"
+ when city."ad_grad" = 1 THEN city."ad_name"
+ ELSE province."ad_name" END AS provinceName
+ FROM(
+
+ SELECT normalList."res_cd" as resCd FROM (
+ SELECT allList."res_cd",errorList."name" 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=" 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>
+ GROUP BY "res_cd"
+
+
+
+ ) allList LEFT JOIN
+
+ (
+ SELECT DAM_ID as resCd,arb."name" 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 1= 1 AND DATE_FORMAT(time,'%Y-%m-%d')>= CURDATE()
+ <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="dam.type =='sy' ">
+ AND NAG.type = '1'
+ </if>
+ <if test="dam.type =='sl' ">
+ AND NAG.type = '2'
+ </if>
+ <if test="dam.type =='wy' ">
+ AND (NAG.type = '3' or NAG.type ='4' or NAG.type ='5' )
+ </if>
+
+ GROUP BY DAM_ID,arb."name"
+
+
+ ) errorList ON allList."res_cd" = errorList.resCd
+ )normalList where normalList."name" is null
+ ) resList
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = resList.resCd
+ 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" )r
+ group by r.countyCode,r.countyName)TMP
+ LEFT JOIN SJZT_MD."att_ad_base" parent ON parent."guid" = tmp.adCode
+
+
+
+
+ </select>
+
+
</mapper>
--
Gitblit v1.9.3