From b1b66941ba5780ca6d74d3183176b1d3bb25a63d Mon Sep 17 00:00:00 2001 From: duhui Date: Wed, 22 Feb 2023 10:14:31 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BC=80=E6=9C=8D=E5=86=B2=E6=A6=9C=E6=B4=BB?= =?UTF-8?q?=E5=8A=A8=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../OpenServerCompeteRankActivity.java | 36 ++++++++----------- .../ljsd/jieling/thread/task/MinuteTask.java | 14 -------- .../java/com/ljsd/jieling/util/ToolsUtil.java | 4 +-- 3 files changed, 15 insertions(+), 39 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/OpenServerCompeteRankActivity.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/OpenServerCompeteRankActivity.java index d7c64ade9..b25b55d92 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/OpenServerCompeteRankActivity.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/OpenServerCompeteRankActivity.java @@ -61,8 +61,6 @@ public class OpenServerCompeteRankActivity extends AbstractActivity { /** * 获取发送时间 - * @param rankType 排行榜类型 - * @return */ public long getSendTime(int rankType){ SChongRankInfo info = SChongRankInfo.getMap().getOrDefault(id,new HashMap<>()).get(rankType); @@ -77,8 +75,6 @@ public class OpenServerCompeteRankActivity extends AbstractActivity { /** * 判断活动是否开启 - * @param rankType 排行榜类型 - * @return */ public boolean isOpen(int rankType){ SChongRankInfo info = SChongRankInfo.getMap().getOrDefault(id,new HashMap<>()).get(rankType); @@ -97,8 +93,6 @@ public class OpenServerCompeteRankActivity extends AbstractActivity { /** * 获取发送时间: 单位/秒 - * @param rankType 排行榜类型 - * @return */ public int getCleanRankTime(int rankType){ SChongRankInfo info = SChongRankInfo.getMap().getOrDefault(id,new HashMap<>()).get(rankType); @@ -112,7 +106,6 @@ public class OpenServerCompeteRankActivity extends AbstractActivity { /** * 备份排行榜 - * @param rankType */ private Set> backRank(int rankType){ LOGGER.info("===========================冲榜开始备份,活动id:{},排行榜类型:{},时间:{}",id,rankType,TimeUtils.nowInt()); @@ -122,15 +115,15 @@ public class OpenServerCompeteRankActivity extends AbstractActivity { Set> rankInfo = abstractRank.getRankByKey("", 0, -1); SChongRankInfo chongRankInfo = SChongRankInfo.getMap().get(id).get(rankType); if (rankInfo == null || chongRankInfo == null){ - LOGGER.error("冲榜备份提前结束,排行榜空,活动id:{},排行榜类型:{}",id,rankType); + LOGGER.error("冲榜备份结束,排行榜空,活动id:{},排行榜类型:{}",id,rankType); return null; } backRankType = chongRankInfo.getBackRankType(); AbstractRank backRank = RankContext.getRankEnum(backRankType); Set> backRankInfo = backRank.getRankByKey("", 0, -1); if (backRankInfo != null && backRankInfo.size() > 0){ - LOGGER.info("冲榜备份提前结束,备份数据已存在,活动id:{},排行榜类型:{},排行榜数量:{}",id,backRankType,backRankInfo.size()); - return backRankInfo; + LOGGER.info("冲榜备份结束,备份数据已存在,活动id:{},排行榜类型:{},排行榜数量:{}",id,backRankType,backRankInfo.size()); + return null; } String key = RedisUtil.getInstence().getKey(backRank.getRedisKey(),""); RedisUtil.getInstence().zsetAddAall(key,rankInfo); @@ -145,7 +138,6 @@ public class OpenServerCompeteRankActivity extends AbstractActivity { /** * 发奖 - * @param rankType */ private void sendReward(int rankType) { LOGGER.info("===========================冲榜开始发奖:{}-{}",id,rankType); @@ -153,7 +145,7 @@ public class OpenServerCompeteRankActivity extends AbstractActivity { // 备份排行榜 Set> rankInfo = backRank(rankType); if (rankInfo == null){ - LOGGER.error("===========================冲榜发奖提前结束,备份排行榜失败:{}-{}",id,rankType); + LOGGER.error("===========================冲榜发奖提前结束,备份排行榜返回结果为空:{}-{}",id,rankType); return; } // 遍历发奖 @@ -162,15 +154,22 @@ public class OpenServerCompeteRankActivity extends AbstractActivity { int uid = Integer.parseInt(item.getValue()); Double score = item.getScore(); try { + // 邮件信息 + long value = score.longValue(); + int[][] reward = getMailReward(rankType, rank); + if (reward == null){ + LOGGER.error("冲榜发奖,此排名后玩家不发奖,uid:{},rankid:{}, score:{}",uid,rank, value); + break; + } + String title = getMailTitle(rankType); + String content = getMailContent(rankType, value, rank); + // 用户信息 User user = UserManager.getUser(uid, true); if (user == null){ LOGGER.error("开服冲榜id为{}的玩家,{}活动,{}排行奖励发送失败,原因玩家不存在", uid, id, rankType); continue; } LOGGER.info("冲榜发奖中:{}-{}-{}",id,rankType,uid); - - final int rankId = rank; - long value = score.longValue(); AyyncWorker ayyncWorker = new AyyncWorker(user, true, user1 -> { ActivityMission mission = user.getActivityManager().getActivityMissionMap().get(id); if (mission == null){ @@ -183,13 +182,6 @@ public class OpenServerCompeteRankActivity extends AbstractActivity { return; } //sendmail - String title = getMailTitle(rankType); - String content = getMailContent(rankType, value, rankId); - int[][] reward = getMailReward(rankType, rankId); - if (reward == null){ - LOGGER.error("冲榜发奖,玩家排名不发奖励,uid:{},rankid:{}, score:{}",user.getId(),rankId, value); - return; - } String mailReward = ItemUtil.getMailReward(reward); MailLogic.getInstance().sendMail(uid, title, content, mailReward, TimeUtils.nowInt(), Global.MAIL_EFFECTIVE_TIME); //update activity diff --git a/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java b/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java index c1b3f8009..1f7d18f07 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java @@ -245,20 +245,6 @@ public class MinuteTask extends Thread { FourChallengeLogic.getInstance().check(); // 助战 HelpHeroLogic.getInstance().zeroClearRedisHelp(); - //探索排行每日重置 - /*String key = RedisUtil.getInstence().getKey(RedisKey.EXPLORE_RANK,"",true); - Set exploreRank = RedisUtil.getInstence().getReverseZset(key,0,-1); - int i = 0; - for(String eachEle:exploreRank){ - User user = UserManager.getUser(Integer.parseInt(eachEle)); - if(user == null){ - continue; - } - i++; - LOGGER.info("EXPLORE_RANK reset "+eachEle+" i:"+i); - user.getUserMissionManager().onGameEvent(user, GameEvent.EXPLORE, MissionType.EXPLORE_ENEMYHISTORYHIGH_NUM, i); - } - RankEnum.toRank(RankEnum.EXPLORE_RANK.getType()).removeRank("");*/ // 公会信息处理 Map guildInfoMap = GuilidManager.getAllGuildInfos(); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/ToolsUtil.java b/serverlogic/src/main/java/com/ljsd/jieling/util/ToolsUtil.java index 4c20a4387..94ed01e53 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/ToolsUtil.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/ToolsUtil.java @@ -45,9 +45,7 @@ public class ToolsUtil { } public static long getEndTimeLong(long startTimeLong , long endTimeLong,int time,long createUserTime,int dayOut){ long timeLong = getTimeLong(startTimeLong, endTimeLong, time, createUserTime, 2); - long endTime = timeLong + TimeUtils.DAY * dayOut; - return endTime; - + return timeLong + TimeUtils.DAY * dayOut; }