Jelajahi Sumber

修复告警推送微公众号通知信息不全问题

fuyuchuan 1 hari lalu
induk
melakukan
66fc043321

+ 7 - 1
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/MceContentServiceImpl.java

@@ -73,7 +73,7 @@ public class MceContentServiceImpl extends AbstractCrudService<MceContentMapper,
             jsonObject1.addProperty("moduleId", mceReceiveVO.getId());
             jsonObject.addProperty("cids", cids);
             jsonObject.addProperty("title", mceReceiveVO.getInfoTitle());
-            if ("3".equals(mceReceiveVO.getInfoType())){
+            if ("3".equals(mceReceiveVO.getInfoType())) {
                 jsonObject.addProperty("content", mceReceiveVO.getInfoContent().split("-")[0]);
             }
             jsonObject.addProperty("content", mceReceiveVO.getInfoContent());
@@ -116,6 +116,12 @@ public class MceContentServiceImpl extends AbstractCrudService<MceContentMapper,
             if (StringUtils.isNotEmpty(mceReceiveVO.getOaType())) {
                 sendWeChatMessageRequestVO.setOaType(mceReceiveVO.getOaType());
             }
+            if (StringUtils.isNotEmpty(mceReceiveVO.getDeviceId())) {
+                sendWeChatMessageRequestVO.setDeviceId(mceReceiveVO.getDeviceId());
+            }
+            if (StringUtils.isNotEmpty(mceReceiveVO.getAlarmTime())) {
+                sendWeChatMessageRequestVO.setAlarmTime(mceReceiveVO.getAlarmTime());
+            }
             mceMbuserService.sendWeChatMessage(sendWeChatMessageRequestVO);
         }
     }

+ 13 - 6
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/MceReceiveServiceImpl.java

@@ -350,6 +350,17 @@ public class MceReceiveServiceImpl extends AbstractCrudService<MceReceiveMapper,
                 continue;
             }
 
+            // 获取用户消息配置
+            MceMbuser mbUser = userIdToMbUserMap.get(userId);
+            if (mbUser == null) {
+                continue;
+            }
+
+            // 登录不需要新增消息记录
+            if ("0".equals(mceRequestVO.getInfoType())) {
+                handleMessageDelivery(mbUser, mceRequestVO, 0, appMode, wcMode);
+            }
+
             // 创建消息接收记录
             MceReceive mceReceive = createMceReceive(user, contentId, mceRequestVO, userNameToNickNameMap);
             boolean saveResult = this.save(mceReceive);
@@ -358,12 +369,6 @@ public class MceReceiveServiceImpl extends AbstractCrudService<MceReceiveMapper,
                 continue;
             }
 
-            // 获取用户消息配置
-            MceMbuser mbUser = userIdToMbUserMap.get(userId);
-            if (mbUser == null) {
-                continue;
-            }
-
             // 根据消息类型处理消息发送
             handleMessageDelivery(mbUser, mceRequestVO, mceReceive.getId(), appMode, wcMode);
         }
@@ -444,6 +449,8 @@ public class MceReceiveServiceImpl extends AbstractCrudService<MceReceiveMapper,
             Integer isLoginNotify = one.getIsLoginNotify();
             if (isLoginNotify == 1) {
                 sendWeChatMessage(mbUser, mceRequestVO, wcMode, infoType, mceReceiveId);
+            } else {
+                log.info("用户{}未开启登录通知", mbUser.getUserId());
             }
             return;
         }