ke
2024-04-18 f2d0713c2b20a6c751399e2468996eafb8812988
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/notice/service/impl/AsyncNoticeHandle.java
@@ -8,6 +8,7 @@
import cn.gistack.alerts.notice.enums.DangerEnum;
import cn.gistack.alerts.sms.service.SmsService;
import cn.gistack.alerts.sms.vo.SmsRequestTemplate;
import cn.gistack.resource.vo.AlertTextualResearchAttachVO;
import cn.gistack.sm.intelligentCall.feign.OutCallClient;
import com.alibaba.fastjson.JSONArray;
import org.springframework.beans.factory.annotation.Autowired;
@@ -964,7 +965,6 @@
    * @param isSendStation 是否发送站内信
    * @return
    */
   @Async
   public Map<String, Object> damSafetyHandle(AlarmRule alarmRule,
                        AlarmRuleDetail alarmRuleDetail,
                        JSONArray ztData,
@@ -986,7 +986,7 @@
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsg(smsRequestTemplate);
         map = smsService.sendSignMsgMergeCd(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
@@ -1015,4 +1015,1111 @@
         noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
      }
   }
   //保存记录
   public void damSafetySyNoneHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray ztData, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(ztData,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接内容后面的联系方式,当前模板县水利部人员姓名电话
      if (smsRequestTemplate.getPersonVOList().size()>0) {
         // 遍历,拼接县水利部人员电话  拼接发送的模板内容
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list,alarmRule,uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         // 需要合并水库保存站内信记录信息
         noticeHandle.saveInStationInfoMerge(smsRequestTemplate,alarmRule);
      }
   }
   public Map<String, Object> damSafetyHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      Map<String, Object> map = new HashMap<>();
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsgMergeCd(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
      return map;
   }
   //渗压资料缺失
   public Map<String, Object> damSafetySyDataMissingHandle(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      Map<String, Object> map = new HashMap<>();
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsg(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
      return map;
   }
   /**
    * 策略26 短信-----渗压水位低于管底高程
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @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) {
      Map<String, Object> map = new HashMap<>();
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsg(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
      return map;
   }
   /**
    * 策略26 站内信-----渗压水位低于管底高程
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @param uuid 随机生成id
    * @return
    */
   public void damSafetySyLessThenPipeHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         // 保存站内信记录信息
         noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
      }
   }
   /**
    * 策略27 短信-----渗压水位高于管口高程
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @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) {
      Map<String, Object> map = new HashMap<>();
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsg(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
      return map;
   }
   /**
    * 策略26 站内信-----渗压水位高于管口高程
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @param uuid 随机生成id
    * @return
    */
   public void damSafetySyHigherThenNozzleHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         // 保存站内信记录信息
         noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
      }
   }
   /**
    * 策略28 短信-----渗压水位高于坝顶高程
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @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) {
      Map<String, Object> map = new HashMap<>();
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsg(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
      return map;
   }
   /**
    * 策略28 站内信-----渗压水位高于坝顶高程
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @param uuid 随机生成id
    * @return
    */
   public void damSafetySyHigherThenBdElevationHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         // 保存站内信记录信息
         noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
      }
   }
   /**
    * 策略29 短信-----渗压水位高于库水位
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @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) {
      Map<String, Object> map = new HashMap<>();
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsg(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
      return map;
   }
   /**
    * 策略29 站内信-----渗压水位高于库水位
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @param uuid 随机生成id
    * @return
    */
   public void damSafetySyHigherThenWaterLevelHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         // 保存站内信记录信息
         noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
      }
   }
   /**
    * 策略30 短信-----水位长期不变,五日变幅小于5cm,十日变幅大于5cm小于8cm,三十日变幅大于8cm小于10cm
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @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) {
      Map<String, Object> map = new HashMap<>();
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsg(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
      return map;
   }
   /**
    * 策略30 站内信-----水位长期不变,五日变幅小于5cm,十日变幅大于5cm小于8cm,三十日变幅大于8cm小于10cm
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @param uuid 随机生成id
    * @return
    */
   public void damSafetySyYellowChangeHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         // 保存站内信记录信息
         noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
      }
   }
   /**
    * 策略31 短信-----渗压水位一日变幅大于0.5米小于1米,五日变幅大于1米小于2米,十日变幅大于2米小于5米,三十日变幅大于5米小于10米
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @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) {
      Map<String, Object> map = new HashMap<>();
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
//         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
//            // 保存告警记录信息
//            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
//            if (null != alarmRecord) {
//               list.add(alarmRecord.getId().toString());
//            }
//         }
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 依次添加行巡查责任人,技术责任人信息(姓名)
            noticeHandle.addPatrolTechnologyInfo(list,false);
            // 拼接市县水利部人员姓名及联系方式
            noticeHandle.addCityCountyBusinessPersonInfo(list);
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsg(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
      return map;
   }
   /**
    * 策略31 站内信-----渗压水位一日变幅大于0.5米小于1米,五日变幅大于1米小于2米,十日变幅大于2米小于5米,三十日变幅大于5米小于10米
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @param uuid 随机生成id
    * @return
    */
   public void damSafetySyOrangeChangeHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
//         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
//            // 保存告警记录信息
//            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
//            if (null != alarmRecord) {
//               list.add(alarmRecord.getId().toString());
//            }
//         }
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 依次添加行巡查责任人,技术责任人信息(姓名)
            noticeHandle.addPatrolTechnologyInfo(list,false);
            // 拼接市县水利部人员姓名及联系方式
            noticeHandle.addCityCountyBusinessPersonInfo(list);
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         // 保存站内信记录信息
         noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
      }
   }
   /**
    * 策略32 短信-----渗压水位一日变幅大于1米小于2米,五日变幅大于2米小于5米,十日变幅大于5米小于10米,三十日变幅大于10米
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @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) {
      Map<String, Object> map = new HashMap<>();
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 依次添加行巡查责任人,技术责任人信息(姓名)
            noticeHandle.addPatrolTechnologyInfo(list,false);
            // 拼接市县水利部人员姓名及联系方式
            noticeHandle.addCityCountyBusinessPersonInfo(list);
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsg(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
      return map;
   }
   /**
    * 策略32 站内信-----渗压水位一日变幅大于1米小于2米,五日变幅大于2米小于5米,十日变幅大于5米小于10米,三十日变幅大于10米
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @param uuid 随机生成id
    * @return
    */
   public void damSafetySyRedChangeHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 依次添加行巡查责任人,技术责任人信息(姓名)
            noticeHandle.addPatrolTechnologyInfo(list,false);
            // 拼接市县水利部人员姓名及联系方式
            noticeHandle.addCityCountyBusinessPersonInfo(list);
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         // 保存站内信记录信息
         noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
      }
   }
   /**
    * 策略33 短信-----近1h水位陡降
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @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) {
      Map<String, Object> map = new HashMap<>();
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 依次添加行巡查责任人,技术责任人信息(姓名)
            noticeHandle.addPatrolTechnologyInfo(list,false);
            // 拼接市县水利部人员姓名及联系方式
            noticeHandle.addCityCountyBusinessPersonInfo(list);
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsg(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
      return map;
   }
   /**
    * 策略33 站内信----- 近1h水位陡降
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @param uuid 随机生成id
    * @return
    */
   public void damSafetySyRz1hChangeHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 依次添加行巡查责任人,技术责任人信息(姓名)
            noticeHandle.addPatrolTechnologyInfo(list,false);
            // 拼接市县水利部人员姓名及联系方式
            noticeHandle.addCityCountyBusinessPersonInfo(list);
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         // 保存站内信记录信息
         noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
      }
   }
   /**
    * 策略34 短信-----变形值大于20mm小于50mm
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @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) {
      Map<String, Object> map = new HashMap<>();
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 依次添加行巡查责任人,技术责任人信息(姓名)
            noticeHandle.addPatrolTechnologyInfo(list,false);
            // 拼接市县水利部人员姓名及联系方式
            noticeHandle.addCityCountyBusinessPersonInfo(list);
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsg(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
      return map;
   }
   /**
    * 策略34 站内信----- 变形值大于20mm小于50mm
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @param uuid 随机生成id
    * @return
    */
   public void damSafetyWyOver2Less5HandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 依次添加行巡查责任人,技术责任人信息(姓名)
            noticeHandle.addPatrolTechnologyInfo(list,false);
            // 拼接市县水利部人员姓名及联系方式
            noticeHandle.addCityCountyBusinessPersonInfo(list);
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         // 保存站内信记录信息
         noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
      }
   }
   /**
    * 策略35 短信-----变形值大于50mm小于100mm
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @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) {
      Map<String, Object> map = new HashMap<>();
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 依次添加行巡查责任人,技术责任人信息(姓名)
            noticeHandle.addPatrolTechnologyInfo(list,false);
            // 拼接市县水利部人员姓名及联系方式
            noticeHandle.addCityCountyBusinessPersonInfo(list);
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsg(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
      return map;
   }
   /**
    * 策略34 站内信----- 变形值大于50mm小于100mm
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @param uuid 随机生成id
    * @return
    */
   public void damSafetyWyOver5Less10HandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 依次添加行巡查责任人,技术责任人信息(姓名)
            noticeHandle.addPatrolTechnologyInfo(list,false);
            // 拼接市县水利部人员姓名及联系方式
            noticeHandle.addCityCountyBusinessPersonInfo(list);
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         // 保存站内信记录信息
         noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
      }
   }
   /**
    * 策略34 短信-----变形值大于100mm
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @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) {
      Map<String, Object> map = new HashMap<>();
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 依次添加行巡查责任人,技术责任人信息(姓名)
            noticeHandle.addPatrolTechnologyInfo(list,false);
            // 拼接市县水利部人员姓名及联系方式
            noticeHandle.addCityCountyBusinessPersonInfo(list);
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsg(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
      return map;
   }
   /**
    * 策略34 站内信----- 变形值大于100mm
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @param uuid 随机生成id
    * @return
    */
   public void damSafetyWyOver10HandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 依次添加行巡查责任人,技术责任人信息(姓名)
            noticeHandle.addPatrolTechnologyInfo(list,false);
            // 拼接市县水利部人员姓名及联系方式
            noticeHandle.addCityCountyBusinessPersonInfo(list);
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         // 保存站内信记录信息
         noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
      }
   }
   /**
    * 策略34 短信-----近1h变形值大于10cm以上
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @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) {
      Map<String, Object> map = new HashMap<>();
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 依次添加行巡查责任人,技术责任人信息(姓名)
            noticeHandle.addPatrolTechnologyInfo(list,false);
            // 拼接市县水利部人员姓名及联系方式
            noticeHandle.addCityCountyBusinessPersonInfo(list);
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsg(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
      return map;
   }
   /**
    * 策略34 站内信----- 近1h变形值大于10cm以上
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @param uuid 随机生成id
    * @return
    */
   public void damSafetyWy1hChangeOver10HandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 依次添加行巡查责任人,技术责任人信息(姓名)
            noticeHandle.addPatrolTechnologyInfo(list,false);
            // 拼接市县水利部人员姓名及联系方式
            noticeHandle.addCityCountyBusinessPersonInfo(list);
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         // 保存站内信记录信息
         noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
      }
   }
   /**
    * 策略34 短信-----渗流值
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @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) {
      Map<String, Object> map = new HashMap<>();
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 依次添加行巡查责任人,技术责任人信息(姓名)
            noticeHandle.addPatrolTechnologyInfo(list,false);
            // 拼接市县水利部人员姓名及联系方式
            noticeHandle.addCityCountyBusinessPersonInfo(list);
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsg(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
      return map;
   }
   /**
    * 策略34 站内信----- 渗流值
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @param uuid 随机生成id
    * @return
    */
   public void damSafetySlOverLessHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 依次添加行巡查责任人,技术责任人信息(姓名)
            noticeHandle.addPatrolTechnologyInfo(list,false);
            // 拼接市县水利部人员姓名及联系方式
            noticeHandle.addCityCountyBusinessPersonInfo(list);
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         // 保存站内信记录信息
         noticeHandle.saveInStationInfo(smsRequestTemplate,alarmRule);
      }
   }
   /**
    * 策略34 站内信----- 资料缺失
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @param uuid 随机生成id
    * @return
    */
   public void damSafetySyDataMissingHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         // 保存站内信记录信息
         noticeHandle.saveInStationInfoMergeNoCd(smsRequestTemplate,alarmRule);
      }
   }
   /**
    * 策略34 站内信----- 视频离线
    * @param alarmRule 告警规则
    * @param alarmRuleDetail 告警规则详情
    * @param data 中台数据
    * @param columnList 需要展示的数据字段
    * @param flag 是否显示日期
    * @param adCode 行政区划
    * @param isSendStation 是否站内信
    * @param uuid 随机生成id
    * @return
    */
   public void videoOfflineHandleStation(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray data, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(data, alarmRule, alarmRuleDetail, columnList, flag, adCode, uuid, isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         // 保存站内信记录信息
         noticeHandle.saveInStationInfoMergeVideo(smsRequestTemplate,alarmRule);
      }
   }
   public void damSafetySyDataMissingHandleSms(AlarmRule alarmRule, AlarmRuleDetail alarmRuleDetail, JSONArray ztData, List<String> columnList, boolean flag, String adCode, boolean isSendStation, String uuid) {
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(ztData,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 遍历
      for (List<String> list : smsRequestTemplate.getTemplateContent()) {
         // 保存告警记录信息
         AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list,alarmRule,uuid);
         if (null != alarmRecord) {
            list.add(alarmRecord.getId().toString());
         }
      }
      // 调用短信服务
      smsService.sendMergeSignMsg(smsRequestTemplate);
   }
   public Map<String, Object> videoOfflineHandleSms(AlarmRule alarmRule,
                                    AlarmRuleDetail alarmRuleDetail,
                                    JSONArray ztData,
                                    List<String> columnList,
                                    Boolean flag,
                                    String adCode,
                                    Boolean isSendStation,
                                    String uuid) {
      Map<String, Object> map = new HashMap<>();
      // 只发短信,将发短信信息组装好
      SmsRequestTemplate smsRequestTemplate
         = noticeHandle.getSendSmsTemplate(ztData,alarmRule,alarmRuleDetail,columnList ,flag,adCode,uuid,isSendStation);
      // 拼接后面内容
      if (smsRequestTemplate.getPersonVOList().size() > 0) {
         for (List<String> list : smsRequestTemplate.getTemplateContent()) {
            // 保存告警记录信息
            AlarmRecord alarmRecord = noticeHandle.saveAlarmRecord(list, alarmRule, uuid);
            if (null != alarmRecord) {
               list.add(alarmRecord.getId().toString());
            }
         }
         map = smsService.sendSignMsgMergeCdVideo(smsRequestTemplate);
         // 调用短信服务
         return map;
      }
      return map;
   }
}