ke
2024-04-22 41c8dd06fe3218e54314a58544d7cefe732fbdfb
Merge remote-tracking branch 'origin/jtdev' into jtdev
11 files modified
8 files added
1048 ■■■■ changed files
skjcmanager/skjcmanager-service-api/skjcmanager-alerts-api/src/main/java/cn/gistack/alerts/alarmRule/entity/AlarmRecord.java 2 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service-api/skjcmanager-alerts-api/src/main/java/cn/gistack/alerts/alarmRule/vo/AlarmRecordVO.java 6 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/mapper/AlarmRecordMapper.xml 106 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/constant/ZtApiDataColumnConstant.java 9 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/AsyncNoticeHandle.java 203 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/NoticeHandle.java 12 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/NoticeStrategyImpl.java 131 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/constructionReport/controller/ConstructionReportController.java 87 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/constructionReport/entity/ConstructionReport.java 35 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/constructionReport/mapper/ConstructionReportMapper.java 15 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/constructionReport/mapper/ConstructionReportMapper.xml 78 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/constructionReport/service/IConstructionReportService.java 10 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/constructionReport/service/impl/ConstructionReportServiceImpl.java 20 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/constructionReport/vo/ConstructionReportVO.java 24 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/dto/AttResBaseUserDTO.java 5 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/AttResBaseMapper.xml 2 ●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztods/service/impl/SkxsQkTjServiceImpl.java 2 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/AlarmDayXxlJob.java 299 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/AlarmXxlJob.java 2 ●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service-api/skjcmanager-alerts-api/src/main/java/cn/gistack/alerts/alarmRule/entity/AlarmRecord.java
@@ -52,4 +52,6 @@
     * 任务id
     */
    private String taskId;
    private String monitorData;
}
skjcmanager/skjcmanager-service-api/skjcmanager-alerts-api/src/main/java/cn/gistack/alerts/alarmRule/vo/AlarmRecordVO.java
@@ -11,6 +11,7 @@
@Data
public class AlarmRecordVO extends AlarmRecord {
    /**
     * 区域名称
     */
@@ -89,4 +90,9 @@
    private String adLevel;
    private String alarmLevel;
    private String labels;
    private String basGuids;
    private String resGuids;
}
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/mapper/AlarmRecordMapper.xml
@@ -6,7 +6,7 @@
    <select id="selectAlarmRecordPage" resultType="cn.gistack.alerts.alarmRule.vo.AlarmRecordVO">
        select
        sar.*,
        sar1.type,sar1.alarm_rule_type as alarmRuleType,sar1.create_alarm_type as createAlarmType,sar1.rule_name as ruleName,
        sar1.type,sar1.alarm_rule_type as alarmRuleType,sar1.create_alarm_type as createAlarmType,sar1.rule_name as ruleName,a."label" as labels,
        a."name" as reservoirName,a."res_reg_code" as resRegCode,a."eng_scal" as engScal,
        case when b."ad_grad" = 4 THEN b."ad_name"
            ELSE NULL END AS townName,
@@ -23,6 +23,11 @@
        left join SJZT_MD."att_ad_base" b on b."guid" = a."interior_ad_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."rel_res_bas_loc" rrbl ON rrbl."res_guid" = sar.reservoir_number
        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 sar.is_deleted = 0
        <if test="alarmRecord.reservoirName!=null and alarmRecord.reservoirName!=''">
            and a."name" like concat('%',#{alarmRecord.reservoirName},'%')
@@ -54,7 +59,35 @@
        <if test="alarmRecord.alarmLevel != null and alarmRecord.alarmLevel !=''">
            and sar1.alarm_level = #{alarmRecord.alarmLevel}
        </if>
        order by sar.id desc
        <if test="alarmRecord.engScal != null and alarmRecord.engScal != ''">
            and a."eng_scal" = #{alarmRecord.engScal}
        </if>
        <if test="alarmRecord.labels != null and alarmRecord.labels != '' ">
            AND( 1!=1
            <foreach collection="alarmRecord.labels.split(',')" item="item" open="" separator="" close="" index="index">
                OR  #{item}  in (a."label")
            </foreach>
            )
        </if>
        <if test="alarmRecord.basGuids != null and alarmRecord.basGuids !='' ">
            AND(
            abb."code" in
            <foreach collection="alarmRecord.basGuids.split(',')" item="item" index="index" open="(" separator="," close=")">
                #{item}
            </foreach>
            or pabb."code" in
            <foreach collection="alarmRecord.basGuids.split(',')" item="item" index="index" open="(" separator="," close=")">
                #{item}
            </foreach>
            )
        </if>
        <if test="alarmRecord.resGuids != null and alarmRecord.resGuids !=''">
            AND sar.reservoir_number in
            <foreach collection="alarmRecord.resGuids.split(',')" item="item" index="index" open="(" separator="," close=")">
                #{item}
            </foreach>
        </if>
    </select>
    <select id="getVODetail" resultType="cn.gistack.alerts.alarmRule.vo.AlarmRecordVO">
@@ -127,6 +160,10 @@
            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 YWXT.sm_alarm_rule e on e.id = sar.alarm_rule_id
            LEFT JOIN SJZT_MD."rel_res_bas_loc" rrbl ON rrbl."res_guid" = sar.reservoir_number
            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 sar.is_deleted = 0
            <if test="alarmRecord.reservoirName!=null and alarmRecord.reservoirName!=''">
                and arb."name" like concat('%',#{alarmRecord.reservoirName},'%')
@@ -152,6 +189,36 @@
            <if test="alarmRecord.adCode!=null and alarmRecord.adCode!=''">
                and arb."interior_ad_guid" like concat('%',#{alarmRecord.adCode},'%')
            </if>
            <if test="alarmRecord.engScal != null and alarmRecord.engScal != ''">
                and arb."eng_scal" = #{alarmRecord.engScal}
            </if>
            <if test="alarmRecord.labels != null and alarmRecord.labels != '' ">
                AND( 1!=1
                <foreach collection="alarmRecord.labels.split(',')" item="item" open="" separator="" close="" index="index">
                    OR  #{item}  in (arb."label")
                </foreach>
                )
            </if>
            <if test="alarmRecord.basGuids != null and alarmRecord.basGuids !='' ">
                AND(
                abb."code" in
                <foreach collection="alarmRecord.basGuids.split(',')" item="item" index="index" open="(" separator="," close=")">
                    #{item}
                </foreach>
                or pabb."code" in
                <foreach collection="alarmRecord.basGuids.split(',')" item="item" index="index" open="(" separator="," close=")">
                    #{item}
                </foreach>
                )
            </if>
            <if test="alarmRecord.resGuids != null and alarmRecord.resGuids !=''">
                AND sar.reservoir_number in
                <foreach collection="alarmRecord.resGuids.split(',')" item="item" index="index" open="(" separator="," close=")">
                    #{item}
                </foreach>
            </if>
        ) f
        group by
        <if test="alarmRecord.adLevel !=null and alarmRecord.adLevel != '' and alarmRecord.adLevel == 1 ">
@@ -262,6 +329,10 @@
        FROM YWXT.sm_alarm_record record
                 LEFT JOIN ywxt.SM_ALARM_RULE rule on rule.id = record.alarm_rule_id
                 LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = record.reservoir_number
                LEFT JOIN SJZT_MD."rel_res_bas_loc" rrbl ON rrbl."res_guid" = record.reservoir_number
                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
            record.is_deleted = 0
          <if test="alarmRecord.type != null and alarmRecord.type !=''">
@@ -276,9 +347,34 @@
            <if test="alarmRecord.endTime!=null and alarmRecord.endTime!=''">
                and record.create_time &lt;= #{alarmRecord.endTime}
            </if>
<!--            <if test="alarmRecord.reservoirName != null and alarmRecord.reservoirName !=''">-->
<!--                and arb."name" LIKE CONCAT('%',#{alarmRecord.reservoirName},'%')-->
<!--            </if>-->
            <if test="alarmRecord.engScal != null and alarmRecord.engScal != ''">
                and arb."eng_scal" = #{alarmRecord.engScal}
            </if>
            <if test="alarmRecord.labels != null and alarmRecord.labels != '' ">
                AND( 1!=1
                <foreach collection="alarmRecord.labels.split(',')" item="item" open="" separator="" close="" index="index">
                    OR  #{item}  in (arb."label")
                </foreach>
                )
            </if>
            <if test="alarmRecord.basGuids != null and alarmRecord.basGuids !='' ">
                AND(
                abb."code" in
                <foreach collection="alarmRecord.basGuids.split(',')" item="item" index="index" open="(" separator="," close=")">
                    #{item}
                </foreach>
                or pabb."code" in
                <foreach collection="alarmRecord.basGuids.split(',')" item="item" index="index" open="(" separator="," close=")">
                    #{item}
                </foreach>
                )
            </if>
            <if test="alarmRecord.resGuids != null and alarmRecord.resGuids !=''">
                AND record.reservoir_number in
                <foreach collection="alarmRecord.resGuids.split(',')" item="item" index="index" open="(" separator="," close=")">
                    #{item}
                </foreach>
            </if>
        group by rule.alarm_level
        order by field(rule.alarm_level,'蓝色预警','黄色预警','橙色预警','红色预警')
    </select>
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/constant/ZtApiDataColumnConstant.java
@@ -408,7 +408,7 @@
    }};
    /**
     * 策略36: 变形值大于100mm
     * 策略36: 1h变化
     */
    public static List<String>  wy1hChangeOver10 = new ArrayList<String>()
    {{
@@ -421,7 +421,7 @@
    }};
    /**
     * 策略36: 变形值大于100mm
     * 策略36:
     */
    public static List<String>  slOverLess = new ArrayList<String>()
    {{
@@ -432,8 +432,11 @@
        add("value");
    }};
    /**
     * 策略36: 变形值大于100mm
     * 策略36: 视频离线
     */
    public static List<String>  videoOffline = new ArrayList<String>()
    {{
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/AsyncNoticeHandle.java
@@ -33,6 +33,7 @@
    /**
     * 1.水位信息接收不到  2. 水位数据异常 需要合并水库的
     *
     * @param alarmRule 告警规则信息
     * @param alarmRuleDetail 告警规则详情信息
     * @param ztData 告警数据
@@ -67,6 +68,7 @@
    /**
     * 3.水位超低于死水位
     *
     * @param alarmRule 告警规则信息
     * @param alarmRuleDetail 告警规则详情信息
     * @param ztData 告警数据
@@ -113,6 +115,7 @@
    /**
     * 5.水位接近汛限告警--发送站内信
     *
     * @param alarmRule 告警规则信息
     * @param alarmRuleDetail 告警规则详情信息
     * @param ztData 告警数据
@@ -155,6 +158,7 @@
    /**
     * 6.水位初次超汛限告警 处理
     *
     * @param alarmRule 告警规则信息
     * @param alarmRuleDetail 告警规则详情信息
     * @param ztData 告警数据
@@ -199,6 +203,7 @@
    /**
     * 7.1 水位小幅超汛限告警(发松给 水库技术责任人、巡查责任人)
     *
     * @param alarmRule 告警规则信息
     * @param alarmRuleDetail 告警规则详情信息
     * @param ztData 告警数据
@@ -246,6 +251,7 @@
    /**
     * 7.2 水位小幅超汛限告警(发送给 县级水利部门有关人员、主管部门责任人)
     *
     * @param alarmRule 告警规则信息
     * @param alarmRuleDetail 告警规则详情信息
     * @param ztData 告警数据
@@ -292,6 +298,7 @@
    /**
     * 8.1 水位大幅超汛限告警(发松给 水库技术责任人、巡查责任人)
     *
     * @param alarmRule 告警规则信息
     * @param alarmRuleDetail 告警规则详情信息
     * @param ztData 告警数据
@@ -338,6 +345,7 @@
    /**
     * 8.2 水位大幅超汛限告警(发送给 县级水利部门有关人员、主管部门责任人)
     *
     * @param alarmRule 告警规则信息
     * @param alarmRuleDetail 告警规则详情信息
     * @param ztData 告警数据
@@ -428,6 +436,7 @@
    /**
     * 外呼告警信息
     *
     * @param alarmRule 告警规则信息
     * @param alarmRuleDetail 告警规则详情信息
     * @param ztData 告警数据
@@ -514,6 +523,7 @@
    /**
     * 10.1 水位超设计洪水位告警处理--短信
     *
     * @param alarmRule 告警规则信息
     * @param alarmRuleDetail 告警规则详情信息
     * @param ztData 告警数据
@@ -559,6 +569,7 @@
    /**
     * 10.水位超设计洪水位告警处理 - 电话
     *
     * @param alarmRule 告警规则信息
     * @param alarmRuleDetail 告警规则详情信息
     * @param ztData 告警数据
@@ -602,6 +613,7 @@
    /**
     * 11.1 水位超校核洪水位告警--短信
     *
     * @param alarmRule 告警规则信息
     * @param alarmRuleDetail 告警规则详情信息
     * @param ztData 告警数据
@@ -647,6 +659,7 @@
    /**
     * 11.2 水位超校核洪水位告警 - 电话
     *
     * @param alarmRule 告警规则信息
     * @param alarmRuleDetail 告警规则详情信息
     * @param ztData 告警数据
@@ -689,6 +702,7 @@
    /**
     * 12 近1h水位陡升--短信
     *
     * @param alarmRule 告警规则信息
     * @param alarmRuleDetail 告警规则详情信息
     * @param ztData 告警数据
@@ -733,6 +747,7 @@
    /**
     * 13 近1h水位陡降--短信
     *
     * @param alarmRule 告警规则信息
     * @param alarmRuleDetail 告警规则详情信息
     * @param ztData 告警数据
@@ -963,6 +978,7 @@
     * @param flag 是否包含日期
     * @param adCode 行政区code用户过滤数据
     * @param isSendStation 是否发送站内信
     * @param isDay           是否每日发送,day
     * @return
     */
    public Map<String, Object> damSafetyHandle(AlarmRule alarmRule,
@@ -972,7 +988,8 @@
                                Boolean flag,
                                String adCode,
                                Boolean isSendStation,
                                String uuid) {
                                               String uuid,
                                               String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
@@ -986,14 +1003,17 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            //如果参数是day,表示是每天生成告警,不需要发信息
            if (isDay.equals("day")) return map;
            map = smsService.sendSignMsgMergeCd(smsRequestTemplate);
            // 调用短信服务
            return map;
        }
        return map;
    }
    public void damSafetySyHandle(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray ztData, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetySyHandle(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray ztData, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid, String isDay) {
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(ztData,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
@@ -1011,14 +1031,18 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            //如果参数是day,表示是每天生成告警,不需要发信息
            if (isDay.equals("day")) return;
            // 保存站内信记录信息
            noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
        }
    }
    //保存记录
    public void damSafetySyNoneHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray ztData, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetySyNoneHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray ztData, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid, String isDay) {
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(ztData,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
@@ -1032,6 +1056,8 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            //如果参数是day,表示是每天生成告警,不需要发信息
            if (isDay.equals("day")) return;
            // 需要合并水库保存站内信记录信息
            noticeHandle.saveInStationInfoMerge(smsRequestTemplate,alarmRule);
        }
@@ -1039,7 +1065,7 @@
    }
    public Map<String, Object> damSafetyHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public Map<String, Object> damSafetyHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid, String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
@@ -1054,6 +1080,8 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            //如果参数是day,表示是每天生成告警,不需要发信息
            if (isDay.equals("day")) return map;
            map = smsService.sendSignMsgMergeCd(smsRequestTemplate);
            // 调用短信服务
            return map;
@@ -1063,11 +1091,8 @@
    }
    //渗压资料缺失
    public Map<String, Object> damSafetySyDataMissingHandle(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public Map<String, Object> damSafetySyDataMissingHandle(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
@@ -1082,6 +1107,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return map;
            map = smsService.sendSignMsg(smsRequestTemplate);
            // 调用短信服务
            return map;
@@ -1091,6 +1117,7 @@
    /**
     * 策略26 短信-----渗压水位低于管底高程
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1101,7 +1128,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public  Map<String, Object> damSafetySyLessThenPipeHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public Map<String, Object> damSafetySyLessThenPipeHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
@@ -1115,6 +1142,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return map;
            map = smsService.sendSignMsg(smsRequestTemplate);
            // 调用短信服务
            return map;
@@ -1124,6 +1152,7 @@
    /**
     * 策略26 站内信-----渗压水位低于管底高程
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1134,7 +1163,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public void damSafetySyLessThenPipeHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetySyLessThenPipeHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
        // 拼接后面内容
@@ -1146,6 +1175,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return;
            // 保存站内信记录信息
            noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
        }
@@ -1154,6 +1184,7 @@
    /**
     * 策略27 短信-----渗压水位高于管口高程
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1164,7 +1195,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public  Map<String, Object> damSafetySyHigherThenNozzleHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public Map<String, Object> damSafetySyHigherThenNozzleHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
@@ -1178,6 +1209,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return map;
            map = smsService.sendSignMsg(smsRequestTemplate);
            // 调用短信服务
            return map;
@@ -1187,6 +1219,7 @@
    /**
     * 策略26 站内信-----渗压水位高于管口高程
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1197,7 +1230,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public void damSafetySyHigherThenNozzleHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetySyHigherThenNozzleHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
        // 拼接后面内容
@@ -1209,6 +1242,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return;
            // 保存站内信记录信息
            noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
        }
@@ -1216,6 +1250,7 @@
    /**
     * 策略28 短信-----渗压水位高于坝顶高程
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1226,7 +1261,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public Map<String, Object> damSafetySyHigherThenBdElevationHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public Map<String, Object> damSafetySyHigherThenBdElevationHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
@@ -1240,6 +1275,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return map;
            map = smsService.sendSignMsg(smsRequestTemplate);
            // 调用短信服务
            return map;
@@ -1250,6 +1286,7 @@
    /**
     * 策略28 站内信-----渗压水位高于坝顶高程
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1260,7 +1297,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public void damSafetySyHigherThenBdElevationHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetySyHigherThenBdElevationHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
        // 拼接后面内容
@@ -1272,6 +1309,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return;
            // 保存站内信记录信息
            noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
        }
@@ -1280,6 +1318,7 @@
    /**
     * 策略29 短信-----渗压水位高于库水位
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1290,7 +1329,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public Map<String, Object> damSafetySyHigherThenWaterLevelHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public Map<String, Object> damSafetySyHigherThenWaterLevelHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
@@ -1304,6 +1343,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return map;
            map = smsService.sendSignMsg(smsRequestTemplate);
            // 调用短信服务
            return map;
@@ -1314,6 +1354,7 @@
    /**
     * 策略29 站内信-----渗压水位高于库水位
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1324,7 +1365,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public void damSafetySyHigherThenWaterLevelHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetySyHigherThenWaterLevelHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
        // 拼接后面内容
@@ -1336,20 +1377,16 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return;
            // 保存站内信记录信息
            noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
        }
    }
    /**
     * 策略30 短信-----水位长期不变,五日变幅小于5cm,十日变幅大于5cm小于8cm,三十日变幅大于8cm小于10cm
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1360,7 +1397,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public Map<String, Object> damSafetySyYellowChangeHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public Map<String, Object> damSafetySyYellowChangeHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
@@ -1374,6 +1411,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return map;
            map = smsService.sendSignMsg(smsRequestTemplate);
            // 调用短信服务
            return map;
@@ -1384,6 +1422,7 @@
    /**
     * 策略30 站内信-----水位长期不变,五日变幅小于5cm,十日变幅大于5cm小于8cm,三十日变幅大于8cm小于10cm
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1394,7 +1433,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public void damSafetySyYellowChangeHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetySyYellowChangeHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
        // 拼接后面内容
@@ -1406,15 +1445,16 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return;
            // 保存站内信记录信息
            noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
        }
    }
    /**
     * 策略31 短信-----渗压水位一日变幅大于0.5米小于1米,五日变幅大于1米小于2米,十日变幅大于2米小于5米,三十日变幅大于5米小于10米
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1425,7 +1465,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public Map<String, Object> damSafetySyOrangeChangeHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public Map<String, Object> damSafetySyOrangeChangeHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
@@ -1450,6 +1490,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return map;
            map = smsService.sendSignMsg(smsRequestTemplate);
            // 调用短信服务
            return map;
@@ -1460,6 +1501,7 @@
    /**
     * 策略31 站内信-----渗压水位一日变幅大于0.5米小于1米,五日变幅大于1米小于2米,十日变幅大于2米小于5米,三十日变幅大于5米小于10米
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1470,7 +1512,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public void damSafetySyOrangeChangeHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetySyOrangeChangeHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
        // 拼接后面内容
@@ -1493,15 +1535,16 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return;
            // 保存站内信记录信息
            noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
        }
    }
    /**
     * 策略32 短信-----渗压水位一日变幅大于1米小于2米,五日变幅大于2米小于5米,十日变幅大于5米小于10米,三十日变幅大于10米
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1512,7 +1555,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public Map<String, Object> damSafetySyRedChangeHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public Map<String, Object> damSafetySyRedChangeHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
@@ -1530,6 +1573,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return map;
            map = smsService.sendSignMsg(smsRequestTemplate);
            // 调用短信服务
            return map;
@@ -1540,6 +1584,7 @@
    /**
     * 策略32 站内信-----渗压水位一日变幅大于1米小于2米,五日变幅大于2米小于5米,十日变幅大于5米小于10米,三十日变幅大于10米
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1550,7 +1595,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public void damSafetySyRedChangeHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetySyRedChangeHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
        // 拼接后面内容
@@ -1566,6 +1611,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return;
            // 保存站内信记录信息
            noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
        }
@@ -1573,6 +1619,7 @@
    /**
     * 策略33 短信-----近1h水位陡降
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1583,7 +1630,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public Map<String, Object> damSafetySyRz1hChangeHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public Map<String, Object> damSafetySyRz1hChangeHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
@@ -1601,6 +1648,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return map;
            map = smsService.sendSignMsg(smsRequestTemplate);
            // 调用短信服务
            return map;
@@ -1611,6 +1659,7 @@
    /**
     * 策略33 站内信----- 近1h水位陡降
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1621,7 +1670,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public void damSafetySyRz1hChangeHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetySyRz1hChangeHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
        // 拼接后面内容
@@ -1637,17 +1686,16 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return;
            // 保存站内信记录信息
            noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
        }
    }
    /**
     * 策略34 短信-----变形值大于20mm小于50mm
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1658,7 +1706,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public Map<String, Object> damSafetyWyOver2Less5HandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public Map<String, Object> damSafetyWyOver2Less5HandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
@@ -1676,6 +1724,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return map;
            map = smsService.sendSignMsg(smsRequestTemplate);
            // 调用短信服务
            return map;
@@ -1686,6 +1735,7 @@
    /**
     * 策略34 站内信----- 变形值大于20mm小于50mm
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1696,7 +1746,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public void damSafetyWyOver2Less5HandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetyWyOver2Less5HandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
        // 拼接后面内容
@@ -1712,16 +1762,16 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return;
            // 保存站内信记录信息
            noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
        }
    }
    /**
     * 策略35 短信-----变形值大于50mm小于100mm
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1732,7 +1782,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public Map<String, Object> damSafetyWyOver5Less10HandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public Map<String, Object> damSafetyWyOver5Less10HandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
@@ -1750,6 +1800,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return map;
            map = smsService.sendSignMsg(smsRequestTemplate);
            // 调用短信服务
            return map;
@@ -1760,6 +1811,7 @@
    /**
     * 策略34 站内信----- 变形值大于50mm小于100mm
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1770,7 +1822,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public void damSafetyWyOver5Less10HandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetyWyOver5Less10HandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
        // 拼接后面内容
@@ -1786,6 +1838,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return;
            // 保存站内信记录信息
            noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
        }
@@ -1794,6 +1847,7 @@
    /**
     * 策略34 短信-----变形值大于100mm
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1804,7 +1858,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public Map<String, Object> damSafetyWyOver10HandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public Map<String, Object> damSafetyWyOver10HandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
@@ -1822,6 +1876,7 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return map;
            map = smsService.sendSignMsg(smsRequestTemplate);
            // 调用短信服务
            return map;
@@ -1832,6 +1887,7 @@
    /**
     * 策略34 站内信----- 变形值大于100mm
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1842,7 +1898,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public void damSafetyWyOver10HandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetyWyOver10HandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid,String isDay) {
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
        // 拼接后面内容
@@ -1858,17 +1914,16 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            if (isDay.equals("day"))return;
            // 保存站内信记录信息
            noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
        }
    }
    /**
     * 策略34 短信-----近1h变形值大于10cm以上
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1879,7 +1934,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public Map<String, Object> damSafetyWy1hChangeOver10HandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public Map<String, Object> damSafetyWy1hChangeOver10HandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid, String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
@@ -1897,6 +1952,10 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            //如果参数是day,表示是每天生成告警,不需要发信息
            if (isDay.equals("day")) return map;
            map = smsService.sendSignMsg(smsRequestTemplate);
            // 调用短信服务
            return map;
@@ -1907,6 +1966,7 @@
    /**
     * 策略34 站内信----- 近1h变形值大于10cm以上
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1917,7 +1977,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public void damSafetyWy1hChangeOver10HandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetyWy1hChangeOver10HandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid, String isDay) {
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
        // 拼接后面内容
@@ -1933,23 +1993,16 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            //如果参数是day,表示是每天生成告警,不需要发信息
            if (isDay.equals("day")) return;
            // 保存站内信记录信息
            noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
        }
    }
    /**
     * 策略34 短信-----渗流值
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1960,7 +2013,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public Map<String, Object> damSafetySlOverLessHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public Map<String, Object> damSafetySlOverLessHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid, String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
@@ -1978,9 +2031,14 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            //如果参数是day,表示是每天生成告警,不需要发信息
            if (isDay.equals("day")) return map;
            map = smsService.sendSignMsg(smsRequestTemplate);
            // 调用短信服务
            return map;
        }
        return map;
    }
@@ -1988,6 +2046,7 @@
    /**
     * 策略34 站内信----- 渗流值
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -1998,7 +2057,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public void damSafetySlOverLessHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetySlOverLessHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid, String isDay) {
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
        // 拼接后面内容
@@ -2014,6 +2073,8 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            //如果参数是day,表示是每天生成告警,不需要发信息
            if (isDay.equals("day")) return;
            // 保存站内信记录信息
            noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
        }
@@ -2021,6 +2082,7 @@
    /**
     * 策略34 站内信----- 资料缺失
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -2031,7 +2093,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public void damSafetySyDataMissingHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetySyDataMissingHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid, String isDay) {
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
        // 拼接后面内容
@@ -2043,6 +2105,8 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            //如果参数是day,表示是每天生成告警,不需要发信息
            if (isDay.equals("day")) return;
            // 保存站内信记录信息
            noticeHandle.saveInStationInfoMergeNoCd(smsRequestTemplate,alarmRule);
        }
@@ -2051,6 +2115,7 @@
    /**
     * 策略34 站内信----- 视频离线
     *
     * @param alarmRule 告警规则
     * @param alarmRuleDetail 告警规则详情
     * @param data 中台数据
@@ -2061,7 +2126,7 @@
     * @param uuid 随机生成id
     * @return
     */
    public void videoOfflineHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void videoOfflineHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid, String isDay) {
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
        // 拼接后面内容
@@ -2073,13 +2138,15 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            //如果参数是day,表示是每天生成告警,不需要发信息
            if (isDay.equals("day")) return;
            // 保存站内信记录信息
            noticeHandle.saveInStationInfoMergeVideo(smsRequestTemplate,alarmRule);
        }
    }
    public void damSafetySyDataMissingHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray ztData, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
    public void damSafetySyDataMissingHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray ztData, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid, String isDay) {
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
            = noticeHandle.getSendSmsTemplate(ztData,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
@@ -2091,6 +2158,9 @@
                list.add(alarmRecord.getId().toString());
            }
        }
        //如果参数是day,表示是每天生成告警,不需要发信息
        if (isDay.equals("day")) return;
        // 调用短信服务
        smsService.sendMergeSignMsg(smsRequestTemplate);
    }
@@ -2102,7 +2172,8 @@
                                               Boolean flag,
                                               String adCode,
                                               Boolean isSendStation,
                                               String uuid) {
                                                     String uuid,
                                                     String isDay) {
        Map<String, Object> map = new HashMap<>();
        // 只发短信,将发短信信息组装好
        SmsRequestTemplate smsRequestTemplate
@@ -2116,6 +2187,8 @@
                    list.add(alarmRecord.getId().toString());
                }
            }
            //如果参数是day,表示是每天生成告警,不需要发信息
            if (isDay.equals("day")) return map;
            map = smsService.sendSignMsgMergeCdVideo(smsRequestTemplate);
            // 调用短信服务
            return map;
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/NoticeHandle.java
@@ -237,6 +237,12 @@
                list.add(stcd);
                list.add(res_cd);
                list.add(personVO.getPhone());
                //拿测点值
                String val = "";
                JSONObject jsonObject = jsonArray.getJSONObject(i);
                val = jsonObject.getString("monitorData");
                list.add(val);
                if (flag) {
                    // 如果是电话告警,需要把日期拼到一起
                    if (alarmRuleDetail.getAlarmMode().equals("电话")) {
@@ -492,8 +498,11 @@
            .eq("temp_code", uuid)
            .eq("alarm_rule_id", alarmRule.getId())
            .eq("reservoir_number", list.get(1))
            .eq("alarm_survey_station_code",list.get(0))
        );
        if (null != alarmRecord) {
            //删除测值
            list.remove(3);
            // 删除测站编号
            list.remove(0);
            return alarmRecord;
@@ -506,6 +515,9 @@
            alarm.setReservoirNumber(list.get(1));
            alarm.setAlarmCondition(alarmRule.getRuleRemark());
            alarm.setTempCode(uuid);
            alarm.setMonitorData(list.get(3));
            //删除测值
            list.remove(3);
            // 新增
            boolean save = alarmRecordService.save(alarm);
            // 删除测站编号
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/NoticeStrategyImpl.java
@@ -605,7 +605,7 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetyHandle(alarmRule, alarmRuleDetail, ztData, ZtApiDataColumnConstant.damSafetyList, true, adCode, false, uuid);
                        asyncNoticeHandle.damSafetyHandle(alarmRule, alarmRuleDetail, ztData, ZtApiDataColumnConstant.damSafetyList, true, adCode, false, uuid,arg2);
                    }
                }
            }
@@ -641,7 +641,7 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySyHandle(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.damSafetySyList, true, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySyHandle(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.damSafetySyList, true, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -676,10 +676,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetyHandle(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.damSafetyList, false, adCode, false, uuid);
                        asyncNoticeHandle.damSafetyHandle(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.damSafetyList, false, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySyNoneHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.damSafetyList, false, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySyNoneHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.damSafetyList, false, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -712,10 +712,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetyHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.damSafetyList, false, adCode, false, uuid);
                        asyncNoticeHandle.damSafetyHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.damSafetyList, false, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySyNoneHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.damSafetyList, false, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySyNoneHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.damSafetyList, false, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -748,10 +748,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetyHandle(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.damSafetyList, true, adCode, false, uuid);
                        asyncNoticeHandle.damSafetyHandle(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.damSafetyList, true, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySyNoneHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.damSafetyList, false, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySyNoneHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.damSafetyList, false, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -786,10 +786,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySyDataMissingHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syDataMissingList, false, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySyDataMissingHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syDataMissingList, false, adCode, true, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("短信")){
                        asyncNoticeHandle.damSafetySyDataMissingHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syDataMissingList, false, adCode, false, uuid);
                        asyncNoticeHandle.damSafetySyDataMissingHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syDataMissingList, false, adCode, false, uuid,arg2);
                    }
                }
            }
@@ -822,10 +822,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySyDataMissingHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.bxDataMissingList, false, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySyDataMissingHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.bxDataMissingList, false, adCode, true, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("短信")){
                        asyncNoticeHandle.damSafetySyDataMissingHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.bxDataMissingList, false, adCode, false, uuid);
                        asyncNoticeHandle.damSafetySyDataMissingHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.bxDataMissingList, false, adCode, false, uuid,arg2);
                    }
                }
            }
@@ -860,10 +860,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetySyLessThenPipeHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syLessThenPipe, true, adCode, false, uuid);
                        asyncNoticeHandle.damSafetySyLessThenPipeHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syLessThenPipe, true, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySyLessThenPipeHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syLessThenPipe, true, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySyLessThenPipeHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syLessThenPipe, true, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -902,10 +902,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetySyHigherThenNozzleHandleSms(alarmRule, alarmRuleDetail, resultData,ZtApiDataColumnConstant.syHigherThenNozzle,true, adCode, false,uuid);
                        asyncNoticeHandle.damSafetySyHigherThenNozzleHandleSms(alarmRule, alarmRuleDetail, resultData,ZtApiDataColumnConstant.syHigherThenNozzle,true, adCode, false,uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySyHigherThenNozzleHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syHigherThenNozzle, true, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySyHigherThenNozzleHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syHigherThenNozzle, true, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -930,7 +930,10 @@
        // 调用中台服务接口查询数据
        JSONArray ztData = noticeHandle.getZtData("", ZtApiUrlConstant.alarm_db_sy_higher_then_bdElevation_api);
        //这里需要对数据进行过滤
        JSONArray resultData = filterNoAlertRes(ztData,arg1);
        JSONArray resultData1 = filterNoAlertRes(ztData,arg1);
        JSONArray resultData = setMonitorData(resultData1, "max_value");
        // 获取告警规则详情,判断告警类型(短信,电话,站内信)
        if (null != alarmRule) {
            // 查询告警详情信息
@@ -939,10 +942,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetySyHigherThenBdElevationHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syHigherThenBdElevation, true, adCode, false, uuid);
                        asyncNoticeHandle.damSafetySyHigherThenBdElevationHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syHigherThenBdElevation, true, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySyHigherThenBdElevationHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syHigherThenBdElevation, true, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySyHigherThenBdElevationHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syHigherThenBdElevation, true, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -965,7 +968,10 @@
        // 调用中台服务接口查询数据
        JSONArray ztData = noticeHandle.getZtData("", ZtApiUrlConstant.alarm_db_sy_higher_then_water_level_api);
        //这里需要对数据进行过滤
        JSONArray resultData = filterNoAlertRes(ztData,arg1);
        JSONArray resultData1 = filterNoAlertRes(ztData,arg1);
        JSONArray resultData = setMonitorData(resultData1, "max_value");
        // 获取告警规则详情,判断告警类型(短信,电话,站内信)
        if (null != alarmRule) {
            // 查询告警详情信息
@@ -974,10 +980,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetySyHigherThenWaterLevelHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syHigherThenWaterLevel, true, adCode, false, uuid);
                        asyncNoticeHandle.damSafetySyHigherThenWaterLevelHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syHigherThenWaterLevel, true, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySyHigherThenWaterLevelHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syHigherThenWaterLevel, true, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySyHigherThenWaterLevelHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syHigherThenWaterLevel, true, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -1016,10 +1022,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetySyYellowChangeHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syYellowRzChange, true, adCode, false, uuid);
                        asyncNoticeHandle.damSafetySyYellowChangeHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syYellowRzChange, true, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySyYellowChangeHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syYellowRzChange, true, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySyYellowChangeHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syYellowRzChange, true, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -1055,10 +1061,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetySyOrangeChangeHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syOrangeRzChange, true, adCode, false, uuid);
                        asyncNoticeHandle.damSafetySyOrangeChangeHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syOrangeRzChange, true, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySyOrangeChangeHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syOrangeRzChange, true, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySyOrangeChangeHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syOrangeRzChange, true, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -1094,10 +1100,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetySyRedChangeHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syRedRzChange, true, adCode, false, uuid);
                        asyncNoticeHandle.damSafetySyRedChangeHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syRedRzChange, true, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySyRedChangeHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syRedRzChange, true, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySyRedChangeHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syRedRzChange, true, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -1131,10 +1137,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetySyRz1hChangeHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syRz1hChange, true, adCode, false, uuid);
                        asyncNoticeHandle.damSafetySyRz1hChangeHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syRz1hChange, true, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySyRz1hChangeHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syRz1hChange, true, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySyRz1hChangeHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.syRz1hChange, true, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -1170,10 +1176,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetyWyOver2Less5HandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wyOver2Less5, true, adCode, false, uuid);
                        asyncNoticeHandle.damSafetyWyOver2Less5HandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wyOver2Less5, true, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetyWyOver2Less5HandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wyOver2Less5, true, adCode, true, uuid);
                        asyncNoticeHandle.damSafetyWyOver2Less5HandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wyOver2Less5, true, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -1211,10 +1217,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetyWyOver5Less10HandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wyOver5Less10, true, adCode, false, uuid);
                        asyncNoticeHandle.damSafetyWyOver5Less10HandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wyOver5Less10, true, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetyWyOver5Less10HandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wyOver5Less10, true, adCode, true, uuid);
                        asyncNoticeHandle.damSafetyWyOver5Less10HandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wyOver5Less10, true, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -1253,10 +1259,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetyWyOver10HandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wyOver10, true, adCode, false, uuid);
                        asyncNoticeHandle.damSafetyWyOver10HandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wyOver10, true, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetyWyOver10HandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wyOver10, true, adCode, true, uuid);
                        asyncNoticeHandle.damSafetyWyOver10HandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wyOver10, true, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -1284,7 +1290,6 @@
        //这里需要对数据进行过滤
        JSONArray resultData = filterNoAlertRes(data,arg1);
        // 获取告警规则详情,判断告警类型(短信,电话,站内信)
        if (null != alarmRule) {
            // 查询告警详情信息
@@ -1293,10 +1298,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetyWy1hChangeOver10HandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wy1hChangeOver10, true, adCode, false, uuid);
                        asyncNoticeHandle.damSafetyWy1hChangeOver10HandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wy1hChangeOver10, true, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetyWy1hChangeOver10HandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wy1hChangeOver10, true, adCode, true, uuid);
                        asyncNoticeHandle.damSafetyWy1hChangeOver10HandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wy1hChangeOver10, true, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -1324,8 +1329,8 @@
        JSONArray data = filterData(ztData,"1");
        //这里需要对数据进行过滤
        JSONArray resultData = filterNoAlertRes(data,arg1);
        JSONArray resultData1 = filterNoAlertRes(data,arg1);
        JSONArray resultData = setMonitorData(resultData1, "value");
        // 获取告警规则详情,判断告警类型(短信,电话,站内信)
        if (null != alarmRule) {
@@ -1335,10 +1340,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetySlOverLessHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wy1hChangeOver10, true, adCode, false, uuid);
                        asyncNoticeHandle.damSafetySlOverLessHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.slOverLess, true, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySlOverLessHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wy1hChangeOver10, true, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySlOverLessHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.slOverLess, true, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -1366,8 +1371,8 @@
        JSONArray data = filterData(ztData,"2");
        //这里需要对数据进行过滤
        JSONArray resultData = filterNoAlertRes(data,arg1);
        JSONArray resultData1 = filterNoAlertRes(data,arg1);
        JSONArray resultData = setMonitorData(resultData1, "value");
        // 获取告警规则详情,判断告警类型(短信,电话,站内信)
        if (null != alarmRule) {
            // 查询告警详情信息
@@ -1376,10 +1381,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetySlOverLessHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wy1hChangeOver10, true, adCode, false, uuid);
                        asyncNoticeHandle.damSafetySlOverLessHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.slOverLess, true, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySlOverLessHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wy1hChangeOver10, true, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySlOverLessHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.slOverLess, true, adCode, true, uuid,arg2);
                    }
                }
            }
@@ -1407,7 +1412,9 @@
        JSONArray data = filterData(ztData,"3");
        //这里需要对数据进行过滤
        JSONArray resultData = filterNoAlertRes(data,arg1);
        JSONArray resultData1 = filterNoAlertRes(data,arg1);
        JSONArray resultData = setMonitorData(resultData1, "value");
        // 获取告警规则详情,判断告警类型(短信,电话,站内信)
        if (null != alarmRule) {
@@ -1417,16 +1424,16 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.damSafetySlOverLessHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wy1hChangeOver10, true, adCode, false, uuid);
                        asyncNoticeHandle.damSafetySlOverLessHandleSms(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.slOverLess, true, adCode, false, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.damSafetySlOverLessHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.wy1hChangeOver10, true, adCode, true, uuid);
                        asyncNoticeHandle.damSafetySlOverLessHandleStation(alarmRule, alarmRuleDetail, resultData, ZtApiDataColumnConstant.slOverLess, true, adCode, true, uuid,arg2);
                    }
                }
            }
        }
        return "渗流量一日大于5L小于8L,连续3日增加告警";
        return "渗流量一日大于10L告警";
    }
    /**
@@ -1452,10 +1459,10 @@
                // 遍历
                for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
                    if (alarmRuleDetail.getAlarmMode().equals("站内信")) {
                        asyncNoticeHandle.videoOfflineHandleStation(alarmRule, alarmRuleDetail, ztData, ZtApiDataColumnConstant.videoOffline, false, adCode, true, uuid);
                        asyncNoticeHandle.videoOfflineHandleStation(alarmRule, alarmRuleDetail, ztData, ZtApiDataColumnConstant.videoOffline, false, adCode, true, uuid,arg2);
                    }
                    if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                        asyncNoticeHandle.videoOfflineHandleSms(alarmRule, alarmRuleDetail, ztData, ZtApiDataColumnConstant.videoOffline, false, adCode, false, uuid);
                        asyncNoticeHandle.videoOfflineHandleSms(alarmRule, alarmRuleDetail, ztData, ZtApiDataColumnConstant.videoOffline, false, adCode, false, uuid,arg2);
                    }
                }
@@ -1512,6 +1519,7 @@
            jsonObject.put("direction", direction);
            jsonObject.put("val", val);
            jsonObject.put("monitorData",val);
            array.add(jsonObject);
        }
@@ -1582,6 +1590,7 @@
                jsonObject.put("direction", direction);
                jsonObject.put("val", val);
                jsonObject.put("monitorData",val);
                array.add(jsonObject);
            }
@@ -1605,6 +1614,7 @@
            }
            jsonObject.put("type", type);
            jsonObject.put("monitor",jsonObject.getString("diff_val"));
            array.add(jsonObject);
        }
        return array;
@@ -1638,7 +1648,6 @@
            String dayNum = "";
            String diffVal = "";
            if (dataLevel.equals(level)) {
                if (level.equals("1")) {
                    //水位长期不变,五日变幅小于5cm,十日变幅大于5cm小于8cm,三十日变幅大于8cm小于10cm
@@ -1692,6 +1701,7 @@
                }
                jsonObject.put("diff_val", diffVal);
                jsonObject.put("monitorData",jsonObject.getString("val1"));
                array.add(jsonObject);
            }
        }
@@ -1719,12 +1729,14 @@
                if (differ < 0) {
                    //加进一个绝对值方便展示
                    jsonObject.put("diff_tbb_val_abs", Math.abs(differ));
                    jsonObject.put("monitorData",jsonObject.getString("min_value"));
                    array.add(jsonObject);
                }
            } else if (flag == "higher") {
                //获取高于管口高程数据,即 max_value > tbttel 即 max_value - tbttel >0 即 diff_tbt_val >0
                Double differ = jsonObject.getDouble("diff_tbt_val");
                if (differ > 0) {
                    jsonObject.put("monitorData",jsonObject.getString("max_value"));
                    array.add(jsonObject);
                }
            }
@@ -1762,5 +1774,16 @@
        return  result;
    }
    //给数组赋值监测值,便于后面记录监测值
    public JSONArray setMonitorData(JSONArray source,String monitorName){
        JSONArray result = new JSONArray();
        for (int i = 0; i < source.size(); i++) {
            JSONObject jsonObject = source.getJSONObject(i);
            String  data = jsonObject.getString(monitorName);
            jsonObject.put("monitorData",data);
            result.add(jsonObject);
        }
        return result;
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/constructionReport/controller/ConstructionReportController.java
New file
@@ -0,0 +1,87 @@
package cn.gistack.sm.constructionReport.controller;
import cn.gistack.sm.constructionReport.entity.ConstructionReport;
import cn.gistack.sm.constructionReport.service.IConstructionReportService;
import cn.gistack.sm.constructionReport.vo.ConstructionReportVO;
import cn.gistack.sm.feedback.entity.Feedback;
import cn.gistack.sm.feedback.service.IFeedbackService;
import cn.gistack.sm.feedback.vo.FeedbackVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.AllArgsConstructor;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springframework.web.bind.annotation.*;
/**
 * @PROJECT_NAME: skjcmanager
 * @DESCRIPTION: 反馈记录表Controller
 * @USER: guoshilong
 * @DATE: 2023/6/2 9:38
 * */
@RestController
@RequestMapping("constructionReport")
@AllArgsConstructor
@Api(value = "反馈记录", tags = "反馈记录")
public class ConstructionReportController extends BladeController {
    private final IConstructionReportService constructionReportService;
    @GetMapping("/page")
    @ApiOperation(value = "列表", notes = "传入实体类参数")
    public R<IPage<ConstructionReportVO>> pageList(ConstructionReportVO constructionReportVO, Query query) {
        IPage<ConstructionReportVO> page = constructionReportService.selectPage(Condition.getPage(query),constructionReportVO);
        return R.data(page);
    }
    /**
     * 详情
     */
    @GetMapping("/detail")
    @ApiOperation(value = "详情", notes = "传入实体类参数")
    public R<ConstructionReport> detail(@RequestParam(name="id",required=true) String id) {
        return R.data(constructionReportService.getById(id));
    }
    /**
     * 新增
     */
    @PostMapping("/save")
    @ApiOperation(value = "新增", notes = "传入实体类参数")
    public R save(@RequestBody ConstructionReport constructionReport) {
        return R.data(constructionReportService.save(constructionReport));
    }
    /**
     * 修改
     */
    @PostMapping("/update")
    @ApiOperation(value = "修改", notes = "传入实体类参数")
    public R update(@RequestBody ConstructionReport constructionReport) {
        return R.data(constructionReportService.updateById(constructionReport));
    }
    /**
     * 新增或修改
     */
    @PostMapping("/submit")
    @ApiOperation(value = "新增或修改", notes = "传入实体类参数")
    public R submit(@RequestBody ConstructionReport constructionReport) {
        return R.data(constructionReportService.saveOrUpdate(constructionReport));
    }
    /**
     * 删除
     */
    @PostMapping("/remove")
    @ApiOperation(value = "逻辑删除", notes = "传入实体类参数")
    public R remove(@ApiParam(value = "主键集合") @RequestParam String ids) {
        return R.data(constructionReportService.removeBatchByIds(Func.toLongList(ids)));
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/constructionReport/entity/ConstructionReport.java
New file
@@ -0,0 +1,35 @@
package cn.gistack.sm.constructionReport.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.mp.base.BaseEntity;
/**
 * @PROJECT_NAME: skjcmanager
 * @DESCRIPTION: 施工上报记录表
 * @USER: guoshilong
 * @DATE: 2023/6/2 9:38
 */
@Data
@TableName( value = "sm_construction_report",autoResultMap = true)
@EqualsAndHashCode(callSuper = true)
public class ConstructionReport extends BaseEntity {
    private static final long serialVersionUID = 1L;
    //水库编码
    private String resGuid;
    //水库名称
    private String resName;
    //经度
    private String lon;
    //纬度
    private String lat;
    private String description;
    private String imageUrls;
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/constructionReport/mapper/ConstructionReportMapper.java
New file
@@ -0,0 +1,15 @@
package cn.gistack.sm.constructionReport.mapper;
import cn.gistack.sm.constructionReport.entity.ConstructionReport;
import cn.gistack.sm.constructionReport.vo.ConstructionReportVO;
import cn.gistack.sm.feedback.entity.Feedback;
import cn.gistack.sm.feedback.vo.FeedbackVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface ConstructionReportMapper extends BaseMapper<ConstructionReport> {
    List<ConstructionReportVO> getPage(IPage<ConstructionReportVO> page, @Param("vo") ConstructionReportVO constructionReportVO);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/constructionReport/mapper/ConstructionReportMapper.xml
New file
@@ -0,0 +1,78 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.gistack.sm.constructionReport.mapper.ConstructionReportMapper">
    <sql id="resBaseInfo">
                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
    </sql>
    <select id="getPage" resultType="cn.gistack.sm.constructionReport.vo.ConstructionReportVO">
        SELECT
            scr.id,
            scr.res_name,
            scr.res_guid,
            scr.lon,
            scr.lat,
            scr.description,
            scr.image_urls,
            arb."eng_scal",
            arb."res_reg_code",
            bu.real_name reportUserName,
            scr.create_time,
            <include refid="resBaseInfo"/>
        FROM SM_CONSTRUCTION_REPORT SCR
        LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = scr.res_guid
        LEFT JOIN SJZT_MD."att_ad_base"town ON arb."interior_ad_guid" = town."guid"
        LEFT JOIN SJZT_MD."att_ad_base" county ON town."p_ad_code" = county."guid"
        LEFT JOIN SJZT_MD."att_ad_base" city ON county."p_ad_code" = city."guid"
        LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code"
        LEFT JOIN BLADE_USER BU ON BU.ID = SCR.CREATE_USER
        where scr.is_deleted  = 0
          <if test="vo.adCode != null and vo.adCode !=''">
            AND CONCAT(province."ad_code",city."ad_code",county."ad_code",town."ad_code") LIKE CONCAT('%',#{vo.adCode},'%')
        </if>
        <if test="vo.engScal != null and vo.engScal !=''">
            AND arb."eng_scal" = #{vo.engScal}
        </if>
        <if test="vo.resName != null and vo.resName !=''">
            AND scr.res_name LIKE CONCAT('%',#{vo.resName},'%')
        </if>
        <if test="vo.resGuid != null and vo.resGuid !=''">
            AND scr.res_guid LIKE CONCAT('%',#{vo.resGuid},'%')
        </if>
        <if test="vo.resRegCode != null and vo.resRegCode !=''">
            AND arb."res_reg_code" LIKE CONCAT('%',#{vo.resRegCode},'%')
        </if>
        <if test="vo.startTime != null and vo.startTime != ''">
            AND scr.create_time &gt;= #{dam.startTime}
        </if>
        <if test="vo.endTime != null and vo.endTime !='' ">
            AND scr.create_time &lt;= #{dam.endTime}
        </if>
    </select>
</mapper>
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/constructionReport/service/IConstructionReportService.java
New file
@@ -0,0 +1,10 @@
package cn.gistack.sm.constructionReport.service;
import cn.gistack.sm.constructionReport.entity.ConstructionReport;
import cn.gistack.sm.constructionReport.vo.ConstructionReportVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
public interface IConstructionReportService extends BaseService<ConstructionReport> {
    IPage<ConstructionReportVO> selectPage(IPage<ConstructionReportVO> page, ConstructionReportVO constructionReportVO);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/constructionReport/service/impl/ConstructionReportServiceImpl.java
New file
@@ -0,0 +1,20 @@
package cn.gistack.sm.constructionReport.service.impl;
import cn.gistack.sm.constructionReport.entity.ConstructionReport;
import cn.gistack.sm.constructionReport.mapper.ConstructionReportMapper;
import cn.gistack.sm.constructionReport.service.IConstructionReportService;
import cn.gistack.sm.constructionReport.vo.ConstructionReportVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.tool.utils.StringUtil;
import org.springframework.stereotype.Service;
@Service
public class ConstructionReportServiceImpl extends BaseServiceImpl<ConstructionReportMapper, ConstructionReport> implements IConstructionReportService {
    @Override
    public IPage<ConstructionReportVO> selectPage(IPage<ConstructionReportVO> page, ConstructionReportVO constructionReportVO) {
        return page.setRecords(baseMapper.getPage(page,constructionReportVO));
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/constructionReport/vo/ConstructionReportVO.java
New file
@@ -0,0 +1,24 @@
package cn.gistack.sm.constructionReport.vo;
import cn.gistack.sm.constructionReport.entity.ConstructionReport;
import lombok.Data;
@Data
public class ConstructionReportVO extends ConstructionReport {
    private String adCode;
    private String provinceCode;
    private String provinceName;
    private String cityCode;
    private String cityName;
    private String countyCode;
    private String countyName;
    private String townCode;
    private String townName;
    private String engScal;
    private String resRegCode;
    private String reportUserName;
    private String startTime;
    private String endTime;
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/dto/AttResBaseUserDTO.java
@@ -55,6 +55,11 @@
    @ApiModelProperty(value = "所在地点")
    private String place;
    //经度
    private String lon;
    //纬度
    private String lat;
    /**
     * 行政责任人-id
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/AttResBaseMapper.xml
@@ -178,7 +178,7 @@
    <!--获取水库对应责任人分页数据-->
    <select id="getAttResBaseUserPage" resultType="cn.gistack.sm.sjztmd.dto.AttResBaseUserDTO">
        select
        arb."guid", arb."name", arb."res_loc" as place, arb."res_reg_code" as resRegCode, arb."eng_scal" as engScal,
        arb."guid", arb."name", arb."res_loc" as place, arb."res_reg_code" as resRegCode, arb."eng_scal" as engScal,arb."center_long" as lon,arb."center_lat" as lat,
        REGEXP_SUBSTR (arb."res_loc",'[^-]+',1,2) as cityName,
        REGEXP_SUBSTR (arb."res_loc",'[^-]+',1,3) as countyName,
        REGEXP_SUBSTR (arb."res_loc",'[^-]+',1,4) as townName,
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztods/service/impl/SkxsQkTjServiceImpl.java
@@ -176,6 +176,8 @@
            SkxsQkTj skxs = baseMapper.selectSkxsQkTjBy(res_cd,jsonArray.getJSONObject(i).getString("res_nm"),skxsQkTj.getQueryTime());
            if (null!=skxs){
                // 跳出本次循环
                setSkxsQkTjInfo(skxs,jsonArray,i,skxsQkTj.getQueryTime());
                updateById(skxs);
                continue;
            }
            SkxsQkTj qkTj = new SkxsQkTj();
skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/AlarmDayXxlJob.java
New file
@@ -0,0 +1,299 @@
package cn.gistack.job.executor.jobhandler;
import cn.gistack.alerts.notice.feign.NoticeClient;
import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.handler.annotation.XxlJob;
import com.xxl.job.core.log.XxlJobLogger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
 * 告警定时任务执行器
 * @author zhongrj
 * @date 2023-06-03
 */
@Component
public class AlarmDayXxlJob {
    @Autowired
    private NoticeClient noticeClient;
    /**
     * 策略20: 大坝安全监测告警-测压管水位大于校核洪水位-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("damSafetySyDayHandle")
    public ReturnT<String> damSafetySyHandle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("测压管水位大于校核洪水位","day","damSafetySyHandle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
    /**
     * 策略21: 大坝安全监测告警-渗压监测数据缺失-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("damSafetySyNoneDayHandle")
    public ReturnT<String> damSafetySyNoneHandle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("渗压监测数据缺失","day","damSafetySyNoneHandle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
    /**
     * 策略22: 大坝安全监测告警-渗流监测数据缺失-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("damSafetySlNoneDayHandle")
    public ReturnT<String> damSafetySlNoneHandle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("渗流监测数据缺失","day","damSafetySlNoneHandle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
    /**
     * 策略23: 大坝安全监测告警-位移监测数据缺失-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("damSafetyWyNoneDayHandle")
    public ReturnT<String> damSafetyWyNoneHandle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("变形监测数据缺失","day","damSafetyWyNoneHandle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
    /**
     * 策略24: 大坝安全监测告警-渗压资料缺失-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("damSafetySyDataMissingDayHandle")
    public ReturnT<String> damSafetySyDataMissingHandle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("渗压资料缺失","day","damSafetySyDataMissingHandle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
    /**
     * 策略25: 大坝安全监测告警-变形资料缺失-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("damSafetyBxDataMissingDayHandle")
    public ReturnT<String> damSafetyBxDataMissingHandle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("变形资料缺失","day","damSafetyBxDataMissingHandle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
    /**
     * 策略26: 大坝安全监测告警-水位低于管底高程-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("damSafetySyLessThenPipeDayHandle")
    public ReturnT<String> damSafetySyLessThenPipeHandle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("水位低于管底高程","day","damSafetySyLessThenPipeHandle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
    /**
     * 策略27: 大坝安全监测告警-水位大于管口高程-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("damSafetySyHigherThenNozzleDayHandle")
    public ReturnT<String> damSafetySyHigherThenNozzleHandle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("水位大于管口高程","day","damSafetySyHigherThenNozzleHandle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
    /**
     * 策略28: 大坝安全监测告警-水位大于坝顶高程-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("damSafetySyHigherThenBdElevationDayHandle")
    public ReturnT<String> damSafetySyHigherThenBdElevationHandle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("水位大于坝顶高程","day","damSafetySyHigherThenBdElevationHandle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
    /**
     * 策略29: 大坝安全监测告警-水位大于库水位-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("damSafetySyHigherThenWaterLevelDayHandle")
    public ReturnT<String> damSafetySyHigherThenWaterLevelHandle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("水位大于库水位","day","damSafetySyHigherThenWaterLevelHandle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
    /**
     * 策略30: 大坝安全监测告警-水位长期不变,五日变幅小于5cm,十日变幅大于5cm小于8cm,三十日变幅大于8cm小于10cm-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("damSafetySyYellowChangeDayHandle")
    public ReturnT<String> damSafetySyYellowChangeHandle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("水位变幅黄色告警","day","damSafetySyYellowChangeHandle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
    /**
     * 策略31: 大坝安全监测告警-渗压水位一日变幅大于0.5米小于1米,五日变幅大于1米小于2米,十日变幅大于2米小于5米,三十日变幅大于5米小于10米-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("damSafetySyOrangeChangeDayHandle")
    public ReturnT<String> damSafetySyOrangeChangeHandle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("水位变幅橙色告警","day","damSafetySyOrangeChangeHandle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
    /**
     * 策略34: 大坝安全监测告警-变形值大于2cm小于5cm-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("damSafetyWyOver2Less5DayHandle")
    public ReturnT<String> damSafetyWyOver2Less5Handle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("变形值大于2cm小于5cm","day","damSafetyWyOver2Less5Handle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
    /**
     * 策略35: 大坝安全监测告警-变形值大于5cm小于10cm-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("damSafetyWyOver5Less10DayHandle")
    public ReturnT<String> damSafetyWyOver5Less10Handle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("变形值大于5cm小于10cm","day","damSafetyWyOver5Less10Handle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
    /**
     * 策略38: 大坝安全监测告警-渗流量一日大于5L小于8L,连续3日增加-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("damSafetySlOver5Less8DayHandle")
    public ReturnT<String> damSafetySlOver5Less8Handle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("渗流量一日大于5L小于8L连续3日增加","day","damSafetySlOver5Less8Handle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
    /**
     * 策略39: 大坝安全监测告警-渗流量一日大于8L小于10L,连续3日增加-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("damSafetySlOver8Less10DayHandle")
    public ReturnT<String> damSafetySlOver8Less10Handle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("渗流量一日大于8L小于10L连续3日增加","day","damSafetySlOver8Less10Handle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
    /**
     * 策略41: 视频告警-视频信息接收不到-定时任务执行器
     * @param param
     * @return
     * @throws Exception
     */
    @XxlJob("videoOfflineDayHandle")
    public ReturnT<String> videoOfflineHandle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("视频信息接收不到","day","videoOfflineHandle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;
    }
}
skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/AlarmXxlJob.java
@@ -383,7 +383,7 @@
    public ReturnT<String> damSafetyWyNoneHandle(String param){
        XxlJobLogger.log("开始执行任务...");
        // 创建外呼任务
        noticeClient.createAlarmNoticeTaskJobHandler("位移监测数据缺失","","damSafetyWyNoneHandle");
        noticeClient.createAlarmNoticeTaskJobHandler("变形监测数据缺失","","damSafetyWyNoneHandle");
        XxlJobLogger.log("结束自动创建任务...");
        // 返回
        return ReturnT.SUCCESS;