diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java index 91a0f9c4a..979226c65 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java @@ -189,16 +189,13 @@ public class HeroLogic{ } if(sLotterySetting.getLotteryType()==3){ //活动抽卡校验 - Object[] activityStatusByType = ActivityLogic.getInstance().getActivityStatusByType(user, sLotterySetting.getActivityId()); - if(activityStatusByType.length!=1){ + if(!user.getActivityManager().getActivityMissionMap().containsKey(sLotterySetting.getActivityId())){ throw new ErrorCodeException(ErrorCode.ACTIVITY_NOT_OPEN); } - if(activityStatusByType[0] instanceof SGlobalActivity){ - SGlobalActivity activity = (SGlobalActivity)activityStatusByType[0]; - long endTimeLong = ToolsUtil.getEndTimeLong(activity.getStartTimeLong(), activity.getEndTimeLong(), activity.getTime(), user.getPlayerInfoManager().getCreateTime(), activity.getGapTime()); - if(TimeUtils.now()>endTimeLong){ - throw new ErrorCodeException(ErrorCode.ACTIVITY_NOT_OPEN); - } + SGlobalActivity activity = SGlobalActivity.getsGlobalActivityMap().get(sLotterySetting.getActivityId()); + long endTimeLong = ToolsUtil.getEndTimeLong(activity.getStartTimeLong(), activity.getEndTimeLong(), activity.getTime(), user.getPlayerInfoManager().getCreateTime(), activity.getGapTime()); + if(TimeUtils.now()>endTimeLong){ + throw new ErrorCodeException(ErrorCode.ACTIVITY_NOT_OPEN); } } //筛选卡池 diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java index e063fc6fd..5f166ce39 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java @@ -292,16 +292,20 @@ public class PlayerLogic { removePrivileges.add(vipInfoItem.getKey()); continue; } - privilegeList.add(CommonProto.Privilege.newBuilder() - .setId(vipInfoItem.getKey()) - . setUsedTimes(vipInfoItem.getValue().getCount()) - .setEffectTime(vipInfoItem.getValue().getEffectTime()) - .build()); - } - if(fBuilder!=null){ - fBuilder.setHadTakeDailyBox(playerInfoManager.getHadTakeDailyBoxVip()).addAllPrivilege(privilegeList); } playerInfoManager.vipFlush(removePrivileges); + //vip刷新后才能发给前端 + if(fBuilder!=null){ + for(Map.Entry vipInfoItem : vipInfo.entrySet()){ + privilegeList.add(CommonProto.Privilege.newBuilder() + .setId(vipInfoItem.getKey()) + . setUsedTimes(vipInfoItem.getValue().getCount()) + .setEffectTime(vipInfoItem.getValue().getEffectTime()) + .build()); + } + fBuilder.setHadTakeDailyBox(playerInfoManager.getHadTakeDailyBoxVip()) + .addAllPrivilege(privilegeList); + } sendExpiredMail(uid,removePrivileges,2);