From 7aedb6253769c95943d863a4e20e1ff9a4080c38 Mon Sep 17 00:00:00 2001 From: hansson <447067298@qq.com> Date: Fri, 17 Jun 2022 16:41:34 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=907.2.3=E3=80=91=E5=AD=97=E5=85=B8?= =?UTF-8?q?=E7=BF=BB=E8=AF=91=E5=A2=9E=E5=8A=A0=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kernel-s-dict/dict-business/pom.xml | 6 ++++++ .../modular/service/impl/DictServiceImpl.java | 19 ++++++++++++++++++- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/kernel-s-dict/dict-business/pom.xml b/kernel-s-dict/dict-business/pom.xml index b22228eb0..b14d47b26 100644 --- a/kernel-s-dict/dict-business/pom.xml +++ b/kernel-s-dict/dict-business/pom.xml @@ -69,6 +69,12 @@ org.springframework.boot spring-boot-starter-web + + cn.stylefeng.roses + cache-api + 7.2.1 + compile + diff --git a/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/service/impl/DictServiceImpl.java b/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/service/impl/DictServiceImpl.java index a105d7888..a1d43038a 100644 --- a/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/service/impl/DictServiceImpl.java +++ b/kernel-s-dict/dict-business/src/main/java/cn/stylefeng/roses/kernel/dict/modular/service/impl/DictServiceImpl.java @@ -27,6 +27,7 @@ package cn.stylefeng.roses.kernel.dict.modular.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import cn.stylefeng.roses.kernel.cache.api.CacheOperatorApi; import cn.stylefeng.roses.kernel.db.api.factory.PageFactory; import cn.stylefeng.roses.kernel.db.api.factory.PageResultFactory; import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult; @@ -73,6 +74,12 @@ public class DictServiceImpl extends ServiceImpl implements @Resource private DictTypeService dictTypeService; + + @Resource + private CacheOperatorApi defaultStringMemoryCacheOperator; + + private static String CACHE_PREFIX = "dict:"; + @Override @Transactional(rollbackFor = Exception.class) public void add(DictRequest dictRequest) { @@ -94,6 +101,9 @@ public class DictServiceImpl extends ServiceImpl implements SysDict sysDict = this.querySysDict(dictRequest); sysDict.setDelFlag(YesOrNotEnum.Y.getCode()); this.updateById(sysDict); + + // 清除缓存中的字典值 + defaultStringMemoryCacheOperator.remove(CACHE_PREFIX + sysDict.getDictTypeCode() + "|" + sysDict.getDictCode()); } @Override @@ -112,6 +122,8 @@ public class DictServiceImpl extends ServiceImpl implements sysDict.setDictNamePinyin(pinYinApi.parseEveryPinyinFirstLetter(sysDict.getDictName())); this.updateById(sysDict); + // 清除缓存中的字典值 + defaultStringMemoryCacheOperator.remove(CACHE_PREFIX + sysDict.getDictTypeCode() + "|" + sysDict.getDictCode()); } @Override @@ -157,6 +169,10 @@ public class DictServiceImpl extends ServiceImpl implements @Override public String getDictName(String dictTypeCode, String dictCode) { + String dictName = defaultStringMemoryCacheOperator.get(CACHE_PREFIX + dictTypeCode + "|" + dictCode); + if(StrUtil.isNotEmpty(dictName)){ + return dictName; + } LambdaQueryWrapper sysDictLambdaQueryWrapper = new LambdaQueryWrapper<>(); sysDictLambdaQueryWrapper.eq(SysDict::getDictTypeCode, dictTypeCode); sysDictLambdaQueryWrapper.eq(SysDict::getDictCode, dictCode); @@ -175,7 +191,8 @@ public class DictServiceImpl extends ServiceImpl implements return StrUtil.EMPTY; } - String dictName = list.get(0).getDictName(); + dictName = list.get(0).getDictName(); + defaultStringMemoryCacheOperator.put(CACHE_PREFIX + dictTypeCode + "|" + dictCode, dictName); if (dictName != null) { return dictName; } else {