From 5e972eb9928c39b5abbdfd35e2a0aeff40876e7d Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Tue, 07 May 2024 17:23:16 +0800
Subject: [PATCH] 修改不成功问题

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/damSecurity/mapper/DamSecurityMapper.xml |  164 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 160 insertions(+), 4 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 26107fc..fba93fa 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
@@ -821,6 +821,7 @@
 
         SELECT
         info."guid" AS resCd,
+        info."res_reg_code" as resRegCode,
         info."name" AS resName,
         info."eng_scal" AS engScal,
         info."town_ad_code" AS townCode,
@@ -841,6 +842,7 @@
         a."guid",
         a."name",
         a."eng_scal",
+        a."res_reg_code",
         case when b."ad_grad" = 4 THEN b."ad_code" ELSE NULL END AS "town_ad_code",
         case when b."ad_grad" = 4 THEN b."ad_name" ELSE NULL END AS "town_ad_name",
         case when b."ad_grad" = 4 THEN b."order_id" ELSE NULL END AS "town_order_id",
@@ -986,6 +988,7 @@
         SELECT
         arb."center_long" AS longitude,
         arb."center_lat" AS latitude,
+        arb."name" as resName,
         resCd,
         abb."code" AS basCode,
         abb."name" AS basName
@@ -1645,7 +1648,8 @@
                 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})
+
+        AND CONCAT(province."ad_code",city."ad_code",county."ad_code",town."ad_code") LIKE CONCAT('%',#{dam.adCode},'%')
         <if test="dam.startTime != null and dam.startTime != ''">
             AND time &gt;= #{dam.startTime}
         </if>
@@ -1741,9 +1745,8 @@
         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})
+            AND CONCAT(province."ad_code",city."ad_code",county."ad_code",town."ad_code") LIKE CONCAT('%',#{vo.adCode},'%')
         </if>
-
         <if test="vo.startTime != null and vo.startTime != ''">
             AND NAG.time &gt;= #{vo.startTime}
         </if>
@@ -1860,7 +1863,7 @@
         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})
+            AND CONCAT(province."ad_code",city."ad_code",county."ad_code",town."ad_code") LIKE CONCAT('%',#{vo.adCode},'%')
         </if>
 
         <if test="vo.startTime != null and vo.startTime != ''">
@@ -4583,6 +4586,159 @@
         )
         )TMP
     </select>
+    <select id="getLatestResRecord" resultType="cn.gistack.nky.vo.AlarmGetVO">
+        SELECT
+            NAG.DAM_ID,
+            NAG.POINT_ID,
+            NAG.TYPE,
+            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,
+
+            ARB."name" reservoirName,
+            acb."cd_nm" cdName,
+
+            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
+
+        FROM YWXT.NKY_ALARM_GET NAG
+                 right JOIN (
+            SELECT
+                NAG.DAM_ID,
+                NAG.POINT_ID,
+                MAX(NAG.TIME)TIME,
+		        NAG.TYPE
+            FROM YWXT.NKY_ALARM_GET NAG
+                LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = nag.dam_id
+
+            WHERE
+                 dam_id = #{alarmGet.damId}
+                and type = #{alarmGet.type}
+            GROUP BY
+                NAG.DAM_ID,
+                NAG.POINT_ID,
+                NAG.TYPE
+
+        )TMP ON (
+                    TMP.DAM_ID = NAG.DAM_ID
+                AND TMP.POINT_ID = NAG.POINT_ID
+                AND TMP.TYPE = NAG.TYPE
+                AND TMP.TIME = NAG.TIME
+            )
+                 LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = NAG.DAM_ID
+
+                 LEFT JOIN SJZT_MD."att_ad_base" town ON town."ad_code" = arb."interior_ad_guid"
+                 LEFT JOIN SJZT_MD."att_ad_base" county ON county."ad_code" = town."p_ad_code"
+                 LEFT JOIN SJZT_MD."att_ad_base" city ON city."ad_code" = county."p_ad_code"
+
+                 LEFT JOIN SJZT_MD."att_cd_base" acb on
+                     acb."res_cd" = #{alarmGet.damId}
+                    and acb."cd" = nag.point_id
+                    <if test="alarmGet.type == 1">
+                        and acb."cd_type" = 'sy'
+                    </if>
+                    <if test="alarmGet.type == 2">
+                        and acb."cd_type" = 'sl'
+                    </if>
+        ORDER BY POINT_ID
+    </select>
+    <select id="getLatestResRecordWy" resultType="cn.gistack.nky.vo.AlarmGetVO">
+        SELECT
+        NAG.DAM_ID,
+        NAG.POINT_ID,
+        NAG.TYPE,
+        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,
+
+        ARB."name" reservoirName,
+        acb."cd_nm" cdName,
+
+        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
+
+        FROM YWXT.NKY_ALARM_GET NAG
+        right JOIN (
+        SELECT
+        NAG.DAM_ID,
+        NAG.POINT_ID,
+        MAX(NAG.TIME)TIME,
+        MAX(NAG.CREATE_TIME) CREATE_TIME,
+        NAG.TYPE
+        FROM YWXT.NKY_ALARM_GET NAG
+        LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = nag.dam_id
+
+        WHERE
+         dam_id = #{alarmGet.damId}
+        and (type = '3' or type = '4' or type = '5')
+        GROUP BY
+        NAG.DAM_ID,
+        NAG.POINT_ID,
+        NAG.TYPE
+
+        )TMP ON (
+        TMP.DAM_ID = NAG.DAM_ID
+        AND TMP.POINT_ID = NAG.POINT_ID
+        AND TMP.TYPE = NAG.TYPE
+        AND TMP.TIME = NAG.TIME
+        AND TMP.CREATE_TIME = NAG.CREATE_TIME
+        )
+        LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = NAG.DAM_ID
+
+        LEFT JOIN SJZT_MD."att_ad_base" town ON town."ad_code" = arb."interior_ad_guid"
+        LEFT JOIN SJZT_MD."att_ad_base" county ON county."ad_code" = town."p_ad_code"
+        LEFT JOIN SJZT_MD."att_ad_base" city ON city."ad_code" = county."p_ad_code"
+
+        LEFT JOIN SJZT_MD."att_wy_cd_base" acb on
+        acb."res_cd" = #{alarmGet.damId}
+        and acb."cd" = nag.point_id
+            and acb."cd_type" = 'wy'
+        ORDER BY POINT_ID
+    </select>
 
 
 </mapper>

--
Gitblit v1.9.3