增加可重复领取单笔充值活动

master_longzhu_new
DESKTOP-C3M45P4\dengdan 2025-06-17 12:35:35 +08:00
parent f7a6ffae3d
commit 7a0dacf995
2 changed files with 41 additions and 0 deletions

View File

@ -24,9 +24,11 @@ import com.ljsd.jieling.logic.activity.fourChallenge.FourChallengeLogic;
import com.ljsd.jieling.logic.arena.LuofuLogic; import com.ljsd.jieling.logic.arena.LuofuLogic;
import com.ljsd.jieling.logic.dao.*; import com.ljsd.jieling.logic.dao.*;
import com.ljsd.jieling.logic.dao.root.GlobalSystemControl; import com.ljsd.jieling.logic.dao.root.GlobalSystemControl;
import com.ljsd.jieling.logic.dao.root.GuildInfo;
import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.dao.root.User;
import com.ljsd.jieling.logic.equip.EquipLogic; import com.ljsd.jieling.logic.equip.EquipLogic;
import com.ljsd.jieling.logic.explorerMap.ExplorerMapLogic; import com.ljsd.jieling.logic.explorerMap.ExplorerMapLogic;
import com.ljsd.jieling.logic.family.GuildLogic;
import com.ljsd.jieling.logic.home.event.HomeEvent; import com.ljsd.jieling.logic.home.event.HomeEvent;
import com.ljsd.jieling.logic.mail.MailLogic; import com.ljsd.jieling.logic.mail.MailLogic;
import com.ljsd.jieling.logic.mission.GameEvent; import com.ljsd.jieling.logic.mission.GameEvent;
@ -113,6 +115,13 @@ public class GetPlayerInfoHandler extends BaseHandler{
} }
} }
// guildServerCheck(user);// 工会服务器id检查 // guildServerCheck(user);// 工会服务器id检查
int guildId = user.getPlayerInfoManager().getGuildId();
if(guildId > 0){
GuildInfo guildInfo = GuilidManager.getGuildInfo(guildId);
if(guildInfo == null){
user.getPlayerInfoManager().setGuildId(0);
}
}
CommonProto.Player player = CBean2Proto.getPlayer(userId, user.getPlayerInfoManager(), mapManager); CommonProto.Player player = CBean2Proto.getPlayer(userId, user.getPlayerInfoManager(), mapManager);
CommonProto.SuddenlyBossInfo suddenlyBossInfo = CommonProto.SuddenlyBossInfo.newBuilder() CommonProto.SuddenlyBossInfo suddenlyBossInfo = CommonProto.SuddenlyBossInfo.newBuilder()
.setSuddBossId(mapManager.getSuddenlyBoss()) .setSuddBossId(mapManager.getSuddenlyBoss())

View File

@ -107,6 +107,9 @@ public class GmActivityLogic implements IEventHandler {
case 4://单笔充值 case 4://单笔充值
getRewardToSingleRecharge(user, gmActivity, price); getRewardToSingleRecharge(user, gmActivity, price);
break; break;
case 7://可重复单笔充值
getRewardToUnlimitSingleRecharge(user, gmActivity, price);
break;
default://3、5、6多日累充永久大充开服首日累充 default://3、5、6多日累充永久大充开服首日累充
getDefaultReward(user, gmActivity, price); getDefaultReward(user, gmActivity, price);
break; break;
@ -268,6 +271,35 @@ public class GmActivityLogic implements IEventHandler {
} }
} }
/**
* ()
*/
private void getRewardToUnlimitSingleRecharge(User user, GmActivity gmActivity, double price) throws Exception {
List<ARBMission> gmMissionList = findAllGmMission(gmActivity.getId());
for (ARBMission arbMission : gmMissionList) {
GmMission gmMission = gmActivity.getMissionMap().getOrDefault(arbMission.getId(), new GmMission());
// 已领取
// if (gmMission.getState() == 1){
// LOGGER.error("单笔充值奖励档位已领取userid{}, 活动id{} 档位id{}", user.getId(),gmActivity.getId(),gmMission.getId());
// continue;
// }
// 不能领
if (price != arbMission.getRechargeNum()){
LOGGER.error("单笔充值奖励金额对比失败userid{}, 活动id{} 金额:{}-{}", user.getId(),gmActivity.getId(),price,arbMission.getRechargeNum());
continue;
}
// 发邮件
String mailReward = ItemUtil.getMailReward(arbMission.getReward());
if (!StringUtil.isEmpty(mailReward)){
MailLogic.getInstance().sendMail(user.getId(),arbMission.getActivity().getName(),arbMission.getTitle(),mailReward,TimeUtils.nowInt(),Global.MAIL_EFFECTIVE_TIME);
}
// 记录到库
gmMission.setId(arbMission.getId());
gmMission.setState(1);
gmActivity.putMissionMap(arbMission.getId(), gmMission);
}
}
/** /**
* *
*/ */