From ac6fe634dc6db33818c17a76b7271f166b2edeb1 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期二, 21 十一月 2023 14:57:00 +0800 Subject: [PATCH] update 优化 使用动态租户重构业务对租户的逻辑 --- ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java | 35 ++++++++++++++++++++--------------- 1 files changed, 20 insertions(+), 15 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java index 2c4d1ea..df5e23c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysOssConfigServiceImpl.java @@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.constant.CacheNames; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.MapstructUtils; @@ -24,8 +26,6 @@ import org.dromara.system.domain.vo.SysOssConfigVo; import org.dromara.system.mapper.SysOssConfigMapper; import org.dromara.system.service.ISysOssConfigService; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -52,23 +52,23 @@ */ @Override public void init() { - TenantHelper.enableIgnore(); - List<SysOssConfig> list = baseMapper.selectList( - new LambdaQueryWrapper<SysOssConfig>().orderByAsc(TenantEntity::getTenantId)); - TenantHelper.disableIgnore(); + List<SysOssConfig> list = TenantHelper.ignore(() -> + baseMapper.selectList( + new LambdaQueryWrapper<SysOssConfig>().orderByAsc(TenantEntity::getTenantId)) + ); Map<String, List<SysOssConfig>> map = StreamUtils.groupByKey(list, SysOssConfig::getTenantId); for (String tenantId : map.keySet()) { - TenantHelper.setDynamic(tenantId); - // 鍔犺浇OSS鍒濆鍖栭厤缃� - for (SysOssConfig config : map.get(tenantId)) { - String configKey = config.getConfigKey(); - if ("0".equals(config.getStatus())) { - RedisUtils.setCacheObject(OssConstant.DEFAULT_CONFIG_KEY, configKey); + TenantHelper.dynamic(tenantId, () -> { + // 鍔犺浇OSS鍒濆鍖栭厤缃� + for (SysOssConfig config : map.get(tenantId)) { + String configKey = config.getConfigKey(); + if ("0".equals(config.getStatus())) { + RedisUtils.setCacheObject(OssConstant.DEFAULT_CONFIG_KEY, configKey); + } + CacheUtils.put(CacheNames.SYS_OSS_CONFIG, config.getConfigKey(), JsonUtils.toJsonString(config)); } - CacheUtils.put(CacheNames.SYS_OSS_CONFIG, config.getConfigKey(), JsonUtils.toJsonString(config)); - } + }); } - TenantHelper.clearDynamic(); } @Override @@ -89,6 +89,7 @@ lqw.eq(StringUtils.isNotBlank(bo.getConfigKey()), SysOssConfig::getConfigKey, bo.getConfigKey()); lqw.like(StringUtils.isNotBlank(bo.getBucketName()), SysOssConfig::getBucketName, bo.getBucketName()); lqw.eq(StringUtils.isNotBlank(bo.getStatus()), SysOssConfig::getStatus, bo.getStatus()); + lqw.orderByAsc(SysOssConfig::getOssConfigId); return lqw; } @@ -98,6 +99,8 @@ validEntityBeforeSave(config); boolean flag = baseMapper.insert(config) > 0; if (flag) { + // 浠庢暟鎹簱鏌ヨ瀹屾暣鐨勬暟鎹仛缂撳瓨 + config = baseMapper.selectById(config.getOssConfigId()); CacheUtils.put(CacheNames.SYS_OSS_CONFIG, config.getConfigKey(), JsonUtils.toJsonString(config)); } return flag; @@ -115,6 +118,8 @@ luw.eq(SysOssConfig::getOssConfigId, config.getOssConfigId()); boolean flag = baseMapper.update(config, luw) > 0; if (flag) { + // 浠庢暟鎹簱鏌ヨ瀹屾暣鐨勬暟鎹仛缂撳瓨 + config = baseMapper.selectById(config.getOssConfigId()); CacheUtils.put(CacheNames.SYS_OSS_CONFIG, config.getConfigKey(), JsonUtils.toJsonString(config)); } return flag; -- Gitblit v1.9.3