From 9ed5b521d613edb51b160cca931ee680019e2896 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期二, 07 三月 2023 22:26:13 +0800 Subject: [PATCH] fix 修复 用户密码暴露问题 --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java | 56 ++++++++++++++++---------------------------------------- 1 files changed, 16 insertions(+), 40 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java index aae3159..c0f68c3 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java @@ -1,7 +1,6 @@ package com.ruoyi.system.service.impl; import cn.dev33.satoken.context.SaHolder; -import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -10,17 +9,17 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.core.constant.CacheConstants; import com.ruoyi.common.core.constant.CacheNames; -import com.ruoyi.common.core.constant.UserConstants; -import com.ruoyi.common.mybatis.core.page.PageQuery; -import com.ruoyi.common.core.service.DictService; -import com.ruoyi.system.domain.SysDictData; -import com.ruoyi.system.domain.SysDictType; -import com.ruoyi.common.mybatis.core.page.TableDataInfo; import com.ruoyi.common.core.exception.ServiceException; +import com.ruoyi.common.core.service.DictService; +import com.ruoyi.common.core.utils.MapstructUtils; +import com.ruoyi.common.core.utils.SpringUtils; import com.ruoyi.common.core.utils.StreamUtils; import com.ruoyi.common.core.utils.StringUtils; +import com.ruoyi.common.mybatis.core.page.PageQuery; +import com.ruoyi.common.mybatis.core.page.TableDataInfo; import com.ruoyi.common.redis.utils.CacheUtils; -import com.ruoyi.common.core.utils.SpringUtils; +import com.ruoyi.system.domain.SysDictData; +import com.ruoyi.system.domain.SysDictType; import com.ruoyi.system.domain.bo.SysDictTypeBo; import com.ruoyi.system.domain.vo.SysDictDataVo; import com.ruoyi.system.domain.vo.SysDictTypeVo; @@ -33,7 +32,10 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.*; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.Map; import java.util.stream.Collectors; /** @@ -146,34 +148,11 @@ } /** - * 鍔犺浇瀛楀吀缂撳瓨鏁版嵁 - */ - @Override - public void loadingDictCache() { - List<SysDictDataVo> dictDataList = dictDataMapper.selectVoList( - new LambdaQueryWrapper<SysDictData>().eq(SysDictData::getStatus, UserConstants.DICT_NORMAL)); - Map<String, List<SysDictDataVo>> dictDataMap = StreamUtils.groupByKey(dictDataList, SysDictDataVo::getDictType); - dictDataMap.forEach((k,v) -> { - List<SysDictDataVo> dictList = StreamUtils.sorted(v, Comparator.comparing(SysDictDataVo::getDictSort)); - CacheUtils.put(CacheNames.SYS_DICT, k, dictList); - }); - } - - /** - * 娓呯┖瀛楀吀缂撳瓨鏁版嵁 - */ - @Override - public void clearDictCache() { - CacheUtils.clear(CacheNames.SYS_DICT); - } - - /** * 閲嶇疆瀛楀吀缂撳瓨鏁版嵁 */ @Override public void resetDictCache() { - clearDictCache(); - loadingDictCache(); + CacheUtils.clear(CacheNames.SYS_DICT); } /** @@ -185,7 +164,7 @@ @CachePut(cacheNames = CacheNames.SYS_DICT, key = "#bo.dictType") @Override public List<SysDictTypeVo> insertDictType(SysDictTypeBo bo) { - SysDictType dict = BeanUtil.toBean(bo, SysDictType.class); + SysDictType dict = MapstructUtils.convert(bo, SysDictType.class); int row = baseMapper.insert(dict); if (row > 0) { return new ArrayList<>(); @@ -203,7 +182,7 @@ @Override @Transactional(rollbackFor = Exception.class) public List<SysDictDataVo> updateDictType(SysDictTypeBo bo) { - SysDictType dict = BeanUtil.toBean(bo, SysDictType.class); + SysDictType dict = MapstructUtils.convert(bo, SysDictType.class); SysDictType oldDict = baseMapper.selectById(dict.getDictId()); dictDataMapper.update(null, new LambdaUpdateWrapper<SysDictData>() .set(SysDictData::getDictType, dict.getDictType()) @@ -223,14 +202,11 @@ * @return 缁撴灉 */ @Override - public String checkDictTypeUnique(SysDictTypeBo dictType) { + public boolean checkDictTypeUnique(SysDictTypeBo dictType) { boolean exist = baseMapper.exists(new LambdaQueryWrapper<SysDictType>() .eq(SysDictType::getDictType, dictType.getDictType()) .ne(ObjectUtil.isNotNull(dictType.getDictId()), SysDictType::getDictId, dictType.getDictId())); - if (exist) { - return UserConstants.NOT_UNIQUE; - } - return UserConstants.UNIQUE; + return !exist; } /** -- Gitblit v1.9.3