From d9b592cc81f6a81932e6842b48e53d843a91d9c2 Mon Sep 17 00:00:00 2001 From: wangyuan Date: Fri, 21 Feb 2020 17:54:41 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=8A=9F=E8=83=BD=E6=8C=89?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E5=BC=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ljsd/jieling/logic/GlobalDataManaager.java | 14 +++++++++----- .../main/java/config/SGlobalSystemConfig.java | 17 ++++++++++++++++- 2 files changed, 25 insertions(+), 6 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobalDataManaager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobalDataManaager.java index 16c3bad43..2d9a3ee26 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobalDataManaager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobalDataManaager.java @@ -81,10 +81,6 @@ public class GlobalDataManaager implements IManager { return openTimeOfFuntionCache.containsKey(id); } - public TimeControllerOfFunction getTimeControllerOfFunctionByFunctinoId(int functionId){ - return openTimeOfFuntionCache.get(functionId); - } - public TimeControllerOfFunction getTimeControllerOfFunctionByFunctinoType(FunctionIdEnum functionIdEnum){ Map sGlobalSystemConfigMap = STableManager.getConfig(SGlobalSystemConfig.class); for(Map.Entry item : openTimeOfFuntionCache.entrySet()){ @@ -430,6 +426,14 @@ public class GlobalDataManaager implements IManager { } public TimeControllerOfFunction getOpenTimeOfFuntionCacheByType(FunctionIdEnum functionIdEnum ) { - return openTimeOfFuntionCache.get(functionIdEnum.getFunctionType()); + List ids = SGlobalSystemConfig.idsByType.get(functionIdEnum); + if(ids!=null && !ids.isEmpty()){ + for(Integer id : ids){ + if(openTimeOfFuntionCache.containsKey(id)){ + return openTimeOfFuntionCache.get(id); + } + } + } + return null; } } diff --git a/tablemanager/src/main/java/config/SGlobalSystemConfig.java b/tablemanager/src/main/java/config/SGlobalSystemConfig.java index 09bb98656..8c87d4501 100644 --- a/tablemanager/src/main/java/config/SGlobalSystemConfig.java +++ b/tablemanager/src/main/java/config/SGlobalSystemConfig.java @@ -1,7 +1,13 @@ package config; +import manager.STableManager; import manager.Table; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + @Table(name ="GlobalSystemConfig") public class SGlobalSystemConfig implements BaseConfig { @@ -35,9 +41,18 @@ public class SGlobalSystemConfig implements BaseConfig { private int[][] openGifts; private int isIDdSame; + + public static Map> idsByType; @Override public void init() throws Exception { - + Map> idsByTypeTmp = new HashMap<>(); + STableManager.getConfig(SGlobalSystemConfig.class).forEach((id,item)->{ + if(!idsByTypeTmp.containsKey(item.getType())){ + idsByTypeTmp.put(item.getType(),new ArrayList<>()); + } + idsByTypeTmp.get(item.getType()).add(item.getId()); + }); + idsByType = idsByTypeTmp; }