guoshilong
2023-08-10 acf4a8171ae814e0d7fb061d163f95640dc39abc
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/damSecurity/mapper/DamSecurityMapper.xml
@@ -636,4 +636,139 @@
    </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_spqnmp" 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 = 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>
</mapper>