From a43e6e06e086e778e6ac3fdba7b5e8fafa090ed8 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期一, 17 一月 2022 12:03:15 +0800
Subject: [PATCH] update 优化多用户体系处理 更名 LoginUtils 为 LoginHelper 支持 LoginUser 多级缓存

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssConfigServiceImpl.java |   66 +++++++++++++++++---------------
 1 files changed, 35 insertions(+), 31 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssConfigServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssConfigServiceImpl.java
index df3f6d1..7700acf 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssConfigServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssConfigServiceImpl.java
@@ -5,17 +5,17 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.google.common.collect.Lists;
 import com.ruoyi.common.constant.UserConstants;
-import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
-import com.ruoyi.common.core.page.PagePlus;
+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.JsonUtils;
-import com.ruoyi.common.utils.PageUtils;
-import com.ruoyi.common.utils.RedisUtils;
 import com.ruoyi.common.utils.StringUtils;
-import com.ruoyi.oss.constant.CloudConstant;
+import com.ruoyi.common.utils.redis.RedisUtils;
+import com.ruoyi.oss.constant.OssConstant;
+import com.ruoyi.oss.factory.OssFactory;
 import com.ruoyi.system.domain.SysOssConfig;
 import com.ruoyi.system.domain.bo.SysOssConfigBo;
 import com.ruoyi.system.domain.vo.SysOssConfigVo;
@@ -23,11 +23,9 @@
 import com.ruoyi.system.service.ISysOssConfigService;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import javax.annotation.PostConstruct;
 import java.util.Collection;
 import java.util.List;
 
@@ -39,34 +37,40 @@
  * @date 2021-08-13
  */
 @Slf4j
-@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RequiredArgsConstructor
 @Service
-public class SysOssConfigServiceImpl extends ServicePlusImpl<SysOssConfigMapper, SysOssConfig, SysOssConfigVo> implements ISysOssConfigService {
+public class SysOssConfigServiceImpl implements ISysOssConfigService {
+
+    private final SysOssConfigMapper baseMapper;
 
     /**
      * 椤圭洰鍚姩鏃讹紝鍒濆鍖栧弬鏁板埌缂撳瓨锛屽姞杞介厤缃被
      */
-    @PostConstruct
+    @Override
     public void init() {
-        List<SysOssConfig> list = list();
+        List<SysOssConfig> list = baseMapper.selectList();
+        // 鍔犺浇OSS鍒濆鍖栭厤缃�
         for (SysOssConfig config : list) {
             String configKey = config.getConfigKey();
             if ("0".equals(config.getStatus())) {
-                RedisUtils.setCacheObject(CloudConstant.CACHE_CONFIG_KEY, configKey);
+                RedisUtils.setCacheObject(OssConstant.CACHE_CONFIG_KEY, configKey);
             }
             setConfigCache(true, config);
         }
+        // 鍒濆鍖朞SS宸ュ巶
+        OssFactory.init();
     }
 
     @Override
     public SysOssConfigVo queryById(Integer ossConfigId) {
-        return getVoById(ossConfigId);
+        return baseMapper.selectVoById(ossConfigId);
     }
 
     @Override
-    public TableDataInfo<SysOssConfigVo> queryPageList(SysOssConfigBo bo) {
-        PagePlus<SysOssConfig, SysOssConfigVo> result = pageVo(PageUtils.buildPagePlus(), buildQueryWrapper(bo));
-        return PageUtils.buildDataInfo(result);
+    public TableDataInfo<SysOssConfigVo> queryPageList(SysOssConfigBo bo, PageQuery pageQuery) {
+        LambdaQueryWrapper<SysOssConfig> lqw = buildQueryWrapper(bo);
+        Page<SysOssConfigVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
+        return TableDataInfo.build(result);
     }
 
 
@@ -82,7 +86,7 @@
     public Boolean insertByBo(SysOssConfigBo bo) {
         SysOssConfig config = BeanUtil.toBean(bo, SysOssConfig.class);
         validEntityBeforeSave(config);
-        return setConfigCache(save(config), config);
+        return setConfigCache(baseMapper.insert(config) > 0, config);
     }
 
     @Override
@@ -94,7 +98,7 @@
         luw.set(StringUtils.isBlank(config.getRegion()), SysOssConfig::getRegion, "");
         luw.set(StringUtils.isBlank(config.getExt1()), SysOssConfig::getExt1, "");
         luw.eq(SysOssConfig::getOssConfigId, config.getOssConfigId());
-        return setConfigCache(update(config, luw), config);
+        return setConfigCache(baseMapper.update(config, luw) > 0, config);
     }
 
     /**
@@ -102,7 +106,7 @@
      */
     private void validEntityBeforeSave(SysOssConfig entity) {
         if (StringUtils.isNotEmpty(entity.getConfigKey())
-                && UserConstants.NOT_UNIQUE.equals(checkConfigKeyUnique(entity))) {
+            && UserConstants.NOT_UNIQUE.equals(checkConfigKeyUnique(entity))) {
             throw new ServiceException("鎿嶄綔閰嶇疆'" + entity.getConfigKey() + "'澶辫触, 閰嶇疆key宸插瓨鍦�!");
         }
     }
@@ -110,16 +114,16 @@
     @Override
     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
         if (isValid) {
-            if (CollUtil.containsAny(ids, CloudConstant.SYSTEM_DATA_IDS)) {
+            if (CollUtil.containsAny(ids, OssConstant.SYSTEM_DATA_IDS)) {
                 throw new ServiceException("绯荤粺鍐呯疆, 涓嶅彲鍒犻櫎!");
             }
         }
         List<SysOssConfig> list = Lists.newArrayList();
         for (Long configId : ids) {
-            SysOssConfig config = getById(configId);
+            SysOssConfig config = baseMapper.selectById(configId);
             list.add(config);
         }
-        boolean flag = removeByIds(ids);
+        boolean flag = baseMapper.deleteBatchIds(ids) > 0;
         if (flag) {
             list.stream().forEach(sysOssConfig -> {
                 RedisUtils.deleteObject(getCacheKey(sysOssConfig.getConfigKey()));
@@ -133,9 +137,9 @@
      */
     private String checkConfigKeyUnique(SysOssConfig sysOssConfig) {
         long ossConfigId = StringUtils.isNull(sysOssConfig.getOssConfigId()) ? -1L : sysOssConfig.getOssConfigId();
-        SysOssConfig info = getOne(new LambdaQueryWrapper<SysOssConfig>()
-                .select(SysOssConfig::getOssConfigId, SysOssConfig::getConfigKey)
-                .eq(SysOssConfig::getConfigKey, sysOssConfig.getConfigKey()));
+        SysOssConfig info = baseMapper.selectOne(new LambdaQueryWrapper<SysOssConfig>()
+            .select(SysOssConfig::getOssConfigId, SysOssConfig::getConfigKey)
+            .eq(SysOssConfig::getConfigKey, sysOssConfig.getConfigKey()));
         if (StringUtils.isNotNull(info) && info.getOssConfigId() != ossConfigId) {
             return UserConstants.NOT_UNIQUE;
         }
@@ -150,10 +154,10 @@
     public int updateOssConfigStatus(SysOssConfigBo bo) {
         SysOssConfig sysOssConfig = BeanUtil.toBean(bo, SysOssConfig.class);
         int row = baseMapper.update(null, new LambdaUpdateWrapper<SysOssConfig>()
-                .set(SysOssConfig::getStatus, "1"));
+            .set(SysOssConfig::getStatus, "1"));
         row += baseMapper.updateById(sysOssConfig);
         if (row > 0) {
-            RedisUtils.setCacheObject(CloudConstant.CACHE_CONFIG_KEY, sysOssConfig.getConfigKey());
+            RedisUtils.setCacheObject(OssConstant.CACHE_CONFIG_KEY, sysOssConfig.getConfigKey());
         }
         return row;
     }
@@ -165,7 +169,7 @@
      * @return 缂撳瓨閿甼ey
      */
     private String getCacheKey(String configKey) {
-        return CloudConstant.SYS_OSS_KEY + configKey;
+        return OssConstant.SYS_OSS_KEY + configKey;
     }
 
     /**
@@ -178,9 +182,9 @@
     private boolean setConfigCache(boolean flag, SysOssConfig config) {
         if (flag) {
             RedisUtils.setCacheObject(
-                    getCacheKey(config.getConfigKey()),
-                    JsonUtils.toJsonString(config));
-            RedisUtils.publish(CloudConstant.CACHE_CONFIG_KEY, config.getConfigKey(), msg -> {
+                getCacheKey(config.getConfigKey()),
+                JsonUtils.toJsonString(config));
+            RedisUtils.publish(OssConstant.CACHE_CONFIG_KEY, config.getConfigKey(), msg -> {
                 log.info("鍙戝竷鍒锋柊OSS閰嶇疆 => " + msg);
             });
         }

--
Gitblit v1.9.3