十绝阵兼容
parent
686f22d60d
commit
2fd6b82d04
|
@ -205,7 +205,11 @@ public class RedisKey {
|
||||||
// 十绝阵挑战人数
|
// 十绝阵挑战人数
|
||||||
public static final String DEATH_PATH_TOTAL_CHALLENGE_COUNT = "DEATH_PATH_TOTAL_CHALLENGE_COUNT";
|
public static final String DEATH_PATH_TOTAL_CHALLENGE_COUNT = "DEATH_PATH_TOTAL_CHALLENGE_COUNT";
|
||||||
public static final String DEATH_PATH_DELETE = "DEATH_PATH_DELETE";
|
public static final String DEATH_PATH_DELETE = "DEATH_PATH_DELETE";
|
||||||
|
// 跨服删除锁
|
||||||
|
public static final String DEATH_PATH_DELETE_CROSS = "DEATH_PATH_DELETE_CROSS";
|
||||||
|
// 兼容,旧数据删除
|
||||||
|
public static final String DEATH_PATH_DELETE_ONE = "DEATH_PATH_DELETE_ONE";
|
||||||
|
public static final String DEATH_PATH_DELETE_CROSS_ONE = "DEATH_PATH_DELETE_CROSS_ONE";
|
||||||
|
|
||||||
//问卷调查
|
//问卷调查
|
||||||
public static final String QUESTION_FROMBACK = "QUESTION_FROMBACK";
|
public static final String QUESTION_FROMBACK = "QUESTION_FROMBACK";
|
||||||
|
|
|
@ -187,7 +187,7 @@ public class CrossDeathPathLogic {
|
||||||
* @param serverId
|
* @param serverId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public Map<Integer,Integer> crossDeathPathReward(int groupId,int serverId) throws IOException {
|
public Map<Integer,Integer> crossDeathPathReward(int groupId,int serverId) {
|
||||||
if(TimeUtils.getHourOfDay()!=0){
|
if(TimeUtils.getHourOfDay()!=0){
|
||||||
return new HashMap<>(1);
|
return new HashMap<>(1);
|
||||||
}
|
}
|
||||||
|
@ -206,10 +206,22 @@ public class CrossDeathPathLogic {
|
||||||
}
|
}
|
||||||
RedisUtil.getInstence().hdel(RedisKey.DEATH_PATH_EVERY_OVER_HASH,String.valueOf(serverId));
|
RedisUtil.getInstence().hdel(RedisKey.DEATH_PATH_EVERY_OVER_HASH,String.valueOf(serverId));
|
||||||
|
|
||||||
// 删除rediskey
|
boolean lock = RedisUtil.getInstence().lock(RedisKey.DEATH_PATH_DELETE_CROSS, TimeUtils.ONE_MINUTE * 2);
|
||||||
String pattern = "DEATH_PATH.*."+groupId+":.*";
|
// 拿到锁的操作删除
|
||||||
RedisUtil.getInstence().delVague(RedisKey.DEATH_PATH_DELETE,pattern);
|
if (lock){
|
||||||
|
// 删除rediskey
|
||||||
|
String pattern = "DEATH_PATH.*."+groupId+":.*";
|
||||||
|
RedisUtil.getInstence().delVague(RedisKey.DEATH_PATH_DELETE,pattern);
|
||||||
|
|
||||||
|
// 旧数据兼容,只执行一次
|
||||||
|
String one = (String) RedisUtil.getInstence().get(groupId+RedisKey.DEATH_PATH_DELETE_CROSS_ONE);
|
||||||
|
if (one == null){
|
||||||
|
Set<String> dimKey = RedisUtil.getInstence().getDimKey("DEATH_PATH*"+groupId+":*", -1);
|
||||||
|
String[] keys = dimKey.toArray(new String[0]);
|
||||||
|
RedisUtil.getInstence().del(keys);
|
||||||
|
RedisUtil.getInstence().set(groupId+RedisKey.DEATH_PATH_DELETE_CROSS_ONE,"1");
|
||||||
|
}
|
||||||
|
}
|
||||||
return hashMap;
|
return hashMap;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -648,6 +648,15 @@ public class DeathPathLogic {
|
||||||
// 删除rediskey
|
// 删除rediskey
|
||||||
String pattern = serverId+":DEATH_PATH.*";
|
String pattern = serverId+":DEATH_PATH.*";
|
||||||
RedisUtil.getInstence().delVague(RedisKey.DEATH_PATH_DELETE,pattern);
|
RedisUtil.getInstence().delVague(RedisKey.DEATH_PATH_DELETE,pattern);
|
||||||
|
|
||||||
|
// 旧数据兼容,只执行一次
|
||||||
|
String one = (String) RedisUtil.getInstence().get(serverId + RedisKey.DEATH_PATH_DELETE_ONE);
|
||||||
|
if (one == null){
|
||||||
|
Set<String> dimKey = RedisUtil.getInstence().getDimKey(serverId + ":DEATH_PATH*", -1);
|
||||||
|
String[] keys = dimKey.toArray(new String[0]);
|
||||||
|
RedisUtil.getInstence().del(keys);
|
||||||
|
RedisUtil.getInstence().set(serverId + RedisKey.DEATH_PATH_DELETE_ONE,"1");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -101,7 +101,7 @@ public class MinuteTask extends Thread {
|
||||||
LOGGER.error("Exception::=>{}",e.toString());
|
LOGGER.error("Exception::=>{}",e.toString());
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
if (TimeUtils.getHourOfDay() == 21 && TimeUtils.getMiunte() == 0){
|
if (TimeUtils.getHourOfDay() == 0 && TimeUtils.getMiunte() == 0){
|
||||||
// 竞技场,每日九点刷新
|
// 竞技场,每日九点刷新
|
||||||
ArenaLogic.getInstance().sendReward(GlobalsDef.ARENA_DAILY_REWARD);
|
ArenaLogic.getInstance().sendReward(GlobalsDef.ARENA_DAILY_REWARD);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue