guoshilong
2023-07-10 a0cead06018799c013305ccfcc2f4b95a564af45
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/sms/service/impl/SmsServiceImpl.java
@@ -127,10 +127,12 @@
         list.remove(list.size() - 1);
         // 删除 0 水库编码
         list.remove(0);
         // 转换字符串
         String row = String.join(",", list);
         // 组装数据
         String[][] dyns = new String[][]{{smsRequestTemplate.getTitle()}, {row}};
         String row = String.join(",", list);
         String[] titleArr = smsRequestTemplate.getTitle().split(",");
         String[][] dyns = new String[2][titleArr.length];
         dyns[0] = titleArr;
         dyns[1] = row.split(",");
         //请求参数
         ComResult<DynSMSSendDataResult> resultComResult = sendDynSMSSendDataResultComResult(smsTemplate.getTemplateId(), dyns);
@@ -313,59 +315,6 @@
      map.put("resultComResult",resultComResult);
      map.put("errCount",count);
      //返回
      return map;
   }
   /**
    * 保存站内信记录信息
    * @param smsRequestTemplate
    * @return
    */
   @Override
   public Map<String, Object> saveInStationInfo(SmsRequestTemplate smsRequestTemplate) {
      // 取出数据
      SMSSendRequest request = new SMSSendRequest();
      SmsTemplate smsTemplate = smsRequestTemplate.getSmsTemplate();
      request.setTemplateId(smsTemplate.getTemplateId());
      List<List<String>> templateContent = smsRequestTemplate.getTemplateContent();
      // 先保存结果记录
      List<SmsRecord> smsRecordList = new ArrayList<>();
      // 遍历处理
      for (List<String> list : templateContent) {
         AlarmRecordDetail alarmRecordDetail = new AlarmRecordDetail();
         alarmRecordDetail.setReservoirNumber(list.get(0));
         alarmRecordDetail.setAlarmRecordId(Long.parseLong(list.get(list.size() - 1)));
         alarmRecordDetail.setAlarmMode("站内信");
         // 未读
         alarmRecordDetail.setStatus(1);
         // 删除 最后一个 告警记录id
         list.remove(list.size() - 1);
         // 删除 0 水库编码
         list.remove(0);
         SmsRecord smsRecord = new SmsRecord();
         alarmRecordDetail.setPhone(list.get(0));
         // 设置手机号
         request.setUserNumber(list.get(0));
         // 内容处理
         String s = smsTemplate.getContent().replaceAll("\\{.+?\\}", "%s");
         // 需要删除最前面的手机号
         list.remove(0);
         // 格式转换
         String format = String.format(s, list.toArray());
         // 设置内容
         request.setMessageContent(format);
         // 保存记录
         alarmRecordDetail.setAlarmContent(format);
         alarmRecordDetail.setSendRecordId(smsRecord.getId());
         alarmRecordDetail.setCreateTime(new Date());
         // 保存告警记录详情信息
         boolean save = alarmRecordDetailService.save(alarmRecordDetail);
         smsRecordList.add(smsRecord);
      }
      Map<String, Object> map = new HashMap<>(2);
      map.put("smsRecord",smsRecordList);
      // 返回
      return map;
   }