十绝阵兼容

back_recharge
duhui 2021-09-10 19:51:44 +08:00
parent 686f22d60d
commit 2fd6b82d04
4 changed files with 31 additions and 6 deletions

View File

@ -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_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";

View File

@ -187,7 +187,7 @@ public class CrossDeathPathLogic {
* @param serverId
* @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){
return new HashMap<>(1);
}
@ -206,10 +206,22 @@ public class CrossDeathPathLogic {
}
RedisUtil.getInstence().hdel(RedisKey.DEATH_PATH_EVERY_OVER_HASH,String.valueOf(serverId));
// 删除rediskey
String pattern = "DEATH_PATH.*."+groupId+":.*";
RedisUtil.getInstence().delVague(RedisKey.DEATH_PATH_DELETE,pattern);
boolean lock = RedisUtil.getInstence().lock(RedisKey.DEATH_PATH_DELETE_CROSS, TimeUtils.ONE_MINUTE * 2);
// 拿到锁的操作删除
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;
}

View File

@ -648,6 +648,15 @@ public class DeathPathLogic {
// 删除rediskey
String pattern = serverId+":DEATH_PATH.*";
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");
}
}
/**

View File

@ -101,7 +101,7 @@ public class MinuteTask extends Thread {
LOGGER.error("Exception::=>{}",e.toString());
}
try {
if (TimeUtils.getHourOfDay() == 21 && TimeUtils.getMiunte() == 0){
if (TimeUtils.getHourOfDay() == 0 && TimeUtils.getMiunte() == 0){
// 竞技场,每日九点刷新
ArenaLogic.getInstance().sendReward(GlobalsDef.ARENA_DAILY_REWARD);
}