|
|
@ -84,7 +84,7 @@ public class LevelUpService implements ILevelUpService{ |
|
|
|
levelUpDao.insertSelective(levelUp); |
|
|
|
//存入redis
|
|
|
|
String key = Constant.Redis.COMPETE_LEVEL + levelUpDto.getCompeteTimeId() + "_" + levelUpDto.getCompeteCode(); |
|
|
|
redisUtil.zsSet(key, levelUser, 0); |
|
|
|
redisUtil.zsSet(key, levelUser, 0,3600 * 24 * 300); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
@ -121,7 +121,7 @@ public class LevelUpService implements ILevelUpService{ |
|
|
|
updateLevelUpScore(autoLevelUpDto.getCompeteCode(), index.get(), Objects.requireNonNull(type.getScore()).intValue(), levelUser.getId()); |
|
|
|
//如果是符合晋级条件,添加新的晋级信息
|
|
|
|
if(index.get() <= finalLevelRule.getLevelCondition()){ |
|
|
|
insertLevelUp(autoLevelUpDto.getCompeteTimeId(), finalLevelRule.getCompeteCodeLevelUp(), levelUser.getId(), (byte) 0); |
|
|
|
insertLevelUp(autoLevelUpDto.getCompeteTimeId(), finalLevelRule.getCompeteCodeLevelUp(), levelUser, (byte) 0); |
|
|
|
} |
|
|
|
}); |
|
|
|
break; |
|
|
@ -136,7 +136,7 @@ public class LevelUpService implements ILevelUpService{ |
|
|
|
updateLevelUpScore(autoLevelUpDto.getCompeteCode(), index.get(), Objects.requireNonNull(type.getScore()).intValue(), levelUser.getId()); |
|
|
|
//如果是符合晋级条件,添加新的晋级信息
|
|
|
|
if(index.get() <= finalLevelRule.getLevelCondition() || score.get() == Objects.requireNonNull(type.getScore()).intValue()){ |
|
|
|
insertLevelUp(autoLevelUpDto.getCompeteTimeId(), finalLevelRule.getCompeteCodeLevelUp(), levelUser.getId(), (byte) 0); |
|
|
|
insertLevelUp(autoLevelUpDto.getCompeteTimeId(), finalLevelRule.getCompeteCodeLevelUp(), levelUser, (byte) 0); |
|
|
|
} |
|
|
|
score.set(Objects.requireNonNull(type.getScore()).intValue()); |
|
|
|
}); |
|
|
@ -151,7 +151,7 @@ public class LevelUpService implements ILevelUpService{ |
|
|
|
updateLevelUpScore(autoLevelUpDto.getCompeteCode(), index.get(), Objects.requireNonNull(type.getScore()).intValue(), levelUser.getId()); |
|
|
|
//如果是符合晋级条件,添加新的晋级信息
|
|
|
|
if(Objects.requireNonNull(type.getScore()).intValue() >= finalLevelRule.getLevelCondition()){ |
|
|
|
insertLevelUp(autoLevelUpDto.getCompeteTimeId(), finalLevelRule.getCompeteCodeLevelUp(), levelUser.getId(), (byte) 0); |
|
|
|
insertLevelUp(autoLevelUpDto.getCompeteTimeId(), finalLevelRule.getCompeteCodeLevelUp(), levelUser, (byte) 0); |
|
|
|
} |
|
|
|
}); |
|
|
|
break; |
|
|
@ -168,10 +168,10 @@ public class LevelUpService implements ILevelUpService{ |
|
|
|
/** |
|
|
|
* 将晋级信息添加进数据库,存入redis |
|
|
|
*/ |
|
|
|
private void insertLevelUp(Long competeTimeId, String competeCode, Long levelUser,byte levelUpType) { |
|
|
|
private void insertLevelUp(Long competeTimeId, String competeCode, LevelUser levelUser,byte levelUpType) { |
|
|
|
LevelUp levelUp = new LevelUp(); |
|
|
|
levelUp.setId(snowflake.nextId()); |
|
|
|
levelUp.setLevelUserId(levelUser); |
|
|
|
levelUp.setLevelUserId(levelUser.getId()); |
|
|
|
levelUp.setCompeteCode(competeCode); |
|
|
|
levelUp.setCompeteTimeId(competeTimeId); |
|
|
|
levelUp.setScore(0); |
|
|
@ -180,7 +180,7 @@ public class LevelUpService implements ILevelUpService{ |
|
|
|
levelUpDao.insertSelective(levelUp); |
|
|
|
//存入redis
|
|
|
|
String keyNew = Constant.Redis.COMPETE_LEVEL + competeTimeId + "_" + competeCode; |
|
|
|
redisUtil.zsSet(keyNew, levelUp, 0); |
|
|
|
redisUtil.zsSet(keyNew, levelUser, 0,3600 * 24 * 300); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
@ -201,11 +201,10 @@ public class LevelUpService implements ILevelUpService{ |
|
|
|
|
|
|
|
/** |
|
|
|
* 手动晋级 |
|
|
|
* @param params 比赛信息和晋级的选手信息 |
|
|
|
* @param manualLevelUp 比赛信息和晋级的选手信息 |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
public void manualLevelUpPlayer(QueryDto<LevelDto.ManualLevelUpDto> params) { |
|
|
|
LevelDto.ManualLevelUpDto manualLevelUp = params.getParam(); |
|
|
|
public void manualLevelUpPlayer(LevelDto.ManualLevelUpDto manualLevelUp) { |
|
|
|
//查找晋级规则,
|
|
|
|
LevelRule levelRule = new LevelRule(); |
|
|
|
LevelRuleExample levelRuleExample = new LevelRuleExample(); |
|
|
@ -229,7 +228,7 @@ public class LevelUpService implements ILevelUpService{ |
|
|
|
if(CollectionUtil.isNotEmpty(manualLevelUp.getManualLevelUpPlayers())){ |
|
|
|
manualLevelUp.getManualLevelUpPlayers().forEach(player -> { |
|
|
|
if(player.getPlayerId().equals(levelUser.getPlayerId())){ |
|
|
|
insertLevelUp(manualLevelUp.getCompeteTimeId(), finalLevelRule.getCompeteCodeLevelUp(), levelUser.getId(), (byte) 1); |
|
|
|
insertLevelUp(manualLevelUp.getCompeteTimeId(), finalLevelRule.getCompeteCodeLevelUp(), levelUser, (byte) 1); |
|
|
|
} |
|
|
|
}); |
|
|
|
} |
|
|
@ -238,12 +237,11 @@ public class LevelUpService implements ILevelUpService{ |
|
|
|
|
|
|
|
/** |
|
|
|
* 查询比赛内晋级的选手信息 |
|
|
|
* @param params 比赛id和分页信息 |
|
|
|
* @param levelUserInfo 比赛id和分页信息 |
|
|
|
* @return 返回查到的比赛下所有晋级的选手的信息 |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
public PageInfo<LevelVo.QueryLevelUserInfo> queryLevelUserInfo(LevelDto.QueryLevelUserInfo params) { |
|
|
|
LevelDto.QueryLevelUserInfo levelUserInfo = params.getParam(); |
|
|
|
public PageInfo<LevelVo.QueryLevelUserInfo> queryLevelUserInfo(LevelDto.QueryLevelUserInfo levelUserInfo) { |
|
|
|
if(levelUserInfo.getPage() != -1){ |
|
|
|
PageHelper.startPage(levelUserInfo.getPage(), levelUserInfo.getPageSize()); |
|
|
|
} |
|
|
|