From c68b7cbcdd3a8426e065939f81f36764678a1bcb Mon Sep 17 00:00:00 2001 From: litao Date: Fri, 12 May 2017 18:01:32 +0800 Subject: [PATCH] =?UTF-8?q?lyms=5Fbasicconfig=20=E7=BC=93=E5=AD=98?= =?UTF-8?q?=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../platform/permission/BasicConfigContainer.java | 107 +++++++++++++++++++++ .../impl/BabyPatientExtendEarServiceImpl.java | 6 ++ .../operate/web/controller/CouponController.java | 1 - .../web/utils/platform/BaseConfigConstant.java | 9 -- .../operate/web/utils/platform/BaseConfigUtil.java | 52 ---------- 5 files changed, 113 insertions(+), 62 deletions(-) create mode 100644 platform-biz-service/src/main/java/com/lyms/platform/permission/BasicConfigContainer.java delete mode 100644 platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/platform/BaseConfigConstant.java delete mode 100644 platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/platform/BaseConfigUtil.java diff --git a/platform-biz-service/src/main/java/com/lyms/platform/permission/BasicConfigContainer.java b/platform-biz-service/src/main/java/com/lyms/platform/permission/BasicConfigContainer.java new file mode 100644 index 0000000..006d3c0 --- /dev/null +++ b/platform-biz-service/src/main/java/com/lyms/platform/permission/BasicConfigContainer.java @@ -0,0 +1,107 @@ +package com.lyms.platform.permission; + +import com.lyms.platform.pojo.BasicConfig; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.stereotype.Component; + +import javax.annotation.PostConstruct; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * @Author: litao + * @Date: 2017/5/12 0012 14:55 + * @Version: V1.0 + */ +@Component +public class BasicConfigContainer { + + private Logger logger = LoggerFactory.getLogger(BasicConfigContainer.class); + + @Autowired + private MongoTemplate mongoTemplate; + + /** 用于存储 k-v 的数据*/ + private List> map = new ArrayList<>(); + + /** 用于存储 parent key 相同的数据 */ + private List>> parentMap = new ArrayList<>(); + + /** + * 初始平台缓存信息 + */ + @PostConstruct + public void initCache() { + List configs = mongoTemplate.findAll(BasicConfig.class); + for (BasicConfig config : configs) { + if(StringUtils.isBlank(config.getParentId()) || !"0".equals(config.getParentId())) { + Map> tempMap = new HashMap<>(); + List childs = mongoTemplate.find(Query.query(Criteria.where("parentId").is(config.getId())), BasicConfig.class); + tempMap.put(config.getId(), childs); + parentMap.add(tempMap); + } else { + Map tempMap = new HashMap<>(); + tempMap.put(config.getId(), config); + map.add(tempMap); + } + } + logger.info("baseconfig 加载完成"); + } + + /** + * 删除平台缓存信息 + */ + public void deleteCache() { + this.map.clear(); + this.parentMap.clear(); + logger.info("baseconfig 清理完成"); + } + + /** + * 刷新缓存 + */ + public void flush() { + deleteCache(); + initCache(); + } + + /** + * 获取所有子级 + * @param parentId + * @return + */ + public List getChilds(String parentId) { + for (Map> listMap : parentMap) { + if(listMap.containsKey(parentId)) { + return listMap.get(parentId); + } + } + return null; + } + + /** + * + * @param parentId + * @return + */ + public List> getKvChilds(String parentId) { + return null; + } + + public BasicConfig getVal(String id){ + for (Map configMap : map) { + if(configMap.containsKey(id)) { + return configMap.get(id); + } + } + return null; + } +} diff --git a/platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/BabyPatientExtendEarServiceImpl.java b/platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/BabyPatientExtendEarServiceImpl.java index 9284dba..d716dd6 100644 --- a/platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/BabyPatientExtendEarServiceImpl.java +++ b/platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/BabyPatientExtendEarServiceImpl.java @@ -2,6 +2,8 @@ package com.lyms.platform.permission.service.impl; import com.lyms.platform.common.result.BaseObjectResponse; import com.lyms.platform.common.result.RespBuilder; +import com.lyms.platform.common.utils.SystemConfig; +import com.lyms.platform.permission.BasicConfigContainer; import com.lyms.platform.permission.dao.master.BabyPatientExtendEarMapper; import com.lyms.platform.permission.model.BabyPatientExtendEar; import com.lyms.platform.permission.model.BabyPatientExtendEarBirth; @@ -21,10 +23,14 @@ public class BabyPatientExtendEarServiceImpl implements BabyPatientExtendEarServ @Autowired private BabyPatientExtendEarMapper earMapper; + @Autowired + private BasicConfigContainer configContainer; + @Override public BaseObjectResponse insert(BabyPatientExtendEar ear, BabyPatientExtendEarBirth earBirth, BabyPatientExtendEarMother earMother, BabyPatientExtendEarFamily earFamily, Integer userId) { System.out.println("ear = [" + ear + "], earBirth = [" + earBirth + "], earMother = [" + earMother + "], earFamily = [" + earFamily + "], userId = [" + userId + "]"); + System.out.println(configContainer.getChilds(SystemConfig.CENSUS_TYPE_ID)); return RespBuilder.buildSuccess(); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CouponController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CouponController.java index 1ba7324..9f804bc 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CouponController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CouponController.java @@ -78,7 +78,6 @@ public class CouponController extends BaseController { public BaseObjectResponse testUse(@PathVariable String code, @PathVariable String hospitalId, HttpServletRequest request) { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); return couponService.use(code, hospitalId, loginState.getId()); -// return couponService.use(hospitalId, code, 110); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/platform/BaseConfigConstant.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/platform/BaseConfigConstant.java deleted file mode 100644 index 0b14734..0000000 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/platform/BaseConfigConstant.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.lyms.platform.operate.web.utils.platform; - -/** - * @Author: litao - * @Date: 2017/5/12 0012 15:03 - * @Version: V1.0 - */ -public interface BaseConfigConstant { -} diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/platform/BaseConfigUtil.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/platform/BaseConfigUtil.java deleted file mode 100644 index 925bd53..0000000 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/platform/BaseConfigUtil.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.lyms.platform.operate.web.utils.platform; - -import com.lyms.platform.pojo.BasicConfig; -import org.apache.struts.config.BaseConfig; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.mongodb.core.MongoTemplate; -import org.springframework.stereotype.Component; - -import javax.annotation.PostConstruct; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -/** - * @Author: litao - * @Date: 2017/5/12 0012 14:55 - * @Version: V1.0 - */ -@Component -public class BaseConfigUtil { - - private Logger logger = LoggerFactory.getLogger(BaseConfigUtil.class); - - @Autowired - private MongoTemplate mongoTemplate; - - /** 用于存储 k-v 的数据*/ - private List> maps = new ArrayList<>(); - - /** 用于存储 parent key 相同的数据 */ - private List>> parentMaps = new ArrayList<>(); - - - /** - * 初始平台缓存信息 - */ - @PostConstruct - public void initCache() { - List configs = mongoTemplate.findAll(BasicConfig.class); - - } - - /** - * 删除平台缓存信息 - */ - public void deleteCache() { - - } - -} -- 1.8.3.1