From cb61a84acbe4fd6b63fe51180c07b9e9fff787af Mon Sep 17 00:00:00 2001
From: zlyx <1242874891@qq.com>
Date: 星期三, 19 十月 2022 09:06:20 +0800
Subject: [PATCH] fix 修正 SysConfig, SysOss 方法内部调用导致缓存不生效 bug ;

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java |   20 +++++++++-----------
 1 files changed, 9 insertions(+), 11 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java
index 03a6cfc..6c63821 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java
@@ -4,12 +4,12 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.constant.CacheNames;
 import com.ruoyi.common.core.domain.PageQuery;
 import com.ruoyi.common.core.page.TableDataInfo;
 import com.ruoyi.common.exception.ServiceException;
 import com.ruoyi.common.utils.StringUtils;
-import com.ruoyi.common.utils.redis.RedisUtils;
-import com.ruoyi.oss.constant.OssConstant;
+import com.ruoyi.common.utils.spring.SpringUtils;
 import com.ruoyi.oss.core.OssClient;
 import com.ruoyi.oss.entity.UploadResult;
 import com.ruoyi.oss.factory.OssFactory;
@@ -19,11 +19,11 @@
 import com.ruoyi.system.mapper.SysOssMapper;
 import com.ruoyi.system.service.ISysOssService;
 import lombok.RequiredArgsConstructor;
+import org.springframework.cache.annotation.Cacheable;
 import org.springframework.stereotype.Service;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
-import java.time.Duration;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
@@ -51,13 +51,10 @@
     public List<SysOssVo> listByIds(Collection<Long> ossIds) {
         List<SysOssVo> list = new ArrayList<>();
         for (Long id : ossIds) {
-            String key = OssConstant.SYS_OSS_KEY + id;
-            SysOssVo vo = RedisUtils.getCacheObject(key);
-            if (ObjectUtil.isNull(vo)) {
-                vo = baseMapper.selectVoById(id);
-                RedisUtils.setCacheObject(key, vo, Duration.ofDays(30));
+            SysOssVo vo = SpringUtils.getAopProxy(this).getById(id);
+            if (ObjectUtil.isNotNull(vo)) {
+                list.add(vo);
             }
-            list.add(vo);
         }
         return list;
     }
@@ -76,9 +73,10 @@
         return lqw;
     }
 
+    @Cacheable(cacheNames = CacheNames.SYS_OSS, key = "#ossId")
     @Override
-    public SysOss getById(Long ossId) {
-        return baseMapper.selectById(ossId);
+    public SysOssVo getById(Long ossId) {
+        return baseMapper.selectVoById(ossId);
     }
 
     @Override

--
Gitblit v1.9.3