限时抽卡校验修改

back_recharge
lvxinran 2019-12-27 00:01:37 +08:00
parent f777bd44d4
commit 69ddecc329
2 changed files with 15 additions and 9 deletions

View File

@ -415,8 +415,7 @@ public class ActivityLogic {
ActivityMission value = item.getValue(); ActivityMission value = item.getValue();
if (value.getOpenType() == 0) { if (value.getOpenType() == 0) {
value.setOpenType(1); value.setOpenType(1);
} } }
}
} }
} }
@ -1147,13 +1146,14 @@ public class ActivityLogic {
MessageUtil.sendMessage(session,1,messageType.getNumber(),null,true); MessageUtil.sendMessage(session,1,messageType.getNumber(),null,true);
} }
public boolean getActivityStatusByType(User user,int type){ public Object[] getActivityStatusByType(User user,int type){
List<SGlobalActivity> activities = SGlobalActivity.sGlobalActivityMapByType.get(type); List<SGlobalActivity> activities = SGlobalActivity.sGlobalActivityMapByType.get(type);
if(activities.isEmpty()){ if(activities.isEmpty()){
return false; return null;
}else{ }else{
Object[] objects = activities.stream().filter(n -> getActivityOpenState(user, n.getId()) == ActivityType.OPEN_STATE).toArray();
return objects.length>0; Object[] objects = activities.stream().filter(n -> user.getActivityManager().getActivityMissionMap().keySet().contains(n.getId())).toArray();
return objects;
} }
} }
public void getNextActivityId(ISession session, int activityId, MessageTypeProto.MessageType messageType) throws Exception { public void getNextActivityId(ISession session, int activityId, MessageTypeProto.MessageType messageType) throws Exception {

View File

@ -191,11 +191,17 @@ public class HeroLogic{
} }
if(sLotterySetting.getLotteryType()==3){ if(sLotterySetting.getLotteryType()==3){
//活动抽卡校验 //活动抽卡校验
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(sLotterySetting.getActivityId()); Object[] activityStatusByType = ActivityLogic.getInstance().getActivityStatusByType(user, sLotterySetting.getActivityId());
long endTimeLong = ToolsUtil.getEndTimeLong(sGlobalActivity.getStartTimeLong(), sGlobalActivity.getEndTimeLong(), sGlobalActivity.getTime(), user.getPlayerInfoManager().getCreateTime(), sGlobalActivity.getGapTime()); if(activityStatusByType.length!=1){
if(!ActivityLogic.getInstance().getActivityStatusByType(user,sLotterySetting.getActivityId())|| TimeUtils.now()>endTimeLong){
throw new ErrorCodeException(ErrorCode.ACTIVITY_NOT_OPEN); 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);
}
}
} }
//筛选卡池 //筛选卡池
int pooId =0; int pooId =0;