From c0271abb3d2ff3a8d221401834f7bbed6f2f0753 Mon Sep 17 00:00:00 2001 From: mengchengzhen <13682025901@163.com> Date: Mon, 26 Apr 2021 18:24:02 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E7=A4=BC=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jieling/logic/activity/ActivityLogic.java | 19 ++++++++++++++++++- .../jieling/logic/store/BuyGoodsNewLogic.java | 3 +++ .../bean/TimeLimitWelfareBag.java | 8 +++++--- 3 files changed, 26 insertions(+), 4 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java index 3983bf8d9..b0762c582 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java @@ -119,8 +119,8 @@ public class ActivityLogic implements IEventHandler{ public void flushForLogin(User user,ISession iSession) throws Exception { checkActivityIsFinish(user); - checkActivityOfUser(user, null); sendLuckWheelPool(user,iSession); + checkActivityOfUser(user, null); } public static class Instance { @@ -1491,4 +1491,21 @@ public class ActivityLogic implements IEventHandler{ } MessageUtil.sendMessage(session,1,MessageTypeProto.MessageType.FU_XING_STORE_BUY_RESPONSE_VALUE,null,true); } + + public static long[] getStartAndEndTime(User user,int activityId){ + long[] result = new long[2]; + long startTime = 0; + long endTime = 0; + SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(activityId); + if (sGlobalActivity.getTime() == ActivityType.OPEN_TYPE_ROLE) { + startTime = ToolsUtil.getTimeLong(sGlobalActivity.getStartTimeLong(), sGlobalActivity.getEndTimeLong(), sGlobalActivity.getTime(), user.getPlayerInfoManager().getCreateTime(), 1); + endTime = ToolsUtil.getTimeLong(sGlobalActivity.getStartTimeLong(), sGlobalActivity.getEndTimeLong(), sGlobalActivity.getTime(), user.getPlayerInfoManager().getCreateTime(), 2); + }else{ + startTime = ToolsUtil.getTimeLong(sGlobalActivity.getStartTimeLong(),sGlobalActivity.getEndTimeLong(),sGlobalActivity.getTime(),0, 1); + endTime = ToolsUtil.getTimeLong(sGlobalActivity.getStartTimeLong(),sGlobalActivity.getEndTimeLong(),sGlobalActivity.getTime(),0, 2); + } + result[0] = startTime; + result[1] = endTime; + return result; + } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsNewLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsNewLogic.java index b2e94e574..de8621b14 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsNewLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/BuyGoodsNewLogic.java @@ -706,6 +706,9 @@ public class BuyGoodsNewLogic { public static void sendReward(int uid,int id,ReceiveWelfareBag bag,int type) throws Exception{ int nowTime = (int)(System.currentTimeMillis()/1000); + if(bag.getGetRewardTime() == 0){ + bag.setGetRewardTime(TimeUtils.getTodayZero() - 24*3600*1000); + } int getDays = TimeUtils.differentDays(bag.getLastBuyTime(),bag.getGetRewardTime()); int canget = TimeUtils.differentDays(bag.getGetRewardTime(),System.currentTimeMillis()); getRewards(uid,id,getDays,canget,bag.getContinueDays()); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/bean/TimeLimitWelfareBag.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/bean/TimeLimitWelfareBag.java index 4855ed7ac..6ebc005be 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/bean/TimeLimitWelfareBag.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/newRechargeInfo/bean/TimeLimitWelfareBag.java @@ -9,6 +9,8 @@ import config.SGlobalActivity; import config.SRechargeCommodityNewConfig; import util.TimeUtils; +import java.util.List; + /** * 时限礼包(活动) */ @@ -19,9 +21,9 @@ public class TimeLimitWelfareBag extends AbstractWelfareBag { for(String[] I : getCondition()){ if(I[0].equals("3")){ if(ActivityLogic.checkActivityOpen(user,Integer.parseInt(I[1]))){ - SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(Integer.parseInt(I[1])); - setStartTime(sGlobalActivity.getStartTimeLong()); - setEndTime(sGlobalActivity.getEndTimeLong()); + long[] result = ActivityLogic.getStartAndEndTime(user,Integer.parseInt(I[1])); + setStartTime(result[0]); + setEndTime(result[1]); setOpen(true); } }