ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDictDataMapper.java
@@ -1,7 +1,10 @@ package com.ruoyi.system.mapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ruoyi.common.core.domain.entity.SysDictData; import com.ruoyi.common.core.page.BaseMapperPlus; import java.util.List; /** * 字典表 数据层 @@ -10,4 +13,11 @@ */ public interface SysDictDataMapper extends BaseMapperPlus<SysDictData> { default List<SysDictData> selectDictDataByType(String dictType) { return selectList( new LambdaQueryWrapper<SysDictData>() .eq(SysDictData::getStatus, "0") .eq(SysDictData::getDictType, dictType) .orderByAsc(SysDictData::getDictSort)); } } ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysConfigServiceImpl.java
@@ -20,7 +20,6 @@ import org.springframework.stereotype.Service; import javax.annotation.PostConstruct; import java.util.Arrays; import java.util.Collection; import java.util.List; import java.util.Map; @@ -161,7 +160,7 @@ if (StrUtil.equals(UserConstants.YES, config.getConfigType())) { throw new CustomException(String.format("内置参数【%1$s】不能删除 ", config.getConfigKey())); } configMapper.deleteConfigById(configId); configMapper.deleteById(configId); redisCache.deleteObject(getCacheKey(config.getConfigKey())); } } @@ -170,11 +169,9 @@ * 加载参数缓存数据 */ @Override public void loadingConfigCache() { List<SysConfig> configsList = configMapper.selectConfigList(new SysConfig()); for (SysConfig config : configsList) { public void loadingConfigCache() { List<SysConfig> configsList = selectConfigList(new SysConfig()); for (SysConfig config : configsList) { redisCache.setCacheObject(getCacheKey(config.getConfigKey()), config.getConfigValue()); } } @@ -183,8 +180,7 @@ * 清空参数缓存数据 */ @Override public void clearConfigCache() { public void clearConfigCache() { Collection<String> keys = redisCache.keys(Constants.SYS_CONFIG_KEY + "*"); redisCache.deleteObject(keys); } @@ -193,8 +189,7 @@ * 重置参数缓存数据 */ @Override public void resetConfigCache() { public void resetConfigCache() { clearConfigCache(); loadingConfigCache(); } ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictDataServiceImpl.java
@@ -11,7 +11,6 @@ import com.ruoyi.system.service.ISysDictDataService; import org.springframework.stereotype.Service; import java.util.Arrays; import java.util.List; /** @@ -21,9 +20,6 @@ */ @Service public class SysDictDataServiceImpl extends ServiceImpl<SysDictDataMapper, SysDictData> implements ISysDictDataService { @Autowired private SysDictDataMapper dictDataMapper; @Override public TableDataInfo<SysDictData> selectPageDictDataList(SysDictData dictData) { @@ -84,13 +80,11 @@ * @return 结果 */ @Override public void deleteDictDataByIds(Long[] dictCodes) { for (Long dictCode : dictCodes) { public void deleteDictDataByIds(Long[] dictCodes) { for (Long dictCode : dictCodes) { SysDictData data = selectDictDataById(dictCode); dictDataMapper.deleteDictDataById(dictCode); List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType(data.getDictType()); baseMapper.deleteById(dictCode); List<SysDictData> dictDatas = baseMapper.selectDictDataByType(data.getDictType()); DictUtils.setDictCache(data.getDictType(), dictDatas); } } @@ -102,12 +96,10 @@ * @return 结果 */ @Override public int insertDictData(SysDictData data) { public int insertDictData(SysDictData data) { int row = baseMapper.insert(data); if (row > 0) { List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType(data.getDictType()); if (row > 0) { List<SysDictData> dictDatas = baseMapper.selectDictDataByType(data.getDictType()); DictUtils.setDictCache(data.getDictType(), dictDatas); } return row; @@ -120,12 +112,10 @@ * @return 结果 */ @Override public int updateDictData(SysDictData data) { public int updateDictData(SysDictData data) { int row = baseMapper.updateById(data); if (row > 0) { List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType(data.getDictType()); if (row > 0) { List<SysDictData> dictDatas = baseMapper.selectDictDataByType(data.getDictType()); DictUtils.setDictCache(data.getDictType(), dictDatas); } return row; ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java
@@ -21,7 +21,6 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.PostConstruct; import java.util.Arrays; import java.util.List; import java.util.Map; @@ -106,10 +105,7 @@ if (CollUtil.isNotEmpty(dictDatas)) { return dictDatas; } dictDatas = dictDataMapper.selectList(new LambdaQueryWrapper<SysDictData>() .eq(SysDictData::getStatus, 0) .eq(SysDictData::getDictType, dictType) .orderByAsc(SysDictData::getDictSort)); dictDatas = dictDataMapper.selectDictDataByType(dictType); if (CollUtil.isNotEmpty(dictDatas)) { DictUtils.setDictCache(dictType, dictDatas); return dictDatas; @@ -153,7 +149,7 @@ .eq(SysDictData::getDictType, dictType.getDictType())) > 0) { throw new CustomException(String.format("%1$s已分配,不能删除", dictType.getDictName())); } dictTypeMapper.deleteDictTypeById(dictId); dictTypeMapper.deleteById(dictId); DictUtils.removeDictCache(dictType.getDictType()); } } @@ -161,11 +157,10 @@ /** * 加载字典缓存数据 */ public void loadingDictCache() { List<SysDictType> dictTypeList = dictTypeMapper.selectDictTypeAll(); for (SysDictType dictType : dictTypeList) { @Override public void loadingDictCache() { List<SysDictType> dictTypeList = list(); for (SysDictType dictType : dictTypeList) { List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType(dictType.getDictType()); DictUtils.setDictCache(dictType.getDictType(), dictDatas); } @@ -174,16 +169,16 @@ /** * 清空字典缓存数据 */ public void clearDictCache() { @Override public void clearDictCache() { DictUtils.clearDictCache(); } /** * 重置字典缓存数据 */ public void resetDictCache() { @Override public void resetDictCache() { clearDictCache(); loadingDictCache(); } @@ -205,20 +200,19 @@ /** * 修改保存字典类型信息 * * @param dict 字典类型信息 * @return 结果 */ @Override @Transactional public int updateDictType(SysDictType dict) { public int updateDictType(SysDictType dict) { SysDictType oldDict = getById(dict.getDictId()); dictDataMapper.update(null, new LambdaUpdateWrapper<SysDictData>() .set(SysDictData::getDictType, dict.getDictType()) .eq(SysDictData::getDictType, oldDict.getDictType())); int row = baseMapper.updateById(dict); if (row > 0) { if (row > 0) { List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType(dict.getDictType()); DictUtils.setDictCache(dict.getDictType(), dictDatas); }