七界取消排行榜奖励
parent
d76438ab99
commit
8bc2e97047
|
@ -3,26 +3,14 @@ package com.ljsd.jieling.core.function;
|
|||
import com.ljsd.jieling.core.FunctionManager;
|
||||
import com.ljsd.jieling.db.redis.RedisKey;
|
||||
import com.ljsd.jieling.db.redis.RedisUtil;
|
||||
import com.ljsd.jieling.globals.Global;
|
||||
import com.ljsd.jieling.logic.GlobleSystemLogic;
|
||||
import com.ljsd.jieling.logic.activity.crossService.CrossServiceLogic;
|
||||
import com.ljsd.jieling.logic.dao.TimeControllerOfFunction;
|
||||
import com.ljsd.jieling.logic.dao.cross.CSPlayer;
|
||||
import com.ljsd.jieling.logic.mail.MailLogic;
|
||||
import com.ljsd.jieling.logic.rank.RankContext;
|
||||
import com.ljsd.jieling.logic.rank.RankEnum;
|
||||
import config.SErrorCodeEerverConfig;
|
||||
import config.SQijieRanking;
|
||||
import manager.STableManager;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.data.redis.core.ZSetOperations;
|
||||
import util.StringUtil;
|
||||
import util.TimeUtils;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* @author lvxinran
|
||||
* @date 2019/11/23
|
||||
|
@ -43,42 +31,42 @@ public class SevenWorldFunction implements FunctionManager {
|
|||
return;
|
||||
}
|
||||
RedisUtil.getInstence().expire2(lockKey,TimeUtils.ONE_MINUTE*5);
|
||||
LOGGER.info("七界试炼活动结束,开始发奖...");
|
||||
// 排行榜
|
||||
String crossRedisKey = RankContext.getRankEnum(RankEnum.CROSS_SEVEN_WORLD_RANK.getType()).getCrossRedisKey();
|
||||
Set<ZSetOperations.TypedTuple<String>> range = RedisUtil.getInstence().getZsetreverseRangeWithScores(crossRedisKey,"",0,-1,false);
|
||||
// 排名
|
||||
int rank = 0;
|
||||
for (ZSetOperations.TypedTuple<String> tuple : range) {
|
||||
rank++;
|
||||
int uid = Integer.parseInt(tuple.getValue());
|
||||
CSPlayer player = CrossServiceLogic.getPlayerByRedis(uid);
|
||||
if (player == null){
|
||||
LOGGER.error("七界发奖,玩家缓存找不到,uid:{},排名:{}",uid,rank);
|
||||
continue;
|
||||
}
|
||||
// 清除道具标记
|
||||
// SevenWorldLogic.setClearMark(uid);
|
||||
long loginTime = player.getLoginTime();
|
||||
if (TimeUtils.now() > (loginTime +TimeUtils.WEEK)){
|
||||
LOGGER.error("七界发奖,玩家登陆时间超过七天,uid:{},排名:{},最后登陆时间:{},当前时间:{}",uid,rank,TimeUtils.getTimeStamp2(loginTime),TimeUtils.nowStr());
|
||||
continue;
|
||||
}
|
||||
String title = SErrorCodeEerverConfig.getI18NMessage("Qijie_mail_title");
|
||||
String content = SErrorCodeEerverConfig.getI18NMessageNeedConvert("Qijie_mail_txt", new Object[]{rank},new int[0],"#");
|
||||
// 排行奖励
|
||||
Map<Integer, SQijieRanking> config = STableManager.getConfig(SQijieRanking.class);
|
||||
for (SQijieRanking value : config.values()) {
|
||||
// 排名区间
|
||||
if (rank >= value.getMinRank() && rank <= value.getMaxRank()){
|
||||
// 发邮件奖励
|
||||
String reward = StringUtil.parseArrayToString(value.getRankingReward());
|
||||
MailLogic.getInstance().sendMailToRedis(uid,title,content,reward,TimeUtils.nowInt(), Global.MAIL_EFFECTIVE_TIME);
|
||||
LOGGER.info("七界试炼发奖,uid:{},排名:{},奖励:{},",uid,rank,reward);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
// LOGGER.info("七界试炼活动结束,开始发奖...");
|
||||
// // 排行榜
|
||||
// Set<ZSetOperations.TypedTuple<String>> range = RedisUtil.getInstence().getZsetreverseRangeWithScores(crossRedisKey,"",0,-1,false);
|
||||
// // 排名
|
||||
// int rank = 0;
|
||||
// for (ZSetOperations.TypedTuple<String> tuple : range) {
|
||||
// rank++;
|
||||
// int uid = Integer.parseInt(tuple.getValue());
|
||||
// CSPlayer player = CrossServiceLogic.getPlayerByRedis(uid);
|
||||
// if (player == null){
|
||||
// LOGGER.error("七界发奖,玩家缓存找不到,uid:{},排名:{}",uid,rank);
|
||||
// continue;
|
||||
// }
|
||||
// // 清除道具标记
|
||||
//// SevenWorldLogic.setClearMark(uid);
|
||||
// long loginTime = player.getLoginTime();
|
||||
// if (TimeUtils.now() > (loginTime +TimeUtils.WEEK)){
|
||||
// LOGGER.error("七界发奖,玩家登陆时间超过七天,uid:{},排名:{},最后登陆时间:{},当前时间:{}",uid,rank,TimeUtils.getTimeStamp2(loginTime),TimeUtils.nowStr());
|
||||
// continue;
|
||||
// }
|
||||
// String title = SErrorCodeEerverConfig.getI18NMessage("Qijie_mail_title");
|
||||
// String content = SErrorCodeEerverConfig.getI18NMessageNeedConvert("Qijie_mail_txt", new Object[]{rank},new int[0],"#");
|
||||
// // 排行奖励
|
||||
// Map<Integer, SQijieRanking> config = STableManager.getConfig(SQijieRanking.class);
|
||||
// for (SQijieRanking value : config.values()) {
|
||||
// // 排名区间
|
||||
// if (rank >= value.getMinRank() && rank <= value.getMaxRank()){
|
||||
// // 发邮件奖励
|
||||
// String reward = StringUtil.parseArrayToString(value.getRankingReward());
|
||||
// MailLogic.getInstance().sendMailToRedis(uid,title,content,reward,TimeUtils.nowInt(), Global.MAIL_EFFECTIVE_TIME);
|
||||
// LOGGER.info("七界试炼发奖,uid:{},排名:{},奖励:{},",uid,rank,reward);
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
LOGGER.info("七界试炼发奖结束,开始清除排行榜...");
|
||||
String key = RedisUtil.getInstence().getKey2(crossRedisKey, "");
|
||||
RedisUtil.getInstence().del(key);
|
||||
|
|
Loading…
Reference in New Issue