From 58d6738ca0cb7d93cb323c3e3b7d49258376cdc9 Mon Sep 17 00:00:00 2001 From: lvxinran Date: Tue, 26 May 2020 12:01:47 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E7=82=B9=E7=9F=B3=E6=88=90=E9=87=91?= =?UTF-8?q?=E5=95=86=E5=BA=97=E4=BF=AE=E6=94=B9=E3=80=81=E6=97=A0=E7=94=A8?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ljsd/jieling/logic/hero/HeroLogic.java | 4 +-- .../ljsd/jieling/logic/store/StoreLogic.java | 32 ++++++++++++------- 2 files changed, 23 insertions(+), 13 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java index 916048bc7..9b6249cd3 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java @@ -1603,9 +1603,9 @@ public class HeroLogic{ float score = sPropertyConfig.getScore(); result += propertyValue*score; - LOGGER.info("the propertyId={} the value is ={},propertyValue={},score={},result ={},the value={}",propertyId,propertyValue*score,propertyValue,score,result,propertyValue*score); +// LOGGER.info("the propertyId={} the value is ={},propertyValue={},score={},result ={},the value={}",propertyId,propertyValue*score,propertyValue,score,result,propertyValue*score); } - System.out.println(result); +// System.out.println(result); return (int)result; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java index fde5ca1ba..52df7239b 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java @@ -130,7 +130,13 @@ public class StoreLogic implements IEventHandler { } } - if(sStoreTypeConfig.getRefreshType()[0]==2&& calendar.get(Calendar.MINUTE) ==0 && sStoreTypeConfig.getRefreshType()[1]==calendar.get(Calendar.HOUR_OF_DAY)){ + if(sStoreTypeConfig.getRefreshType()[0]==2&& calendar.get(Calendar.MINUTE) ==0){ + + for(int i = 1;i storeItem = getStoreItem(sStoreTypeConfig.getId(), sStoreTypeConfig, user); - storeInfo.setLastRefreshTime(nowTime); - storeInfo.setItemNumMap(storeItem); - sendStoreUpdateIndication(user.getId(),storeInfo); + for(int i = 0 ; i storeItem = getStoreItem(sStoreTypeConfig.getId(), sStoreTypeConfig, user); + storeInfo.setLastRefreshTime(nowTime); + storeInfo.setItemNumMap(storeItem); + sendStoreUpdateIndication(user.getId(),storeInfo); + } } } @@ -626,12 +634,14 @@ public class StoreLogic implements IEventHandler { long nowTime = System.currentTimeMillis(); switch (type){ case 2: - boolean overTime = TimeUtils.isOverTime(time, storeInfo.getLastRefreshTime()); - if (overTime){ - itemNumMap = getStoreItem(sStoreTypeConfig.getId(),sStoreTypeConfig,user); - storeInfo.setLastRefreshTime(nowTime); + for(int i=1;i Date: Wed, 27 May 2020 09:00:39 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E5=95=86=E5=BA=97=E6=97=B6=E9=97=B4?= =?UTF-8?q?=E6=8E=A8=E9=80=81=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../logic/expedition/ExpeditionLogic.java | 3 +- .../ljsd/jieling/logic/store/StoreLogic.java | 42 +++++++++++-------- 2 files changed, 26 insertions(+), 19 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/expedition/ExpeditionLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/expedition/ExpeditionLogic.java index 5afea0a10..58c00a7e1 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/expedition/ExpeditionLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/expedition/ExpeditionLogic.java @@ -82,7 +82,8 @@ public class ExpeditionLogic { ExpeditionManager manager = user.getExpeditionManager(); TimeControllerOfFunction openTimeOfFuntionCacheByType = GlobalDataManaager.getInstance().getOpenTimeOfFuntionCacheByType(FunctionIdEnum.Expedition); - if(manager.getCurrentTime()==openTimeOfFuntionCacheByType.getTimes()){ + + if(openTimeOfFuntionCacheByType==null||manager.getCurrentTime()==openTimeOfFuntionCacheByType.getTimes()){ return; } takeAllReward(user); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java index 52df7239b..1f000dc75 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java @@ -134,28 +134,33 @@ public class StoreLogic implements IEventHandler { for(int i = 1;i { - StoreInfo storeInfo = user.getStoreManager().getStoreInfoMap().get(sStoreTypeConfig.getId()); + } + } + } - Map storeItem = getStoreItem(sStoreTypeConfig.getId(), sStoreTypeConfig, user); - if(storeItem == null){ - LOGGER.error("the uid={},the storeID={} is null",user.getId(),sStoreTypeConfig.getId()); - return; - } - storeInfo.setItemNumMap(storeItem); - storeInfo.setLastRefreshTime(now); - MongoUtil.getInstence().lastUpdate(); - sendStoreUpdateIndication(user.getId(),storeInfo); - }); + private static void sendRefreshIndication(SStoreTypeConfig sStoreTypeConfig,long lastRefreshTime) throws Exception { + for(ISession session : OnlineUserManager.sessionMap.values()){ + if(session.getFiveReady() == 1){ + User user = UserManager.getUser(session.getUid()); + if(user.getStoreManager().getStoreInfoMap().containsKey(sStoreTypeConfig.getId())){ + updateUsersStoreAyync(UserManager.getUser(session.getUid()),user1 -> { + StoreInfo storeInfo = user.getStoreManager().getStoreInfoMap().get(sStoreTypeConfig.getId()); + + Map storeItem = getStoreItem(sStoreTypeConfig.getId(), sStoreTypeConfig, user); + if(storeItem == null){ + LOGGER.error("the uid={},the storeID={} is null",user.getId(),sStoreTypeConfig.getId()); + return; } - } + storeInfo.setItemNumMap(storeItem); + storeInfo.setLastRefreshTime(lastRefreshTime); + MongoUtil.getInstence().lastUpdate(); + sendStoreUpdateIndication(user.getId(),storeInfo); + }); } } } @@ -250,6 +255,7 @@ public class StoreLogic implements IEventHandler { public static void sendStoreUpdateIndication(int uid,StoreInfo storeInfo){ CommonProto.StoreInfo.Builder builder = getBuilder(storeInfo); + System.out.println("商店刷新发送推送"); PlayerInfoProto.storeUpdateIndication build = PlayerInfoProto.storeUpdateIndication.newBuilder().addStoreInfo(builder).build(); ISession session = OnlineUserManager.getSessionByUid(uid); if(session!=null){ From 1e5645e21fb9fad9f3f6ced4e673a3418547c03d Mon Sep 17 00:00:00 2001 From: lvxinran Date: Tue, 26 May 2020 14:45:31 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=97=A0=E7=94=A8?= =?UTF-8?q?=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java | 1 - 1 file changed, 1 deletion(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java index 1f000dc75..6acc41025 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/store/StoreLogic.java @@ -255,7 +255,6 @@ public class StoreLogic implements IEventHandler { public static void sendStoreUpdateIndication(int uid,StoreInfo storeInfo){ CommonProto.StoreInfo.Builder builder = getBuilder(storeInfo); - System.out.println("商店刷新发送推送"); PlayerInfoProto.storeUpdateIndication build = PlayerInfoProto.storeUpdateIndication.newBuilder().addStoreInfo(builder).build(); ISession session = OnlineUserManager.getSessionByUid(uid); if(session!=null){ From c5edd276e4f199d91591b2eb9c9e7e884a596736 Mon Sep 17 00:00:00 2001 From: zhangshanxue Date: Wed, 27 May 2020 19:24:58 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93=E5=AF=B9?= =?UTF-8?q?=E8=B1=A1=E5=88=9D=E5=A7=8B=E5=8C=96bug=20=20=E7=82=B9=E9=87=91?= =?UTF-8?q?=E5=88=B7=E6=96=B0=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jieling-dbgen/Ldb.xml | 6 +- .../ljsd/jieling/jbean/ActivityManager.java | 17 ++-- .../jieling/logic/activity/ActivityLogic.java | 7 +- .../logic/activity/BuyGoldActivity.java | 86 +++++++++---------- 4 files changed, 58 insertions(+), 58 deletions(-) diff --git a/jieling-dbgen/Ldb.xml b/jieling-dbgen/Ldb.xml index 1ab667780..f9730f3b5 100644 --- a/jieling-dbgen/Ldb.xml +++ b/jieling-dbgen/Ldb.xml @@ -8,7 +8,7 @@ - + @@ -25,8 +25,8 @@ - - 七日狂欢结束时间 + + 七日狂欢开始时间 幸运探宝奖池 高级幸运探宝奖池 diff --git a/serverlogic/src/main/java/com/ljsd/jieling/jbean/ActivityManager.java b/serverlogic/src/main/java/com/ljsd/jieling/jbean/ActivityManager.java index 1ec6ea0ee..2cb662b93 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/jbean/ActivityManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/jbean/ActivityManager.java @@ -25,6 +25,7 @@ public final class ActivityManager extends MongoBase { public ActivityManager(ActivityManager _o_ ) { this.activityMissionMap = new HashMap(); _o_.activityMissionMap.forEach((_k_, _v_) -> this.activityMissionMap.put(_k_, new ActivityMission(_v_))); + this.senvenStartTime = _o_.senvenStartTime; this.luckWheel = new LuckWheelMission(_o_.luckWheel); this.luckWheelAdvance = new LuckWheelMission(_o_.luckWheelAdvance); } @@ -35,6 +36,9 @@ public final class ActivityManager extends MongoBase { return this.activityMissionMapLog; } + public long getSenvenStartTime() { // 七日狂欢开始时间 + return this.senvenStartTime; + } public com.ljsd.jieling.jbean.LuckWheelMission getLuckWheel() { // 幸运探宝奖池 return this.luckWheel; @@ -44,17 +48,11 @@ public final class ActivityManager extends MongoBase { return this.luckWheelAdvance; } - - public void setSenvenStartTime(long senvenStartTime) { - updateString("senvenStartTime",senvenStartTime); - this.senvenStartTime = senvenStartTime; + public void setSenvenStartTime(long senvenstarttime) { // 七日狂欢开始时间 + updateString("senvenStartTime",senvenstarttime); + this.senvenStartTime = senvenstarttime; } - public long getSenvenStartTime() { - return senvenStartTime; - } - - public void setLuckWheel(LuckWheelMission luckwheel) { // 幸运探宝奖池 updateString("luckWheel",luckwheel); luckwheel.init(getRootId(),getMongoKey()+ ".luckWheel"); @@ -73,6 +71,7 @@ public final class ActivityManager extends MongoBase { StringBuilder _sb_ = new StringBuilder(super.toString()); _sb_.append("=("); _sb_.append(this.activityMissionMap).append(","); + _sb_.append(this.senvenStartTime).append(","); _sb_.append(this.luckWheel).append(","); _sb_.append(this.luckWheelAdvance).append(","); _sb_.append(")"); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java index c95a6e781..576487609 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java @@ -215,12 +215,13 @@ public class ActivityLogic implements IEventHandler{ if (map.containsKey(activityId)) { return false; } - ActivityMission activityMission = new ActivityMission(); - initMissionInfo(activityMission,activityId); - // activityMission.init(getRootId(), getMongoKey() + ".activityMissionMap." + activityId); + ActivityMission activityMission = new ActivityMission(); //自动初始化 map.put(activityId, activityMission); + initMissionInfo(activityMission,activityId); + // activityMission.init(getRootId(), getMongoKey() + ".activityMissionMap." + activityId); + return true; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/BuyGoldActivity.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/BuyGoldActivity.java index a27ced21b..f72e76d12 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/BuyGoldActivity.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/BuyGoldActivity.java @@ -54,53 +54,53 @@ class BuyGoldActivity extends AbstractActivity { @Override public void onEvent(IEvent event) throws Exception { super.onEvent(event); - - List list = SSpecialConfig.getListValue(SSpecialConfig.Gold_touch_refresh); - if (event instanceof HourTaskEvent) { - if (list.contains(((HourTaskEvent) event).getHour())) { - InnerMessageUtil.broadcastWithRandom(user -> { - if (user == null) { - return; - } - setUpTime(user); - }, new ArrayList<>(OnlineUserManager.sessionMap.keySet()), 1); - - } - } - if (event instanceof UserOnlineEvent) { - User user = UserManager.getUser(((UserOnlineEvent) event).getUid()); - ActivityMission activityMission = user.getActivityManager().getActivityMissionMap().get(id); - if (null == activityMission) { - return; - } - boolean needRefresh = false; - for (Integer aList : list) { - if (TimeUtils.isOverAppointRefreshTime(System.currentTimeMillis(), activityMission.getV() * 1000L, aList)) { - needRefresh = true; - break; - } - } - if (needRefresh) { - setUpTime(user); - } - } + //点金刷新走商店 +// List list = SSpecialConfig.getListValue(SSpecialConfig.Gold_touch_refresh); +// if (event instanceof HourTaskEvent) { +// if (list.contains(((HourTaskEvent) event).getHour())) { +// InnerMessageUtil.broadcastWithRandom(user -> { +// if (user == null) { +// return; +// } +// setUpTime(user); +// }, new ArrayList<>(OnlineUserManager.sessionMap.keySet()), 1); +// +// } +// } +// if (event instanceof UserOnlineEvent) { +// User user = UserManager.getUser(((UserOnlineEvent) event).getUid()); +// ActivityMission activityMission = user.getActivityManager().getActivityMissionMap().get(id); +// if (null == activityMission) { +// return; +// } +// boolean needRefresh = false; +// for (Integer aList : list) { +// if (TimeUtils.isOverAppointRefreshTime(System.currentTimeMillis(), activityMission.getV() * 1000L, aList)) { +// needRefresh = true; +// break; +// } +// } +// if (needRefresh) { +// setUpTime(user); +// } +// } } private void setUpTime(User user) { - ActivityMission activityMission = user.getActivityManager().getActivityMissionMap().get(id); - if (null == activityMission) { - return; - } - //sendclient - activityMission.setV((int) (System.currentTimeMillis()/1000)); - HashSet ids = new HashSet<>(); - List listValue = SSpecialConfig.getListValue(SSpecialConfig.Gold_touch); - listValue.forEach(type -> SPrivilegeTypeConfig.privilegeByType.get(type).forEach(sPrivilegeTypeConfig -> { - ids.add(sPrivilegeTypeConfig.getId()); - user.getPlayerInfoManager().refreshVipByType(type); - })); - notifyClient(user, ids); +// ActivityMission activityMission = user.getActivityManager().getActivityMissionMap().get(id); +// if (null == activityMission) { +// return; +// } +// //sendclient +// activityMission.setV((int) (System.currentTimeMillis()/1000)); +// HashSet ids = new HashSet<>(); +// List listValue = SSpecialConfig.getListValue(SSpecialConfig.Gold_touch); +// listValue.forEach(type -> SPrivilegeTypeConfig.privilegeByType.get(type).forEach(sPrivilegeTypeConfig -> { +// ids.add(sPrivilegeTypeConfig.getId()); +// user.getPlayerInfoManager().refreshVipByType(type); +// })); +// notifyClient(user, ids); }