5点改0点修改

lvxinran 2021-01-14 00:08:59 +08:00
parent d2c1b418a9
commit 25b2245f5c
6 changed files with 12 additions and 74 deletions

View File

@ -1,23 +0,0 @@
package com.ljsd.jieling.handler;
import com.ljsd.jieling.logic.GlobalDataManaager;
import com.ljsd.jieling.logic.dao.UserManager;
import com.ljsd.jieling.netty.cocdex.PacketNetData;
import com.ljsd.jieling.network.session.ISession;
import rpc.protocols.MessageTypeProto;
import rpc.protocols.PlayerInfoProto;
import org.springframework.stereotype.Component;
@Component
public class ServerFiveHandler extends BaseHandler{
@Override
public MessageTypeProto.MessageType getMessageCode() {
return MessageTypeProto.MessageType.SERVER_FIVE_REQEUST;
}
@Override
public void process(ISession iSession, PacketNetData netData) throws Exception {
GlobalDataManaager.checkNeedReFlush(iSession, UserManager.getUser(iSession.getUid()), PlayerInfoProto.FivePlayerUpdateIndication.newBuilder());
}
}

View File

@ -25,7 +25,7 @@ public class ServerZeroHandler extends BaseHandler {
GlobalDataManaager.flushGoodsTimes(user);
PlayerLogic.getInstance().sendDayilyMail(user,-1);
user.getUserMissionManager().onGameEvent(user, GameEvent.LOGIN_GAME,0);
GlobalDataManaager.checkNeedReFlush(session, UserManager.getUser(session.getUid()), PlayerInfoProto.FivePlayerUpdateIndication.newBuilder());
// int indicationIndex = session.getIndicationIndex();
// byte[] byteBuf = MessageUtil.wrappedBuffer(session.getUid(), session.getToken(), indicationIndex,1, MessageTypeProto.MessageType.ZeroPlayerUpdateIndication_VALUE, PlayerInfoProto.ZeroPlayerUpdateIndication.newBuilder().build());

View File

@ -331,7 +331,7 @@ public class GlobalDataManaager implements IManager {
public static void checkNeedReFlush(ISession session,User user,PlayerInfoProto.FivePlayerUpdateIndication.Builder fBuilder) throws Exception {
// 需要隔天刷新的字段统一在这里处理
if (TimeUtils.isOverTime(5,user.getPlayerInfoManager().getLoginTime())) {
if (TimeUtils.isOverTime(0,user.getPlayerInfoManager().getLoginTime())) {
//活动刷新
ActivityLogic.getInstance().flushEveryDay(user,fBuilder);
PlayerLogic.getInstance().vipflushEveryDay(user,fBuilder);
@ -345,7 +345,7 @@ public class GlobalDataManaager implements IManager {
PlayerLogic.getInstance().sendTimingMail(user);
user.getGuildMyInfo().setLastHurt(0);
// GuildChallengeLogic.getInstance().resetBossDamage(user);
if(TimeUtils.isSpanTime(user.getPlayerInfoManager().getLoginTime(),TimeUtils.now(),1,5)){
if(TimeUtils.isSpanTime(user.getPlayerInfoManager().getLoginTime(),TimeUtils.now(),1,0)){
user.getPlayerInfoManager().updateSituationPass(new HashMap<>());
}
if(fBuilder!=null){
@ -450,9 +450,6 @@ public class GlobalDataManaager implements IManager {
case 0:
number = MessageTypeProto.MessageType.SERVER_ZERO_REQUEST_VALUE;
break;
case 5:
number = MessageTypeProto.MessageType.SERVER_FIVE_REQEUST_VALUE;
break;
default:{
LOGGER.info("everTask wrong case=>{}", hour);
break;

View File

@ -69,7 +69,7 @@ public class SituationLogic {
overTime = new int[4];
doCheck();
}else{
if(TimeUtils.getHourOfDay()!=5){
if(TimeUtils.getHourOfDay()!=0){
return;
}
doCheck();
@ -82,9 +82,6 @@ public class SituationLogic {
long now = TimeUtils.now();
int hourOfDay = TimeUtils.getHourOfDay();
int week = TimeUtils.getDayOfWeek();
if(hourOfDay<5){
week = week==1?7:week-1;
}
boolean isIndication = false;
for(int[] config:openConfig){
boolean isOpen = false;
@ -98,12 +95,12 @@ public class SituationLogic {
isIndication = true;
}
status[config[0]-1] = isOpen?1:0;
overTime[config[0]-1] =isOpen?(int)(TimeUtils.getLastOrUnderHour(now,5,0,false)/1000):0;
overTime[config[0]-1] =isOpen?(int)(TimeUtils.getLastOrUnderHour(now,0,0,false)/1000):0;
}
if(isIndication){
//周一刷新
boolean remove = false;
if(TimeUtils.getDayOfWeek()==1&&TimeUtils.getHourOfDay()==5&&TimeUtils.getMiunte()==0){
if(TimeUtils.getDayOfWeek()==1&&TimeUtils.getHourOfDay()==0&&TimeUtils.getMiunte()==0){
remove = true;
}
if(remove){

View File

@ -21,7 +21,7 @@ public class NewEightActivity extends AbstractActivity {
@Override
boolean takeRewardsProcess(ISession session, SActivityRewardConfig sActivityRewardConfig, ActivityProgressInfo activityProgressInfo) throws Exception {
User user = UserManager.getUser(session.getUid());
if(TimeUtils.getOverTimeCount(user.getPlayerInfoManager().getCreateTime(),System.currentTimeMillis(),5)<sActivityRewardConfig.getValues()[0][0]-1){
if(TimeUtils.getOverTimeCount(user.getPlayerInfoManager().getCreateTime(),System.currentTimeMillis(),0)<sActivityRewardConfig.getValues()[0][0]-1){
return false;
}
return true;

View File

@ -90,12 +90,6 @@ public class MinuteTask extends Thread {
e.printStackTrace();
LOGGER.error("Exception::=>{}",e.toString());
}
try {
everyFiveTask();
}catch (Exception e){
e.printStackTrace();
LOGGER.error("Exception::=>{}",e.toString());
}
try {
everyMondyFiveClockTask();
}catch (Exception e){
@ -167,23 +161,7 @@ public class MinuteTask extends Thread {
}
}
//弃用
// private void fiveMinuteOnlineSend() {
// Calendar calendar = Calendar.getInstance();
// int minute = calendar.get(Calendar.MINUTE);
// if(minute%5 == 0){
// KTAppOnline ktAppOnline = new KTAppOnline();
// int onlineNum = OnlineUserManager.sessionMap.size();
// ParamEventBean paramEventBean = new ParamEventBean(ParamEventBean.OnlineEvent);
// int time =(int)(calendar.getTimeInMillis()/1000);
// paramEventBean.add(String.valueOf(time));
// paramEventBean.add(String.valueOf(onlineNum));
// ktAppOnline.setParam_event(paramEventBean);
// ktAppOnline.setParam_data(KtBeanBuilderUtils.paramDataBuildForSystem());
// ktAppOnline.getParam_data().setCategory_s(LoginParamType.DATA_CATEGORY_APP);
// DataMessageUtils.addLogQueue(ktAppOnline);
// }
// }
//每分钟异步上报在线人数
private void reportUserOnline() {
new OnlineUserReportTask().start();
@ -205,28 +183,17 @@ public class MinuteTask extends Thread {
LOGGER.info("everyHourTask end ...");
}
}
//每日凌晨零点执行
public void everyZeroTask() throws Exception {
Calendar calendar = Calendar.getInstance();
int hour = calendar.get(Calendar.HOUR_OF_DAY);
int minute = calendar.get(Calendar.MINUTE);
if(hour == 0 && minute ==0){
LOGGER.info("DailyOfZeroTask start ...");
ArenaLogic.getInstance().sendReward(GlobalsDef.ARENA_DAILY_REWARD);
GlobalDataManaager.everTask(0);
LOGGER.info("DailyOfZeroTask end ...");
}
}
//每日凌晨五点执行
public void everyFiveTask() throws Exception {
Calendar calendar = Calendar.getInstance();
int hour = calendar.get(Calendar.HOUR_OF_DAY);
int minute = calendar.get(Calendar.MINUTE);
if(hour == 5 && minute ==0){
//保证每分钟线程
try {
ArenaLogic.getInstance().sendReward(GlobalsDef.ARENA_DAILY_REWARD);
Map<Integer, GuildInfo> guildInfoMap = GuilidManager.guildInfoMap;
for(Map.Entry<Integer,GuildInfo> guildInfoEntry:guildInfoMap.entrySet()){
RedisUtil.getInstence().del(RedisKey.getKey(RedisKey.GUILD_RED_PACKAGE_RANK,String.valueOf(guildInfoEntry.getKey()),false));
@ -264,7 +231,7 @@ public class MinuteTask extends Thread {
LOGGER.info("DailyOfFiveTask start ...");
GlobalDataManaager.everTask(5);
GlobalDataManaager.everTask(0);
LOGGER.info("DailyOfFiveTask end ...");
}
}