循环活动bug处理
parent
7c421103af
commit
99acbb8dad
|
|
@ -1594,13 +1594,9 @@ public class ActivityLogic implements IEventHandler{
|
||||||
|
|
||||||
public static long[] getStartAndEndTime(User user,int activityId){
|
public static long[] getStartAndEndTime(User user,int activityId){
|
||||||
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(activityId);
|
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(activityId);
|
||||||
long createUserTime = 0;
|
|
||||||
if (sGlobalActivity.getTime() == ActivityType.OPEN_TYPE_ROLE) {
|
|
||||||
createUserTime = user.getPlayerInfoManager().getCreateTime();
|
|
||||||
}
|
|
||||||
long[] result = new long[2];
|
long[] result = new long[2];
|
||||||
result[0] = ToolsUtil.getTimeLong(sGlobalActivity.getStartTimeLong(),sGlobalActivity.getEndTimeLong(),sGlobalActivity.getTime(),createUserTime, 1, 0);
|
result[0] = ToolsUtil.getTimeLong(sGlobalActivity.getStartTimeLong(),sGlobalActivity.getEndTimeLong(),sGlobalActivity.getTime(),user.getPlayerInfoManager().getCreateTime(), 1, sGlobalActivity.getCycleMinute());
|
||||||
result[1] = ToolsUtil.getTimeLong(sGlobalActivity.getStartTimeLong(),sGlobalActivity.getEndTimeLong(),sGlobalActivity.getTime(),createUserTime, 2, 0);
|
result[1] = ToolsUtil.getTimeLong(sGlobalActivity.getStartTimeLong(),sGlobalActivity.getEndTimeLong(),sGlobalActivity.getTime(),user.getPlayerInfoManager().getCreateTime(), 2, sGlobalActivity.getCycleMinute());
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,6 @@ import com.ljsd.jieling.network.session.ISession;
|
||||||
import config.SActivityRankingReward;
|
import config.SActivityRankingReward;
|
||||||
import config.SActivityRewardConfig;
|
import config.SActivityRewardConfig;
|
||||||
import config.SErrorCodeEerverConfig;
|
import config.SErrorCodeEerverConfig;
|
||||||
import config.SGlobalActivity;
|
|
||||||
import org.springframework.data.redis.core.ZSetOperations;
|
import org.springframework.data.redis.core.ZSetOperations;
|
||||||
import util.StringUtil;
|
import util.StringUtil;
|
||||||
import util.TimeUtils;
|
import util.TimeUtils;
|
||||||
|
|
@ -98,9 +97,8 @@ public class PowerRiceActivity extends AbstractActivity{
|
||||||
globalSystemControl.addActivityPreEnd(id,TimeUtils.now());
|
globalSystemControl.addActivityPreEnd(id,TimeUtils.now());
|
||||||
GlobalSystemControl.save(globalSystemControl);
|
GlobalSystemControl.save(globalSystemControl);
|
||||||
}
|
}
|
||||||
public List<SActivityRankingReward> getRankReward() throws Exception{
|
public List<SActivityRankingReward> getRankReward() {
|
||||||
List<SActivityRankingReward> sActivityRankingReward = SActivityRankingReward.getsActivityRankingRewardMapByActivityId(id);
|
return SActivityRankingReward.getsActivityRankingRewardMapByActivityId(id);
|
||||||
return sActivityRankingReward;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -108,15 +106,15 @@ public class PowerRiceActivity extends AbstractActivity{
|
||||||
* @param user
|
* @param user
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public int getStage(User user){
|
// public int getStage(User user){
|
||||||
long []time = ActivityLogic.getStartAndEndTime(user,id);
|
// long []time = ActivityLogic.getStartAndEndTime(user,id);
|
||||||
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
// SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(id);
|
||||||
long gapTime = time[1] +sGlobalActivity.getGapTime()*TimeUtils.ONE_DAY;
|
// long gapTime = time[1] +sGlobalActivity.getGapTime()*TimeUtils.ONE_DAY;
|
||||||
if(TimeUtils.now()>=time[0]&&TimeUtils.now()<=time[1]){
|
// if(TimeUtils.now()>=time[0]&&TimeUtils.now()<=time[1]){
|
||||||
return 0;
|
// return 0;
|
||||||
}else if(TimeUtils.now()>=time[1]&&TimeUtils.now()<=gapTime){
|
// }else if(TimeUtils.now()>=time[1]&&TimeUtils.now()<=gapTime){
|
||||||
return 1;
|
// return 1;
|
||||||
}
|
// }
|
||||||
return -1;
|
// return -1;
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@ import com.ljsd.jieling.logic.activity.event.UserMainTeamForceEvent;
|
||||||
import com.ljsd.jieling.logic.dao.cross.CSPlayer;
|
import com.ljsd.jieling.logic.dao.cross.CSPlayer;
|
||||||
import com.ljsd.jieling.logic.dao.root.User;
|
import com.ljsd.jieling.logic.dao.root.User;
|
||||||
import com.ljsd.jieling.logic.rank.RankEnum;
|
import com.ljsd.jieling.logic.rank.RankEnum;
|
||||||
|
import com.ljsd.jieling.util.ToolsUtil;
|
||||||
import config.SActivityRankingReward;
|
import config.SActivityRankingReward;
|
||||||
import config.SGlobalActivity;
|
import config.SGlobalActivity;
|
||||||
import org.springframework.data.redis.core.ZSetOperations;
|
import org.springframework.data.redis.core.ZSetOperations;
|
||||||
|
|
@ -59,13 +60,14 @@ public class PowerRiceRank extends AbstractRank implements IEventHandler {
|
||||||
}
|
}
|
||||||
//判斷是否在展示期
|
//判斷是否在展示期
|
||||||
Map<Integer, SGlobalActivity> sGlobalActivityMap = SGlobalActivity.getsGlobalActivityMap();
|
Map<Integer, SGlobalActivity> sGlobalActivityMap = SGlobalActivity.getsGlobalActivityMap();
|
||||||
SGlobalActivity sGlobalActivity = sGlobalActivityMap.get(activityId);
|
SGlobalActivity activity = sGlobalActivityMap.get(activityId);
|
||||||
if (sGlobalActivity == null) {
|
if (activity == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
long[] startAndEndTime = ActivityLogic.getStartAndEndTime(null, activityId);
|
long start = ToolsUtil.getTimeLong(activity.getStartTimeLong(),activity.getEndTimeLong(),activity.getTime(),0,1, activity.getCycleMinute());
|
||||||
|
long end = ToolsUtil.getTimeLong(activity.getStartTimeLong(),activity.getEndTimeLong(),activity.getTime(),0,2, activity.getCycleMinute());
|
||||||
long now = TimeUtils.now();
|
long now = TimeUtils.now();
|
||||||
if (now > startAndEndTime[0] && now < startAndEndTime[1]) {
|
if (now > start && now < end) {
|
||||||
if (event instanceof UserMainTeamForceEvent) {
|
if (event instanceof UserMainTeamForceEvent) {
|
||||||
int uid = ((UserMainTeamForceEvent) event).getUid();
|
int uid = ((UserMainTeamForceEvent) event).getUid();
|
||||||
CSPlayer player = CrossServiceLogic.getPlayerByRedis(uid);
|
CSPlayer player = CrossServiceLogic.getPlayerByRedis(uid);
|
||||||
|
|
|
||||||
|
|
@ -17,6 +17,7 @@ public class TimeLimitWelfareBag extends AbstractWelfareBag {
|
||||||
int anInt = value[1];
|
int anInt = value[1];
|
||||||
if(ActivityLogic.checkActivityOpen(user,anInt)){
|
if(ActivityLogic.checkActivityOpen(user,anInt)){
|
||||||
setOpen(true);
|
setOpen(true);
|
||||||
|
|
||||||
long[] result = ActivityLogic.getStartAndEndTime(user, anInt);
|
long[] result = ActivityLogic.getStartAndEndTime(user, anInt);
|
||||||
setStartTime(result[0]);
|
setStartTime(result[0]);
|
||||||
setEndTime(result[1]);
|
setEndTime(result[1]);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue