Merge branch 'dh_dev_mail' into master_test_hw

邮件功能合并
back_recharge
duhui 2021-01-13 16:01:15 +08:00
commit 14d06145c9
4 changed files with 42 additions and 9 deletions

View File

@ -11,6 +11,7 @@ public class MailCache {
private String from; private String from;
private String reward; private String reward;
private int time; private int time;
private int validTime;
public String getTitle() { public String getTitle() {
return title; return title;
@ -52,6 +53,14 @@ public class MailCache {
this.reward = reward; this.reward = reward;
} }
public int getValidTime() {
return validTime;
}
public void setValidTime(int validTime) {
this.validTime = validTime;
}
public static void main(String[] args) { public static void main(String[] args) {
Gson gson = new Gson(); Gson gson = new Gson();
Map<Integer,String> uidReward = new HashMap<>(); Map<Integer,String> uidReward = new HashMap<>();
@ -70,6 +79,5 @@ public class MailCache {
System.out.println(gson.toJson(mailCache)); System.out.println(gson.toJson(mailCache));
String s = gson.toJson(mailCache); String s = gson.toJson(mailCache);
System.out.println(gson.toJson(s)); System.out.println(gson.toJson(s));
} }
} }

View File

@ -70,6 +70,11 @@ public class MailLogic {
while (iterator.hasNext()){ while (iterator.hasNext()){
Map.Entry<String, Mail> next = iterator.next(); Map.Entry<String, Mail> next = iterator.next();
Mail cMail = next.getValue(); Mail cMail = next.getValue();
// 未到发送时间
if (nowTime < cMail.getSendTime()){
continue;
}
// 有限时间不为0并且当前时间-发送时间,大于有效时间
if (cMail.getEffectiveTime() != 0 && (nowTime - cMail.getSendTime()) > cMail.getEffectiveTime()){ if (cMail.getEffectiveTime() != 0 && (nowTime - cMail.getSendTime()) > cMail.getEffectiveTime()){
removeIds.add(cMail.getId()); removeIds.add(cMail.getId());
continue; continue;
@ -160,7 +165,7 @@ public class MailLogic {
* *
* *
*/ */
private List<SystemMail> getSystemMail() throws Exception { private List<SystemMail> getSystemMail() throws Exception {
MailingSystem mailingSystem = MailingSystemManager.getMailingSystem(); MailingSystem mailingSystem = MailingSystemManager.getMailingSystem();
SystemMailManager systemMailManager = mailingSystem.getSystemMailManager(); SystemMailManager systemMailManager = mailingSystem.getSystemMailManager();
Map<Integer, SystemMail> systemMailMap = systemMailManager.getSystemMailMap(); Map<Integer, SystemMail> systemMailMap = systemMailManager.getSystemMailMap();
@ -168,8 +173,7 @@ public class MailLogic {
int nowTime = (int)(TimeUtils.now()/1000); int nowTime = (int)(TimeUtils.now()/1000);
for (Map.Entry<Integer,SystemMail> entry:systemMailMap.entrySet()){ for (Map.Entry<Integer,SystemMail> entry:systemMailMap.entrySet()){
SystemMail systemMail = entry.getValue(); SystemMail systemMail = entry.getValue();
int time = systemMail.getSendTime() + systemMail.getEffectiveTime(); if (nowTime < systemMail.getSendTime()){
if (systemMail.getEffectiveTime() !=0 && nowTime > time){
continue; continue;
} }
systemMailsList.add(systemMail); systemMailsList.add(systemMail);
@ -309,7 +313,7 @@ public class MailLogic {
LOGGER.info("sendMail==>uid={},title={},reward:{}",uid,title,reward); LOGGER.info("sendMail==>uid={},title={},reward:{}",uid,title,reward);
MessageUtil.sendRedIndication(uid, GlobalsDef.MAIL_RED_TYPE); MessageUtil.sendRedIndication(uid, GlobalsDef.MAIL_RED_TYPE);
}catch (Exception e){ }catch (Exception e){
LOGGER.error(e.toString()+"sendMail==>uid={},title={},reward:{}",uid,title,reward); LOGGER.error(e.toString()+";sendMail==>uid={},title={},reward:{}",uid,title,reward);
} }
} }
/** /**
@ -343,7 +347,7 @@ public class MailLogic {
return; return;
} }
for(Map.Entry<String, MailCache> mail:mails.entrySet()){ for(Map.Entry<String, MailCache> mail:mails.entrySet()){
sendMail(Integer.parseInt(mail.getKey()),mail.getValue().getTitle(),mail.getValue().getContent(),mail.getValue().getReward(),mail.getValue().getTime(),0); sendMail(Integer.parseInt(mail.getKey()),mail.getValue().getTitle(),mail.getValue().getContent(),mail.getValue().getReward(),mail.getValue().getTime(),mail.getValue().getValidTime());
} }
redisUtil.del(RedisKey.getKey(RedisKey.READY_TO_USER_MAIL,"",false)); redisUtil.del(RedisKey.getKey(RedisKey.READY_TO_USER_MAIL,"",false));
MongoUtil.getLjsdMongoTemplate().lastUpdate(); MongoUtil.getLjsdMongoTemplate().lastUpdate();

View File

@ -10,6 +10,7 @@ import rpc.protocols.CommonProto;
import rpc.protocols.PlayerInfoProto; import rpc.protocols.PlayerInfoProto;
import org.springframework.data.redis.core.ZSetOperations; import org.springframework.data.redis.core.ZSetOperations;
import java.util.Map;
import java.util.Set; import java.util.Set;
/** /**
@ -69,6 +70,8 @@ public class GuildForceRank extends AbstractRank {
.setParam2(getParam2(zSetScore)).build(); .setParam2(getParam2(zSetScore)).build();
allUserResponse.setMyRankInfo(towerRankInfo); allUserResponse.setMyRankInfo(towerRankInfo);
} }
@Override
public CommonProto.UserRank.Builder getFirst(int activityId) throws Exception { public CommonProto.UserRank.Builder getFirst(int activityId) throws Exception {
Set<ZSetOperations.TypedTuple<String>> rankByKey = getRankByKey(activityId==0?"":String.valueOf(activityId), 0, 0); Set<ZSetOperations.TypedTuple<String>> rankByKey = getRankByKey(activityId==0?"":String.valueOf(activityId), 0, 0);
CommonProto.UserRank.Builder builder = CommonProto.UserRank.newBuilder(); CommonProto.UserRank.Builder builder = CommonProto.UserRank.newBuilder();
@ -82,11 +85,15 @@ public class GuildForceRank extends AbstractRank {
.setParam2(getParam2(data.getScore())) .setParam2(getParam2(data.getScore()))
.setParam3(getParam3(data.getScore())); .setParam3(getParam3(data.getScore()));
int gid = Integer.parseInt(data.getValue()); int gid = Integer.parseInt(data.getValue());
GuildInfo guildInfo = GuilidManager.guildInfoMap.get(gid); Map<Integer, GuildInfo> map = GuilidManager.guildInfoMap;
if (map == null || map.isEmpty()){
return builder;
}
GuildInfo guildInfo = map.get(gid);
Set<Integer> chairMan = guildInfo.getMembers().get(GlobalsDef.CHAIRMAN); Set<Integer> chairMan = guildInfo.getMembers().get(GlobalsDef.CHAIRMAN);
int chairManId = chairMan.iterator().next(); int chairManId = chairMan.iterator().next();
User user = UserManager.getUser(chairManId); User user = UserManager.getUser(chairManId);
CommonProto.UserRank.Builder everyRank = CommonProto.UserRank.newBuilder() builder = CommonProto.UserRank.newBuilder()
.setUid(chairManId) .setUid(chairManId)
.setUserName(user.getPlayerInfoManager().getNickName()) .setUserName(user.getPlayerInfoManager().getNickName())
.setHead(user.getPlayerInfoManager().getHead()) .setHead(user.getPlayerInfoManager().getHead())
@ -96,6 +103,6 @@ public class GuildForceRank extends AbstractRank {
.setForce(user.getPlayerInfoManager().getMaxForce()) .setForce(user.getPlayerInfoManager().getMaxForce())
.setSex(user.getPlayerInfoManager().getSex()) .setSex(user.getPlayerInfoManager().getSex())
.setGuildName(guildInfo.getName()); .setGuildName(guildInfo.getName());
return everyRank; return builder;
} }
} }

View File

@ -24,6 +24,11 @@ public class SDialRewardConfig implements BaseConfig {
private int extractWeight; private int extractWeight;
private int limitNum; private int limitNum;
private String showWeight;
private int maxGoalCount;
public static Map<Integer, SDialRewardConfig> sDialRewardConfigMap; public static Map<Integer, SDialRewardConfig> sDialRewardConfigMap;
public static Map<Integer, Map<Integer, Set<Integer>>> sRandPosMap = new HashMap<>(); //activityid posid - ids public static Map<Integer, Map<Integer, Set<Integer>>> sRandPosMap = new HashMap<>(); //activityid posid - ids
@ -88,4 +93,13 @@ public class SDialRewardConfig implements BaseConfig {
public static void setsRandPosMap(Map<Integer, Map<Integer, Set<Integer>>> sRandPosMap) { public static void setsRandPosMap(Map<Integer, Map<Integer, Set<Integer>>> sRandPosMap) {
SDialRewardConfig.sRandPosMap = sRandPosMap; SDialRewardConfig.sRandPosMap = sRandPosMap;
} }
public String getShowWeight() {
return showWeight;
}
public int getMaxGoalCount() {
return maxGoalCount;
}
} }