From d0b21665257834616240a85f90707651f9e03680 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子li <15040126243@163.com> Date: 星期五, 28 五月 2021 10:07:15 +0800 Subject: [PATCH] Merge branch 'master' of https://gitee.com/y_project/RuoYi-Vue into dev --- ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysConfigServiceImpl.java | 48 ++++++++++++++++++++++++++++++++++-------------- 1 files changed, 34 insertions(+), 14 deletions(-) diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysConfigServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysConfigServiceImpl.java index 7c76c57..721ce59 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysConfigServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysConfigServiceImpl.java @@ -33,7 +33,10 @@ @Service public class SysConfigServiceImpl extends ServiceImpl<SysConfigMapper, SysConfig> implements ISysConfigService { - @Autowired + @Autowired + private SysConfigMapper configMapper; + + @Autowired private RedisCache redisCache; /** @@ -41,10 +44,7 @@ */ @PostConstruct public void init() { - List<SysConfig> configsList = baseMapper.selectList(new LambdaQueryWrapper<>()); - for (SysConfig config : configsList) { - redisCache.setCacheObject(getCacheKey(config.getConfigKey()), config.getConfigValue()); - } + loadingConfigCache(); } @Override @@ -155,31 +155,51 @@ * @return 缁撴灉 */ @Override - public int deleteConfigByIds(Long[] configIds) { + public void deleteConfigByIds(Long[] configIds) { for (Long configId : configIds) { SysConfig config = selectConfigById(configId); if (StrUtil.equals(UserConstants.YES, config.getConfigType())) { throw new CustomException(String.format("鍐呯疆鍙傛暟銆�%1$s銆戜笉鑳藉垹闄� ", config.getConfigKey())); } + configMapper.deleteConfigById(configId); + redisCache.deleteObject(getCacheKey(config.getConfigKey())); } - int count = baseMapper.deleteBatchIds(Arrays.asList(configIds)); - if (count > 0) { - Collection<String> keys = redisCache.keys(Constants.SYS_CONFIG_KEY + "*"); - redisCache.deleteObject(keys); - } - return count; } /** - * 娓呯┖缂撳瓨鏁版嵁 + * 鍔犺浇鍙傛暟缂撳瓨鏁版嵁 */ @Override - public void clearCache() { + public void loadingConfigCache() + { + List<SysConfig> configsList = configMapper.selectConfigList(new SysConfig()); + for (SysConfig config : configsList) + { + redisCache.setCacheObject(getCacheKey(config.getConfigKey()), config.getConfigValue()); + } + } + + /** + * 娓呯┖鍙傛暟缂撳瓨鏁版嵁 + */ + @Override + public void clearConfigCache() + { Collection<String> keys = redisCache.keys(Constants.SYS_CONFIG_KEY + "*"); redisCache.deleteObject(keys); } /** + * 閲嶇疆鍙傛暟缂撳瓨鏁版嵁 + */ + @Override + public void resetConfigCache() + { + clearConfigCache(); + loadingConfigCache(); + } + + /** * 鏍¢獙鍙傛暟閿悕鏄惁鍞竴 * * @param config 鍙傛暟閰嶇疆淇℃伅 -- Gitblit v1.9.3