工会关联表
parent
e4b32a7b03
commit
674c00ff98
|
|
@ -14,6 +14,7 @@ import com.ljsd.jieling.logic.rank.RankEnum;
|
||||||
import com.ljsd.jieling.logic.rank.RankLogic;
|
import com.ljsd.jieling.logic.rank.RankLogic;
|
||||||
import com.ljsd.jieling.network.session.ISession;
|
import com.ljsd.jieling.network.session.ISession;
|
||||||
import config.SErrorCodeEerverConfig;
|
import config.SErrorCodeEerverConfig;
|
||||||
|
import config.SSpecialConfig;
|
||||||
import util.TimeUtils;
|
import util.TimeUtils;
|
||||||
|
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
|
|
@ -132,12 +133,13 @@ public class GuildChangeTask implements GeneralTask{
|
||||||
}
|
}
|
||||||
|
|
||||||
private void getChangeUid(long now,Set<Integer> member,CompareValue value){
|
private void getChangeUid(long now,Set<Integer> member,CompareValue value){
|
||||||
|
int leadPassTime = SSpecialConfig.getIntegerValue(SSpecialConfig.GUILD_LEADER_PASS_TIME);
|
||||||
Map<Integer, ISession> sessionMap = OnlineUserManager.sessionMap;
|
Map<Integer, ISession> sessionMap = OnlineUserManager.sessionMap;
|
||||||
for(int oneAdmin:member){
|
for(int oneAdmin:member){
|
||||||
try {
|
try {
|
||||||
User user = UserManager.getUser(oneAdmin);
|
User user = UserManager.getUser(oneAdmin);
|
||||||
long offLineTime = user.getPlayerInfoManager().getOffLineTime();
|
long offLineTime = user.getPlayerInfoManager().getOffLineTime();
|
||||||
if(!sessionMap.containsKey(oneAdmin)&&now-offLineTime> TimeUnit.DAYS.toMillis(7)){
|
if(!sessionMap.containsKey(oneAdmin)&&now-offLineTime> TimeUnit.DAYS.toMillis(leadPassTime)){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if(value.getUid()==0){
|
if(value.getUid()==0){
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ 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.network.session.ISession;
|
import com.ljsd.jieling.network.session.ISession;
|
||||||
import com.ljsd.jieling.thread.ThreadManager;
|
import com.ljsd.jieling.thread.ThreadManager;
|
||||||
|
import config.SSpecialConfig;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import util.TimeUtils;
|
import util.TimeUtils;
|
||||||
|
|
@ -26,6 +27,9 @@ public class GuildCheckOfflineTask implements GeneralTask {
|
||||||
private static final Logger LOGGER = LoggerFactory.getLogger(GuildCheckOfflineTask.class);
|
private static final Logger LOGGER = LoggerFactory.getLogger(GuildCheckOfflineTask.class);
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
|
int leadPassTime = SSpecialConfig.getIntegerValue(SSpecialConfig.GUILD_LEADER_PASS_TIME);
|
||||||
|
int releaseTime = SSpecialConfig.getIntegerValue(SSpecialConfig.GUILD_DISMISS_TIME);
|
||||||
|
|
||||||
LOGGER.info("=-------公会检测开始-------");
|
LOGGER.info("=-------公会检测开始-------");
|
||||||
long now = TimeUtils.now();
|
long now = TimeUtils.now();
|
||||||
Map<Integer, GuildInfo> guildInfoMap = GuilidManager.guildInfoMap;
|
Map<Integer, GuildInfo> guildInfoMap = GuilidManager.guildInfoMap;
|
||||||
|
|
@ -48,10 +52,10 @@ public class GuildCheckOfflineTask implements GeneralTask {
|
||||||
LOGGER.error("{}公会会长数据为空id=>{}",entry.getKey(),chairmanId);
|
LOGGER.error("{}公会会长数据为空id=>{}",entry.getKey(),chairmanId);
|
||||||
}else{
|
}else{
|
||||||
long offLineTime = user.getPlayerInfoManager().getOffLineTime();
|
long offLineTime = user.getPlayerInfoManager().getOffLineTime();
|
||||||
if(!sessionMap.containsKey(chairmanId)&&now-offLineTime> TimeUnit.DAYS.toMillis(7)){
|
if(!sessionMap.containsKey(chairmanId)&&now-offLineTime> TimeUnit.DAYS.toMillis(leadPassTime)){
|
||||||
LOGGER.error("{}公会会长{}需要替换",entry.getKey(),chairmanId);
|
LOGGER.error("{}公会会长{}需要替换",entry.getKey(),chairmanId);
|
||||||
chairmanChangeGuilds.add(entry.getKey());
|
chairmanChangeGuilds.add(entry.getKey());
|
||||||
if(now-offLineTime<TimeUnit.DAYS.toMillis(15)){
|
if(now-offLineTime<TimeUnit.DAYS.toMillis(releaseTime)){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
|
|
@ -73,7 +77,7 @@ public class GuildCheckOfflineTask implements GeneralTask {
|
||||||
LOGGER.error("{}公会官员数据需要修理==>{}",entry.getKey(),uid);
|
LOGGER.error("{}公会官员数据需要修理==>{}",entry.getKey(),uid);
|
||||||
}else{
|
}else{
|
||||||
long offLineTime = user.getPlayerInfoManager().getOffLineTime();
|
long offLineTime = user.getPlayerInfoManager().getOffLineTime();
|
||||||
if(sessionMap.containsKey(uid)||now-offLineTime<TimeUnit.DAYS.toMillis(15)){
|
if(sessionMap.containsKey(uid)||now-offLineTime<TimeUnit.DAYS.toMillis(releaseTime)){
|
||||||
isNeedRelease = false;
|
isNeedRelease = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
@ -92,7 +96,7 @@ public class GuildCheckOfflineTask implements GeneralTask {
|
||||||
LOGGER.error("{}公会会员数据需要修理==>{}",entry.getKey(),uid);
|
LOGGER.error("{}公会会员数据需要修理==>{}",entry.getKey(),uid);
|
||||||
}else{
|
}else{
|
||||||
long offLineTime = user.getPlayerInfoManager().getOffLineTime();
|
long offLineTime = user.getPlayerInfoManager().getOffLineTime();
|
||||||
if(sessionMap.containsKey(uid)||now-offLineTime<TimeUnit.DAYS.toMillis(15)){
|
if(sessionMap.containsKey(uid)||now-offLineTime<TimeUnit.DAYS.toMillis(releaseTime)){
|
||||||
isNeedRelease = false;
|
isNeedRelease = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -86,6 +86,8 @@ public class SSpecialConfig implements BaseConfig {
|
||||||
public static final String ANIMAL_BROADCAST_QUALITY = "animal_broadcast_quality";
|
public static final String ANIMAL_BROADCAST_QUALITY = "animal_broadcast_quality";
|
||||||
public static final String ITEM_1004_RETRIEVE = "item_1004_retrieve";// 结算补发道具16 # 50
|
public static final String ITEM_1004_RETRIEVE = "item_1004_retrieve";// 结算补发道具16 # 50
|
||||||
public static final String SKILL_EFFECT_TGMB = "skill_effect_tgmb";//天宫秘宝购买特权带来的攻击提升万分比(只在天宫生效)
|
public static final String SKILL_EFFECT_TGMB = "skill_effect_tgmb";//天宫秘宝购买特权带来的攻击提升万分比(只在天宫生效)
|
||||||
|
public static final String GUILD_LEADER_PASS_TIME = "GuildLeaderPassTime";//会长不上线移交时长
|
||||||
|
public static final String GUILD_DISMISS_TIME ="GuildDismissTime";//公会全员不上线解散时长
|
||||||
@Override
|
@Override
|
||||||
public void init() throws Exception {
|
public void init() throws Exception {
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue