vip刷新逻辑修改
parent
ffea4a169f
commit
3b288bce05
|
@ -343,23 +343,16 @@ public class PlayerLogic {
|
||||||
//如果这个权限是活动 且永久了 那么需要修复
|
//如果这个权限是活动 且永久了 那么需要修复
|
||||||
SPrivilegeTypeConfig config = SPrivilegeTypeConfig.getsPrivilegeTypeConfigMap().get(key);
|
SPrivilegeTypeConfig config = SPrivilegeTypeConfig.getsPrivilegeTypeConfigMap().get(key);
|
||||||
if (config == null){
|
if (config == null){
|
||||||
LOGGER.info("特权刷新删除日志1:{}-{}-{}",user.getId(), key, info.getEffectTime());
|
LOGGER.info("特权刷新,特权id不存在,uid:{},vipid:{}",user.getId(), key);
|
||||||
removePrivileges.add(key);
|
removePrivileges.add(key);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
if(info.getEffectTime() != 0 && info.getEffectTime() <= nowInt){
|
||||||
if(info.getEffectTime() == 0){
|
|
||||||
int unlockType = config.getUnlockType();
|
|
||||||
if(unlockType==5 || (unlockType==4 && config.getContinueTime().length>0)){
|
|
||||||
playerInfoManager.addVipByTime(key, nowInt);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if(info.getEffectTime() <= nowInt){
|
|
||||||
if(config.getPrivilegeType() == VipPrivilegeType.ADVENTURE_BASE_REWARD){
|
if(config.getPrivilegeType() == VipPrivilegeType.ADVENTURE_BASE_REWARD){
|
||||||
CombatLogic.getInstance().getNewAdventureReward(user,true, info.getEffectTime());
|
CombatLogic.getInstance().getNewAdventureReward(user,true, info.getEffectTime());
|
||||||
}
|
}
|
||||||
removePrivileges.add(key);
|
removePrivileges.add(key);
|
||||||
LOGGER.info("特权刷新删除日志2:{}-{}-{}",user.getId(), key, info.getEffectTime());
|
LOGGER.info("特权刷新,特权到期,uid:{},id:{},过期时间:{}",user.getId(), key, info.getEffectTime());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
vipFlush(user, removePrivileges);
|
vipFlush(user, removePrivileges);
|
||||||
|
@ -390,6 +383,7 @@ public class PlayerLogic {
|
||||||
LOGGER.error("vip刷新,vipinfo为空,uid:{}",user.getId());
|
LOGGER.error("vip刷新,vipinfo为空,uid:{}",user.getId());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
int nowInt = TimeUtils.nowInt();
|
||||||
for (Map.Entry<Integer, VipInfo> entry : vipInfo.entrySet()) {
|
for (Map.Entry<Integer, VipInfo> entry : vipInfo.entrySet()) {
|
||||||
Integer id = entry.getKey();
|
Integer id = entry.getKey();
|
||||||
if (removeIds.contains(id)){
|
if (removeIds.contains(id)){
|
||||||
|
@ -397,10 +391,15 @@ public class PlayerLogic {
|
||||||
}
|
}
|
||||||
VipInfo info = entry.getValue();
|
VipInfo info = entry.getValue();
|
||||||
SPrivilegeTypeConfig sPrivilegeTypeConfig = SPrivilegeTypeConfig.getsPrivilegeTypeConfigMap().get(id);
|
SPrivilegeTypeConfig sPrivilegeTypeConfig = SPrivilegeTypeConfig.getsPrivilegeTypeConfigMap().get(id);
|
||||||
if (sPrivilegeTypeConfig == null) {
|
int unlockType = sPrivilegeTypeConfig.getUnlockType();
|
||||||
LOGGER.error("vip新增,vipid查询表不存在,已删除,uid:{},vipid:{}",user.getId(),id);
|
if(info.getEffectTime() == 0){
|
||||||
removeIds.add(id);
|
if(unlockType==5 || (unlockType==4 && sPrivilegeTypeConfig.getContinueTime().length>0)){
|
||||||
continue;
|
VipInfo refreshVipInfo = new VipInfo();
|
||||||
|
refreshVipInfo.setCount(0);
|
||||||
|
refreshVipInfo.setEffectTime(nowInt);
|
||||||
|
vipInfo.put(id,refreshVipInfo);
|
||||||
|
LOGGER.info("vip刷新,特殊vip刷新,uid:{},vipid:{},time:{}",user.getId(), id, nowInt);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
int refreshType = sPrivilegeTypeConfig.getRefreshType()[0];
|
int refreshType = sPrivilegeTypeConfig.getRefreshType()[0];
|
||||||
if (refreshType == 1 && info.getCount() > 0) {
|
if (refreshType == 1 && info.getCount() > 0) {
|
||||||
|
@ -408,14 +407,13 @@ public class PlayerLogic {
|
||||||
refreshVipInfo.setCount(0);
|
refreshVipInfo.setCount(0);
|
||||||
refreshVipInfo.setEffectTime(info.getEffectTime());
|
refreshVipInfo.setEffectTime(info.getEffectTime());
|
||||||
vipInfo.put(id,refreshVipInfo);
|
vipInfo.put(id,refreshVipInfo);
|
||||||
|
LOGGER.info("vip刷新,日常vip刷新,uid:{},vipid:{},time:{}",user.getId(), id, nowInt);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
LOGGER.error("vip刷新,删除前的vip数量,uid:{},vipnum:{},removeIds:{}",user.getId(),vipInfo.size(),removeIds);
|
|
||||||
// 删除vip
|
// 删除vip
|
||||||
for (Integer remove : removeIds) {
|
for (Integer remove : removeIds) {
|
||||||
vipInfo.remove(remove);
|
vipInfo.remove(remove);
|
||||||
}
|
}
|
||||||
LOGGER.error("vip刷新,删除后的vip数量,uid:{},vipnum:{}",user.getId(),vipInfo.size());
|
|
||||||
playerManager.setVipInfo(vipInfo);
|
playerManager.setVipInfo(vipInfo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue