Просмотр исходного кода

修改报警, 先发短信,再打电话。

hanzhiwei лет назад: 2
Родитель
Сommit
6875cdf2de

+ 14 - 52
zd-modules/zd-algorithm/src/main/java/com/zd/alg/alarm/controller/AlarmController.java

@@ -66,60 +66,20 @@ public class AlarmController extends BaseController {
         }
         //处理数据 短信拼装
         String sendType = alarmEntrty.getType();
+        AlarmEntrty alarmEntrtySMS = new AlarmEntrty(alarmEntrty.getRoute(), alarmEntrty.getTo(), alarmEntrty.getType(), alarmEntrty.getText());
+        alarmEntrtySMS.setUserPhoneInfo(alarmEntrty.getUserPhoneInfo());
+        alarmEntrtySMS.setLogId(alarmEntrty.getLogId());
+        if((SendTypes.All.toString()).equals(sendType) || (SendTypes.SMS.toString()).equals(sendType) ){
+            //发短信
+            alarmEntrtySMS.setType(SendTypes.SMS.toString());
+            sendSMS(alarmEntrtySMS);
+        }
         if((SendTypes.All.toString()).equals(sendType) || (SendTypes.Call.toString()).equals(sendType)){
             //打电话
             alarmEntrty.setType(SendTypes.Call.toString());
             sendCall(alarmEntrty);
         }
-        if((SendTypes.All.toString()).equals(sendType) || (SendTypes.SMS.toString()).equals(sendType) ){
-            //发短信
-            alarmEntrty.setType(SendTypes.SMS.toString());
-            sendSMS(alarmEntrty);
-        }
         return ResultData.success("拨打电话发送短信完成!");
-//        Map<String, String> map = alarmUtil.sendPost(alarmEntrty);
-//        String data = map.get("Reply");
-//        if((SendTypes.Call + "").equals(alarmEntrty.getType()) || (SendTypes.All + "").equals(alarmEntrty.getType())){
-//            if("OK".equals(data)) {
-//                String[] phones = alarmEntrty.getTo();
-//                for (String phone : phones) {
-//                    AlarmLog alarmLog = new AlarmLog();
-//                    alarmLog.setKeyId(alarmLog.getKeyId());
-//                    alarmLog.setNickName();
-//                    alarmLog.setRoleName();
-//                    alarmLog.setIsBack(1);
-//                    alarmLog.setPhone(phone);
-//                    alarmLog.setNotice(alarmEntrty.getText());
-//                    alarmLog.setMethod("电话");
-//                    alarmLog.setStatus("成功");
-//                    alarmLog.setCreateTime(DateUtils.getNowDate());
-//                    alarmLog.setUpdateTime(DateUtils.getNowDate());
-//
-//                    alarmLogService.insertAlarmLog(alarmLog);
-//                }
-//                return AjaxResult.success();
-//            }else {
-//                String[] phones = alarmEntrty.getTo();
-//                for (String phone : phones) {
-//                    AlarmLog alarmLog = new AlarmLog();
-//                    alarmLog.setIsBack(1);
-//                    alarmLog.setPhone(phone);
-//                    alarmLog.setNotice(alarmEntrty.getText());
-//                    alarmLog.setMethod("电话");
-//                    alarmLog.setStatus("失败");
-//                    alarmLog.setRemark(data);
-//                    alarmLog.setCreateTime(DateUtils.getNowDate());
-//                    alarmLog.setUpdateTime(DateUtils.getNowDate());
-//
-//                    alarmLogService.insertAlarmLog(alarmLog);
-//                }
-//                return AjaxResult.error(data);
-//            }
-//        }else if((SendTypes.SMS + "").equals(alarmEntrty.getType())) {
-//            if ("OK".equals(data)) {
-//                return AjaxResult.success();
-//            }
-//        }
     }
 
     private void sendCall(AlarmEntrty alarmEntrty) {
@@ -171,15 +131,17 @@ public class AlarmController extends BaseController {
     private void sendSMS(AlarmEntrty alarmEntrty) {
         List<UserPhoneInfo> userPhoneInfoList = alarmEntrty.getUserPhoneInfo();
         LinkedHashMap<String, List<UserPhoneInfo>> userPhoneInfoMap = Optional.ofNullable(userPhoneInfoList).orElseGet(Collections::emptyList).stream().collect(Collectors.groupingBy(UserPhoneInfo::getPhone, LinkedHashMap::new, Collectors.toList()));
-        StringBuffer textURL = new StringBuffer();
-        textURL.append(alarmEntrty.getText());
+        String text = alarmEntrty.getText();
         for (String phone : alarmEntrty.getTo()) {
+            StringBuffer textURL = new StringBuffer();
+            textURL.append(text);
             try {
                 ResultData urlScheme = remoteMessageService.getUrlScheme(alarmEntrty.getLogId());
-                if (urlScheme.getCode() != HttpStatus.SUCCESS) {
+                if (urlScheme.getCode() == HttpStatus.SUCCESS) {
+                    textURL.append(smsRedirect).append("?id=").append(alarmEntrty.getLogId()).append("&urlScheme=").append(urlScheme.getData());
+                }else {
                     log.error("获取urlScheme失败!");
                 }
-                textURL.append(smsRedirect).append("?id=").append(alarmEntrty.getLogId()).append("&urlScheme=").append(urlScheme.getData());
             } catch (Exception e) {
                 log.error("获取urlScheme异常!请检查配置(nacos链接配置,小程序参数配置)!");
             }

+ 5 - 1
zd-modules/zd-base/src/main/java/com/zd/base/message/controller/WechatMsgController.java

@@ -140,6 +140,10 @@ public class WechatMsgController {
     @ApiOperation(value = "获取UrlScheme")
     @ApiImplicitParam(name = "id",value = "传入id",required = false)
     public ResultData getUrlScheme(@RequestParam(value = "id",required = false)  Long id) {
-        return ResultData.success(sendService.getUrlScheme(id));
+        String urlScheme = sendService.getUrlScheme(id);
+        if(StringUtils.isNotBlank(urlScheme)){
+            return ResultData.success(urlScheme);
+        }
+        return ResultData.fail();
     }
 }