新礼包
parent
2f03e2c24e
commit
0b59e617c8
|
@ -66,7 +66,8 @@ public class BuyGoodsNewLogic {
|
||||||
/**
|
/**
|
||||||
* 登录刷新礼包
|
* 登录刷新礼包
|
||||||
*/
|
*/
|
||||||
public static void refreshWelfareState(User user){
|
public static boolean refreshWelfareState(User user){
|
||||||
|
boolean needChange = false;
|
||||||
List<AbstractWelfareBag> pAddList = new ArrayList<>();
|
List<AbstractWelfareBag> pAddList = new ArrayList<>();
|
||||||
List<Integer> garbageList = new ArrayList<>();
|
List<Integer> garbageList = new ArrayList<>();
|
||||||
NewRechargeInfo info = user.getPlayerInfoManager().getNewRechargeInfo();
|
NewRechargeInfo info = user.getPlayerInfoManager().getNewRechargeInfo();
|
||||||
|
@ -76,17 +77,27 @@ public class BuyGoodsNewLogic {
|
||||||
Map<Integer, ReceiveWelfareBag> receiveWelfareBagMap = info.getReceiveMap();
|
Map<Integer, ReceiveWelfareBag> receiveWelfareBagMap = info.getReceiveMap();
|
||||||
Map<Integer, PushWelfareBag> pushWelfareBagMap = info.getPushMap();
|
Map<Integer, PushWelfareBag> pushWelfareBagMap = info.getPushMap();
|
||||||
if(perpetualWelfareBagMap.containsKey(entry.getKey())){
|
if(perpetualWelfareBagMap.containsKey(entry.getKey())){
|
||||||
refreshUnitWF(perpetualWelfareBagMap.get(entry.getKey()),garbageList,user);
|
if(refreshUnitWF(perpetualWelfareBagMap.get(entry.getKey()),garbageList,user) && !needChange){
|
||||||
|
needChange = true;
|
||||||
|
}
|
||||||
}else if(timeLimitWelfareBagMap.containsKey(entry.getKey())){
|
}else if(timeLimitWelfareBagMap.containsKey(entry.getKey())){
|
||||||
refreshUnitWF(timeLimitWelfareBagMap.get(entry.getKey()),garbageList,user);
|
if(refreshUnitWF(timeLimitWelfareBagMap.get(entry.getKey()),garbageList,user) && !needChange){
|
||||||
|
needChange = true;
|
||||||
|
}
|
||||||
}else if(receiveWelfareBagMap.containsKey(entry.getKey())){
|
}else if(receiveWelfareBagMap.containsKey(entry.getKey())){
|
||||||
refreshUnitWF(receiveWelfareBagMap.get(entry.getKey()),garbageList,user);
|
if(refreshUnitWF(receiveWelfareBagMap.get(entry.getKey()),garbageList,user) && !needChange){
|
||||||
|
needChange = true;
|
||||||
|
}
|
||||||
}else if(pushWelfareBagMap.containsKey(entry.getKey())){
|
}else if(pushWelfareBagMap.containsKey(entry.getKey())){
|
||||||
refreshUnitWF(pushWelfareBagMap.get(entry.getKey()),garbageList,user);
|
if(refreshUnitWF(pushWelfareBagMap.get(entry.getKey()),garbageList,user) && !needChange){
|
||||||
|
needChange = true;
|
||||||
|
}
|
||||||
}else{
|
}else{
|
||||||
AbstractWelfareBag bag = initUnitWF(user,entry.getValue());
|
AbstractWelfareBag bag = initUnitWF(user,entry.getValue());
|
||||||
pAddList.add(bag);
|
pAddList.add(bag);
|
||||||
refreshUnitWF(bag,garbageList,user);
|
if(refreshUnitWF(bag,garbageList,user) && !needChange){
|
||||||
|
needChange = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//添加新增礼包
|
//添加新增礼包
|
||||||
|
@ -109,6 +120,7 @@ public class BuyGoodsNewLogic {
|
||||||
info.getTimeLimitMap().remove(i);
|
info.getTimeLimitMap().remove(i);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return needChange;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -407,10 +419,10 @@ public class BuyGoodsNewLogic {
|
||||||
/**
|
/**
|
||||||
* 刷新单个礼包状态
|
* 刷新单个礼包状态
|
||||||
*/
|
*/
|
||||||
public static void refreshUnitWF(AbstractWelfareBag bag,List<Integer> garbageList,User user){
|
public static boolean refreshUnitWF(AbstractWelfareBag bag,List<Integer> garbageList,User user){
|
||||||
if(bag.isProhibited()){
|
if(bag.isProhibited() && !garbageList.contains(bag.getModId())){
|
||||||
garbageList.add(bag.getModId());
|
garbageList.add(bag.getModId());
|
||||||
return;
|
return false;
|
||||||
}
|
}
|
||||||
if(bag.isOpen()){
|
if(bag.isOpen()){
|
||||||
if(bag.getEndTime() == 0){
|
if(bag.getEndTime() == 0){
|
||||||
|
@ -440,8 +452,10 @@ public class BuyGoodsNewLogic {
|
||||||
}
|
}
|
||||||
if(open){
|
if(open){
|
||||||
bag.setOpen(true);
|
bag.setOpen(true);
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -507,10 +521,9 @@ public class BuyGoodsNewLogic {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean getGoodsBagInfo(int uid,List<CommonProto.GiftGoodsInfo> giftGoodsInfoList,boolean needClear) throws Exception {
|
public static boolean getGoodsBagInfo(int uid,List<CommonProto.GiftGoodsInfo> giftGoodsInfoList) throws Exception {
|
||||||
boolean needChange = false;
|
|
||||||
User user = UserManager.getUser(uid);
|
User user = UserManager.getUser(uid);
|
||||||
refreshWelfareState(user);
|
boolean needChange = refreshWelfareState(user);
|
||||||
NewRechargeInfo rechargeInfo = user.getPlayerInfoManager().getNewRechargeInfo();
|
NewRechargeInfo rechargeInfo = user.getPlayerInfoManager().getNewRechargeInfo();
|
||||||
for(AbstractWelfareBag bag : rechargeInfo.getPerpetualMap().values()){
|
for(AbstractWelfareBag bag : rechargeInfo.getPerpetualMap().values()){
|
||||||
if(bag.isOpen()){
|
if(bag.isOpen()){
|
||||||
|
|
Loading…
Reference in New Issue