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 {