generated from root/miduo_server
合服右键修改
parent
f5f36df928
commit
af779d5dfd
|
|
@ -53,12 +53,15 @@ public class MailDaoImpl implements MailDao {
|
||||||
|
|
||||||
String[] split = mail.getServerId().split(comma);
|
String[] split = mail.getServerId().split(comma);
|
||||||
for (String serverId:split) {
|
for (String serverId:split) {
|
||||||
int hefuServerId = HeFuManager.getHefuServerId(Integer.parseInt(serverId));
|
int serverInt = Integer.parseInt(serverId);
|
||||||
serverId = String.valueOf(hefuServerId);
|
boolean masterServer = HeFuManager.isMasterServer(serverInt);
|
||||||
|
if (!masterServer){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
Query query = new Query();
|
Query query = new Query();
|
||||||
//_id区分引号 "1"和1
|
//_id区分引号 "1"和1
|
||||||
query.addCriteria(Criteria.where("_id").is(hefuServerId));
|
query.addCriteria(Criteria.where("_id").is(serverInt));
|
||||||
String dbName = MongoName.getMongoDBName(hefuServerId);
|
String dbName = MongoName.getMongoDBName(serverInt);
|
||||||
MongoTemplate mongoTemplate = connect.getMongoTemplete(dbName);
|
MongoTemplate mongoTemplate = connect.getMongoTemplete(dbName);
|
||||||
//有则更新,没有则新增
|
//有则更新,没有则新增
|
||||||
WriteResult result = mongoTemplate.upsert(query, update, "mailingSystem");
|
WriteResult result = mongoTemplate.upsert(query, update, "mailingSystem");
|
||||||
|
|
@ -73,7 +76,6 @@ public class MailDaoImpl implements MailDao {
|
||||||
String[] uid = mail.getUserId().split("#");
|
String[] uid = mail.getUserId().split("#");
|
||||||
String sb = getItemStr(mail);
|
String sb = getItemStr(mail);
|
||||||
for (String s : uid) {
|
for (String s : uid) {
|
||||||
// LOGGER.info("sendMail uid=>{},reward=>{}", s.trim(), sb);
|
|
||||||
MailPersonalCache mailPersonalCache = new MailPersonalCache();
|
MailPersonalCache mailPersonalCache = new MailPersonalCache();
|
||||||
mailPersonalCache.setTitle(mail.getMailTitle());
|
mailPersonalCache.setTitle(mail.getMailTitle());
|
||||||
mailPersonalCache.setContent(mail.getMailContent());
|
mailPersonalCache.setContent(mail.getMailContent());
|
||||||
|
|
@ -81,7 +83,8 @@ public class MailDaoImpl implements MailDao {
|
||||||
int sendTime = (int) (DateUtil.timeToStamp(mail.getSendTime()) / 1000);
|
int sendTime = (int) (DateUtil.timeToStamp(mail.getSendTime()) / 1000);
|
||||||
mailPersonalCache.setTime(sendTime);
|
mailPersonalCache.setTime(sendTime);
|
||||||
mailPersonalCache.setValidTime(mail.getEffectTime());
|
mailPersonalCache.setValidTime(mail.getEffectTime());
|
||||||
RedisUtil.getInstence().putMapEntry(mail.getServerId(), RedisUserKey.READY_TO_USER_MAIL + RedisUserKey.Delimiter_colon, s.trim(), mailPersonalCache, 240);
|
int serverId = HeFuManager.getHefuServerId(Integer.parseInt(mail.getServerId()));
|
||||||
|
RedisUtil.getInstence().putMapEntry(String.valueOf(serverId), RedisUserKey.READY_TO_USER_MAIL + RedisUserKey.Delimiter_colon, s.trim(), mailPersonalCache, 240);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -42,6 +42,11 @@ public class HeFuManager {
|
||||||
return hefuMap.getOrDefault(serverId, serverId);
|
return hefuMap.getOrDefault(serverId, serverId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static boolean isMasterServer(int serverId) {
|
||||||
|
int masterId = hefuMap.getOrDefault(serverId, serverId);
|
||||||
|
return masterId == serverId;
|
||||||
|
}
|
||||||
|
|
||||||
@PostConstruct
|
@PostConstruct
|
||||||
public void init(){
|
public void init(){
|
||||||
try {
|
try {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue