From 5e532e7c3217cf487c9f299835baf5173071c35a Mon Sep 17 00:00:00 2001 From: lijiarao Date: Fri, 10 Nov 2023 17:06:13 +0800 Subject: [PATCH] =?UTF-8?q?fix=2077980=20=E6=A0=87=E7=AD=BE=E9=A1=B9?= =?UTF-8?q?=E7=AE=A1=E7=90=86--=E5=B1=95=E7=A4=BA=E5=8C=BA=E5=9F=9F?= =?UTF-8?q?=E7=AE=A1=E7=90=86=20=E4=BF=AE=E6=94=B9=E5=B1=95=E7=A4=BA?= =?UTF-8?q?=E5=8C=BA=E5=9F=9F=E5=90=8E=EF=BC=8C=E4=BD=BF=E7=94=A8=E8=AF=A5?= =?UTF-8?q?=E5=B1=95=E7=A4=BA=E5=8C=BA=E5=9F=9F=E7=9A=84=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=EF=BC=8C=E6=B2=A1=E6=9C=89=E8=87=AA=E5=8A=A8=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/jero/common/aspect/DictAspect.java | 5 +-- .../jero/common/constant/CacheConstant.java | 4 +++ .../tag/controller/LawsAreaController.java | 33 ++++++++++++------- 3 files changed, 28 insertions(+), 14 deletions(-) diff --git a/laws-base/laws-base-core/src/main/java/com/jero/common/aspect/DictAspect.java b/laws-base/laws-base-core/src/main/java/com/jero/common/aspect/DictAspect.java index cfee6f45..f153f9cb 100644 --- a/laws-base/laws-base-core/src/main/java/com/jero/common/aspect/DictAspect.java +++ b/laws-base/laws-base-core/src/main/java/com/jero/common/aspect/DictAspect.java @@ -11,6 +11,7 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.jero.common.api.CommonAPI; import com.jero.common.api.vo.Result; import com.jero.common.aspect.annotation.Dict; +import com.jero.common.constant.CacheConstant; import com.jero.common.constant.CommonConstant; import com.jero.common.system.vo.DictModel; import com.jero.common.util.oConvertUtils; @@ -299,7 +300,7 @@ public class DictAspect { private void setRedis(String dictCode, List texts) { // 做 redis 缓存 for (DictModel dict : texts) { - String redisKey = String.format("sys:cache:dictTable::SimpleKey [%s,%s]", dictCode, dict.getValue()); + String redisKey = String.format(CacheConstant.SYS_DICT_TABLE_CACHE_SIMPLE_KEY, dictCode, dict.getValue()); try { // 保留10分钟 redisTemplate.opsForValue().set(redisKey, dict.getText(), 600, TimeUnit.SECONDS); @@ -316,7 +317,7 @@ public class DictAspect { continue; //跳过循环 } if (dictCode.contains(",")) { - String keyString = String.format("sys:cache:dictTable::SimpleKey [%s,%s]", dictCode, data); + String keyString = String.format(CacheConstant.SYS_DICT_TABLE_CACHE_SIMPLE_KEY, dictCode, data); if (Boolean.TRUE.equals(redisTemplate.hasKey(keyString))) { addList(translText, dictCode, data, keyString); } else if (!needTranslDataTable.contains(data)) { diff --git a/laws-base/laws-base-tools/src/main/java/com/jero/common/constant/CacheConstant.java b/laws-base/laws-base-tools/src/main/java/com/jero/common/constant/CacheConstant.java index add22ee7..cbc7686d 100644 --- a/laws-base/laws-base-tools/src/main/java/com/jero/common/constant/CacheConstant.java +++ b/laws-base/laws-base-tools/src/main/java/com/jero/common/constant/CacheConstant.java @@ -1,5 +1,7 @@ package com.jero.common.constant; +import org.springframework.cache.interceptor.SimpleKey; + /** * @author: huangxutao * @date: 2019-06-14 @@ -26,6 +28,8 @@ public class CacheConstant { public static final String SYS_DICT_TABLE_CACHE = "sys:cache:dictTable"; public static final String SYS_DICT_TABLE_BY_KEYS_CACHE = SYS_DICT_TABLE_CACHE + "ByKeys"; + public static final String SYS_DICT_TABLE_CACHE_SIMPLE_KEY = SYS_DICT_TABLE_CACHE + "::SimpleKey [%s,%s]"; + /** * 数据权限配置缓存 */ diff --git a/laws-modules/src/main/java/com/jero/modules/tag/controller/LawsAreaController.java b/laws-modules/src/main/java/com/jero/modules/tag/controller/LawsAreaController.java index 3949f3da..ffeda37a 100644 --- a/laws-modules/src/main/java/com/jero/modules/tag/controller/LawsAreaController.java +++ b/laws-modules/src/main/java/com/jero/modules/tag/controller/LawsAreaController.java @@ -4,8 +4,10 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.jero.common.api.vo.Result; import com.jero.common.aspect.annotation.AutoLog; +import com.jero.common.constant.CacheConstant; import com.jero.common.system.base.controller.JeroController; import com.jero.common.api.vo.ResultCommon; +import com.jero.common.util.RedisUtil; import com.jero.modules.system.service.ISysDictItemService; import com.jero.modules.tag.entity.LawsArea; import com.jero.modules.tag.service.ILawsAreaService; @@ -44,6 +46,10 @@ public class LawsAreaController extends JeroController edit(@Validated @RequestBody LawsArea lawsArea) { - QueryWrapper queryWrapper=new QueryWrapper<>(); - queryWrapper.eq("show_area", lawsArea.getShowArea()).eq("is_model", lawsArea.getIsModel()); - List existAreaList= lawsAreaService.list(queryWrapper); - if(!existAreaList.isEmpty()){//有同名数据 - if(existAreaList.get(0).getId().equals(lawsArea.getId())) {//已存在同名的数据,就是正在编辑的这个 - lawsAreaService.editById(lawsArea); - return Result.OK(ResultCommon.EDIT_OK); - }else { - return Result.error(ResultCommon.TAG_ERROR_1); - } - }else { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("show_area", lawsArea.getShowArea()).eq("is_model", lawsArea.getIsModel()); + List existAreaList = lawsAreaService.list(queryWrapper); + //有同名数据 + if (!existAreaList.isEmpty()) { + //已存在同名的数据,就是正在编辑的这个 + if (existAreaList.get(0).getId().equals(lawsArea.getId())) { + lawsAreaService.editById(lawsArea); + } else { + return Result.error(ResultCommon.TAG_ERROR_1); + } + } else { lawsAreaService.editById(lawsArea); - return Result.OK(ResultCommon.EDIT_OK); } + //编辑后要清除redis缓存 + redisUtil.del(String.format(CacheConstant.SYS_DICT_TABLE_CACHE_SIMPLE_KEY,REDIS_KEY,lawsArea.getId())); + return Result.OK(ResultCommon.EDIT_OK); } /**