guoshilong
2024-03-13 c8b03d3da4e29fc3fb9a42ca157738256c331a00
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/NoticeStrategyImpl.java
@@ -573,7 +573,7 @@
   /**
    * 策略19: 大坝安全监测告警
    * 策略19: 大坝安全监测告警-数据缺失
    *
    * @param arg1
    * @param arg2
@@ -604,6 +604,13 @@
      return "大坝安全监测告警";
   }
   /**
    * 策略20: 大坝安全监测告警-渗压管水位大于校核洪水位
    *
    * @param arg1
    * @param arg2
    * @return
    */
   public String damSafetySyHandle(String arg1, String arg2) {
      //String adCode = "420607000000";
      String uuid = UUID.randomUUID().toString();
@@ -628,4 +635,101 @@
      // 返回
      return "大坝安全监测告警";
   }
   /**
    * 策略21: 大坝安全监测告警-渗压数据缺失
    *
    * @param arg1
    * @param arg2
    * @return
    */
   public String damSafetySyNoneHandle(String arg1, String arg2) {
      //String adCode = "420607000000";
      String uuid = UUID.randomUUID().toString();
      String adCode = null;
      // 查询当前策略对应的告警规则信息
      AlarmRule alarmRule = alarmRuleService.getOne(new QueryWrapper<AlarmRule>().eq("rule_name", arg1));
      // 调用中台服务接口查询数据
      JSONArray ztData = noticeHandle.getZtData("", ZtApiUrlConstant.alarm_db_sy_none_api);
      // 获取告警规则详情,判断告警类型(短信,电话,站内信)
      if (null!=alarmRule) {
         // 查询告警详情信息
         List<AlarmRuleDetail> alarmRuleDetailList = alarmRuleDetailService.list(new QueryWrapper<AlarmRuleDetail>().eq("alarm_rule_id", alarmRule.getId()));
         if (alarmRuleDetailList.size()>0){
            // 遍历
            for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
               if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                  asyncNoticeHandle.damSafetyHandle(alarmRule, alarmRuleDetail, ztData,ZtApiDataColumnConstant.damSafetyList,true, adCode, false,uuid);
               }
            }
         }
      }
      // 返回
      return "大坝安全监测告警";
   }
   /**
    * 策略22: 大坝安全监测告警-渗流数据缺失
    *
    * @param arg1
    * @param arg2
    * @return
    */
   public String damSafetySlNoneHandle(String arg1, String arg2) {
      //String adCode = "420607000000";
      String uuid = UUID.randomUUID().toString();
      String adCode = null;
      // 查询当前策略对应的告警规则信息
      AlarmRule alarmRule = alarmRuleService.getOne(new QueryWrapper<AlarmRule>().eq("rule_name", arg1));
      // 调用中台服务接口查询数据
      JSONArray ztData = noticeHandle.getZtData("", ZtApiUrlConstant.alarm_db_sl_none_api);
      // 获取告警规则详情,判断告警类型(短信,电话,站内信)
      if (null!=alarmRule) {
         // 查询告警详情信息
         List<AlarmRuleDetail> alarmRuleDetailList = alarmRuleDetailService.list(new QueryWrapper<AlarmRuleDetail>().eq("alarm_rule_id", alarmRule.getId()));
         if (alarmRuleDetailList.size()>0){
            // 遍历
            for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
               if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                  asyncNoticeHandle.damSafetyHandle(alarmRule, alarmRuleDetail, ztData,ZtApiDataColumnConstant.damSafetyList,true, adCode, false,uuid);
               }
            }
         }
      }
      // 返回
      return "大坝安全监测告警";
   }
   /**
    * 策略23: 大坝安全监测告警-位移数据缺失
    *
    * @param arg1
    * @param arg2
    * @return
    */
   public String damSafetyWyNoneHandle(String arg1, String arg2) {
      //String adCode = "420607000000";
      String uuid = UUID.randomUUID().toString();
      String adCode = null;
      // 查询当前策略对应的告警规则信息
      AlarmRule alarmRule = alarmRuleService.getOne(new QueryWrapper<AlarmRule>().eq("rule_name", arg1));
      // 调用中台服务接口查询数据
      JSONArray ztData = noticeHandle.getZtData("", ZtApiUrlConstant.alarm_db_wy_none_api);
      // 获取告警规则详情,判断告警类型(短信,电话,站内信)
      if (null!=alarmRule) {
         // 查询告警详情信息
         List<AlarmRuleDetail> alarmRuleDetailList = alarmRuleDetailService.list(new QueryWrapper<AlarmRuleDetail>().eq("alarm_rule_id", alarmRule.getId()));
         if (alarmRuleDetailList.size()>0){
            // 遍历
            for (AlarmRuleDetail alarmRuleDetail : alarmRuleDetailList) {
               if (alarmRuleDetail.getAlarmMode().equals("短信")) {
                  asyncNoticeHandle.damSafetyHandle(alarmRule, alarmRuleDetail, ztData,ZtApiDataColumnConstant.damSafetyList,true, adCode, false,uuid);
               }
            }
         }
      }
      // 返回
      return "大坝安全监测告警";
   }
}