From 0de3509425fe41699a923c22b00e7185db2fb5f1 Mon Sep 17 00:00:00 2001 From: zhangshanxue Date: Sat, 17 Aug 2019 15:26:37 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BC=82=E5=A6=96=E6=8B=8D=E8=84=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ljsd/jieling/handler/GetPlayerInfoHandler.java | 4 ++++ .../com/ljsd/jieling/logic/GlobalDataManaager.java | 1 + .../com/ljsd/jieling/logic/dao/PlayerManager.java | 11 +++++++++++ 3 files changed, 16 insertions(+) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java index 2d6a5faa7..b952d2a90 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java @@ -125,11 +125,15 @@ public class GetPlayerInfoHandler extends BaseHandler{ .setSignInInfo(CommonProto.SignInInfo.newBuilder().setDays(playerInfoManager.getSign()+1).setState(playerInfoManager.getSignTotay()).build()) .setMonsterAttackTime(user.getMapManager().getLastMonsterAttack()) .setFirstTenth(user.getHeroManager().getFirstTenth()) + .setIsDayFirst(playerInfoManager.getIsdayFirst()) .build(); try { MessageUtil.sendMessage(iSession, 1, MessageTypeProto.MessageType.GET_PLAYERINFO_RESPONSE_VALUE, getPlayerInfoResponse, true); ActivityLogic.getInstance().flushForLogin(user); DoFix.getInstance().loginFix(user); + if(playerInfoManager.getIsdayFirst()==0){ + playerInfoManager.setIsdayFirst(1); + } RedisUtil.getInstence().set(RedisKey.USER_LOGIN_URL + userId, RPCServerTask.userCallBackUrl); LOGGER.info("back to client!"); if(user.getPlayerInfoManager().getGuidePoints().get(1)!=-1){ diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobalDataManaager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobalDataManaager.java index 2a0eb0ade..31b2858b0 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobalDataManaager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobalDataManaager.java @@ -249,6 +249,7 @@ public class GlobalDataManaager { public static void checkNeedReFlush(ISession session,User user,PlayerInfoProto.FivePlayerUpdateIndication.Builder fBuilder) throws Exception { // 需要隔天刷新的字段统一在这里处理 if (TimeUtils.isOverTime(5,user.getPlayerInfoManager().getLoginTime())) { + user.getPlayerInfoManager().setIsdayFirst(0); //活动刷新 ActivityLogic.getInstance().flushEveryDay(user,fBuilder); PlayerLogic.getInstance().vipflushEveryDay(user,fBuilder); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java index f29e70d6d..956830788 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java @@ -76,6 +76,8 @@ public class PlayerManager extends MongoBase { private long onlineTime; + private int isdayFirst = 0;//给客户端记录下 + private Set fixIds = new CopyOnWriteArraySet<>(); public PlayerManager(){ @@ -434,4 +436,13 @@ public class PlayerManager extends MongoBase { this.onlineTime += onlineTime; updateString("onlineTime", this.onlineTime); } + + public int getIsdayFirst() { + return isdayFirst; + } + + public void setIsdayFirst(int isdayFirst) { + updateString("isdayFirst", isdayFirst); + this.isdayFirst = isdayFirst; + } }