返利error优化

back_recharge
duhui 2023-02-13 17:43:53 +08:00
parent 08042195cb
commit a1e2bffd8b
1 changed files with 39 additions and 30 deletions

View File

@ -54,24 +54,28 @@ public class GmActivityLogic implements IEventHandler {
return; return;
} }
AutoRechargeBackEvent rechargeBackEvent = (AutoRechargeBackEvent) event; AutoRechargeBackEvent rechargeBackEvent = (AutoRechargeBackEvent) event;
if (rechargeBackEvent.getGiftId() <= 0){ User user = UserManager.getUser(rechargeBackEvent.getUserId());
int giftId = rechargeBackEvent.getGiftId();
if (giftId <= 0){
LOGGER.info("返利活动信息,礼包id为0uid{}info:{}",user.getId(), rechargeBackEvent);
return; return;
} }
double price = 0; double price = 0;
String method = rechargeBackEvent.getRechargeMethod(); String method = rechargeBackEvent.getRechargeMethod();
if (method.equals(item_token)){ if (method.equals(item_token)){
price = rechargeBackEvent.getGiftId(); price = giftId;
}else { }else {
SRechargeCommodityNewConfig config = SRechargeCommodityNewConfig.getConfigById(rechargeBackEvent.getGiftId()); SRechargeCommodityNewConfig config = SRechargeCommodityNewConfig.getConfigById(giftId);
if (config != null){ if (config != null){
price = config.getPrice(); price = config.getPrice();
} }
} }
if (price <= 0){ if (price <= 0){
LOGGER.info("返利活动信息,金额为0uid{}info:{}",user.getId(), rechargeBackEvent);
return; return;
} }
User user = UserManager.getUser(rechargeBackEvent.getUserId());
// 自动返利 // 自动返利
zeroUpdateGmActivity(user); zeroUpdateGmActivity(user);
// 活动信息获取 // 活动信息获取
@ -81,33 +85,38 @@ public class GmActivityLogic implements IEventHandler {
int i = 1; int i = 1;
for (Map.Entry<String, ARBActivity> entry : arbActivityMap.entrySet()) { for (Map.Entry<String, ARBActivity> entry : arbActivityMap.entrySet()) {
LOGGER.info("返利活动信息,第{}次循环uid{}aid:{}",i,user.getId(),entry.getKey()); LOGGER.info("返利活动信息,第{}次循环uid{}aid:{}",i,user.getId(),entry.getKey());
ARBActivity arbActivity = entry.getValue(); try {
LOGGER.info("返利活动信息,第{}次循环uid{}aid:{}type{}",i,user.getId(),arbActivity.getId(),arbActivity.getType()); ARBActivity arbActivity = entry.getValue();
// 时间校验 LOGGER.info("返利活动信息,第{}次循环uid{}aid:{}type{}",i,user.getId(),arbActivity.getId(),arbActivity.getType());
long start = getStartTime(arbActivity); // 时间校验
LOGGER.info("返利活动信息,第{}次循环uid{}aid:{}start:{}",i,user.getId(),arbActivity.getId(),start); long start = getStartTime(arbActivity);
long end = getEndTime(arbActivity); LOGGER.info("返利活动信息,第{}次循环uid{}aid:{}start:{}",i,user.getId(),arbActivity.getId(),start);
LOGGER.info("返利活动信息,第{}次循环uid{}aid:{}end:{}",i,user.getId(),arbActivity.getId(),end); long end = getEndTime(arbActivity);
long now = TimeUtils.now(); LOGGER.info("返利活动信息,第{}次循环uid{}aid:{}end:{}",i,user.getId(),arbActivity.getId(),end);
LOGGER.info("返利活动信息,第{}次循环uid{}aid:{}type{}, now{}",i,user.getId(),arbActivity.getId(),arbActivity.getType(),now); long now = TimeUtils.now();
if (now >= start && now < end){ LOGGER.info("返利活动信息,第{}次循环uid{}aid:{}type{}, now{}",i,user.getId(),arbActivity.getId(),arbActivity.getType(),now);
// 获取全部活动信息 if (now >= start && now < end){
GmActivity gmActivity = manager.getActivityMap().getOrDefault(entry.getKey(), new GmActivity(arbActivity)); // 获取全部活动信息
switch (gmActivity.getType()){ GmActivity gmActivity = manager.getActivityMap().getOrDefault(entry.getKey(), new GmActivity(arbActivity));
case 1://单日累充 switch (gmActivity.getType()){
getRewardToSingleTotalRecharge(user, gmActivity, price); case 1://单日累充
break; getRewardToSingleTotalRecharge(user, gmActivity, price);
case 2://妖晶返利 break;
getRewardToMonsterCurrencyBack(user, gmActivity, price); case 2://妖晶返利
break; getRewardToMonsterCurrencyBack(user, gmActivity, price);
case 4://单笔充值 break;
getRewardToSingleRecharge(user, gmActivity, price); case 4://单笔充值
break; getRewardToSingleRecharge(user, gmActivity, price);
default://3、5、6多日累充永久大充开服首日累充 break;
getDefaultReward(user, gmActivity, price); default://3、5、6多日累充永久大充开服首日累充
break; getDefaultReward(user, gmActivity, price);
break;
}
manager.putActivityMap(gmActivity.getId(),gmActivity);
} }
manager.putActivityMap(gmActivity.getId(),gmActivity); }catch (Exception e){
LOGGER.error("返利活动异常活动id{}, 礼包信息:{},价值金额:{},报错信息:{}",entry.getKey(), rechargeBackEvent,price,e.getMessage());
e.printStackTrace();
} }
i++; i++;
} }