ソースを参照

feat : 消息推送策略修复空指针问题03

bilingfeng 10 ヶ月 前
コミット
480204a740

+ 1 - 1
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/ManageApplication.java

@@ -23,7 +23,7 @@ public class ManageApplication {
 
     public static void main(String[] args) {
         SpringApplication.run(ManageApplication.class, args);
-        System.out.println("赞象Manage服务启动成功 < (消息推送策略, 修复空指针问题・・)ノ(._.`) \n" +
+        System.out.println("赞象Manage服务启动成功 < (消息推送策略, 03・・)ノ(._.`) \n" +
                 "___  ___  ___   _   _   ___  _____  _____ \n" +
                 "|  \\/  | / _ \\ | \\ | | / _ \\|  __ \\|  ___|\n" +
                 "| .  . |/ /_\\ \\|  \\| |/ /_\\ \\ |  \\/| |__  \n" +

+ 5 - 3
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/rpc/impl/PushMsgRpcImpl.java

@@ -121,9 +121,11 @@ public class PushMsgRpcImpl implements IPushMsgRpc {
                     .eq(PushMsgSendResult::getSendStatus, CpSendRoleResultEnum.CP_SEND_ROLE_RESULT_SUCCESS.getValue())
                     .orderByDesc(PushMsgSendResult::getCreateTime)
                     .last("limit 1"));
-            Duration duration = Duration.between(pushMsgSendResult.getCreateTime(), LocalDateTime.now());
-            if (duration.toMinutes() <= defaultStrategy.getSendTimeInterval()) {
-                return Boolean.TRUE;
+            if (pushMsgSendResult != null) {
+                Duration duration = Duration.between(pushMsgSendResult.getCreateTime(), LocalDateTime.now());
+                if (duration.toMinutes() <= defaultStrategy.getSendTimeInterval()) {
+                    return Boolean.TRUE;
+                }
             }
         }
         return Boolean.FALSE;