活动开启bug

back_recharge
zhangshanxue 2019-08-10 21:17:43 +08:00
parent 01c7ac7c8d
commit c20d6e97c5
2 changed files with 9 additions and 4 deletions

View File

@ -44,6 +44,11 @@ public abstract class AbstractActivity implements IActivity, IEventHandler {
} }
/**
*
* @param user
* @throws Exception
*/
@Override @Override
public void onResume(User user) throws Exception { public void onResume(User user) throws Exception {
ActivityManager activityManager = user.getActivityManager(); ActivityManager activityManager = user.getActivityManager();

View File

@ -273,7 +273,7 @@ public class ActivityLogic {
public void updateActivityMissionProgress(User user, int activityType, int count) { public void updateActivityMissionProgress(User user, int activityType, int count) {
for (Integer id : getOpenActivityIdsByType(user, activityType)) { for (Integer id : getOpenActivityIdsByType(user, activityType,true)) {
AbstractActivity abstractActivity = ActivityTypeEnum.getActicityType(id); AbstractActivity abstractActivity = ActivityTypeEnum.getActicityType(id);
if (abstractActivity == null) { if (abstractActivity == null) {
continue; continue;
@ -284,7 +284,7 @@ public class ActivityLogic {
} }
public void resumeActivity(User user, int activityType) throws Exception { public void resumeActivity(User user, int activityType) throws Exception {
for (Integer id : getOpenActivityIdsByType(user, activityType)) { for (Integer id : getOpenActivityIdsByType(user, activityType,false)) {
AbstractActivity abstractActivity = ActivityTypeEnum.getActicityType(id); AbstractActivity abstractActivity = ActivityTypeEnum.getActicityType(id);
if (abstractActivity == null) { if (abstractActivity == null) {
continue; continue;
@ -293,13 +293,13 @@ public class ActivityLogic {
} }
} }
private Set<Integer> getOpenActivityIdsByType(User user, int activityType) { private Set<Integer> getOpenActivityIdsByType(User user, int activityType,boolean withState) {
Set<Integer> ids = new HashSet<>(); Set<Integer> ids = new HashSet<>();
ActivityManager activityManager = user.getActivityManager(); ActivityManager activityManager = user.getActivityManager();
Map<Integer, ActivityMission> activityMissionMap = activityManager.getActivityMissionMap(); Map<Integer, ActivityMission> activityMissionMap = activityManager.getActivityMissionMap();
for (Map.Entry<Integer, ActivityMission> item : activityMissionMap.entrySet()) { for (Map.Entry<Integer, ActivityMission> item : activityMissionMap.entrySet()) {
ActivityMission activityMission = item.getValue(); ActivityMission activityMission = item.getValue();
if (activityMission.getActivityState() != ActivityType.OPEN_STATE) { if (withState && activityMission.getActivityState() != ActivityType.OPEN_STATE) {
continue; continue;
} }
Integer activityId = item.getKey(); Integer activityId = item.getKey();