From 7f71993050a4a33031ede85eb88c2aba62dc088a Mon Sep 17 00:00:00 2001
From: aijinhui <aijinhui>
Date: Sat, 23 Dec 2023 14:47:25 +0800
Subject: [PATCH] 权限
---
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java | 111 ++++++++++++++++++++++++++++---------------------------
1 files changed, 56 insertions(+), 55 deletions(-)
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java
index a06b236..d0ddbf2 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java
@@ -5,6 +5,8 @@
import java.util.Map;
import java.util.stream.Collectors;
import javax.annotation.PostConstruct;
+
+import com.ruoyi.common.utils.MessageUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -20,12 +22,11 @@
/**
* 字典 业务层处理
- *
+ *
* @author ruoyi
*/
@Service
-public class SysDictTypeServiceImpl implements ISysDictTypeService
-{
+public class SysDictTypeServiceImpl implements ISysDictTypeService {
@Autowired
private SysDictTypeMapper dictTypeMapper;
@@ -36,52 +37,60 @@
* 项目启动时,初始化字典到缓存
*/
@PostConstruct
- public void init()
- {
+ public void init() {
loadingDictCache();
}
/**
* 根据条件分页查询字典类型
- *
+ *
* @param dictType 字典类型信息
* @return 字典类型集合信息
*/
@Override
- public List<SysDictType> selectDictTypeList(SysDictType dictType)
- {
+ public List<SysDictType> selectDictTypeList(SysDictType dictType) {
List<SysDictType> sysDictTypes = dictTypeMapper.selectDictTypeList(dictType);
+ //国际化
+ sysDictTypes.stream().forEach(sysDictType -> {
+ String message = MessageUtils.message("dic.type." + sysDictType.getDictNameI18n());
+ if (StringUtils.isNotEmpty(message)) {
+ sysDictType.setDictName(message);
+ }
+ });
return sysDictTypes;
}
/**
* 根据所有字典类型
- *
+ *
* @return 字典类型集合信息
*/
@Override
- public List<SysDictType> selectDictTypeAll()
- {
+ public List<SysDictType> selectDictTypeAll() {
return dictTypeMapper.selectDictTypeAll();
}
/**
* 根据字典类型查询字典数据
- *
+ *
* @param dictType 字典类型
* @return 字典数据集合信息
*/
@Override
- public List<SysDictData> selectDictDataByType(String dictType)
- {
+ public List<SysDictData> selectDictDataByType(String dictType) {
List<SysDictData> dictDatas = DictUtils.getDictCache(dictType);
- if (StringUtils.isNotEmpty(dictDatas))
- {
+ if (StringUtils.isNotEmpty(dictDatas)) {
+ //国际化
+ dictDatas.stream().forEach(dictData -> {
+ String message = MessageUtils.message("dic.data." + dictData.getDictLabelI18n());
+ if (StringUtils.isNotEmpty(message)) {
+ dictData.setDictLabel(message);
+ }
+ });
return dictDatas;
}
dictDatas = dictDataMapper.selectDictDataByType(dictType);
- if (StringUtils.isNotEmpty(dictDatas))
- {
+ if (StringUtils.isNotEmpty(dictDatas)) {
DictUtils.setDictCache(dictType, dictDatas);
return dictDatas;
}
@@ -90,41 +99,43 @@
/**
* 根据字典类型ID查询信息
- *
+ *
* @param dictId 字典类型ID
* @return 字典类型
*/
@Override
- public SysDictType selectDictTypeById(Long dictId)
- {
- return dictTypeMapper.selectDictTypeById(dictId);
+ public SysDictType selectDictTypeById(Long dictId) {
+ SysDictType sysDictType = dictTypeMapper.selectDictTypeById(dictId);
+ //国际化
+ String message = MessageUtils.message("dic.type." + sysDictType.getDictNameI18n());
+ if(StringUtils.isNotEmpty(message))
+ {
+ sysDictType.setDictName(message);
+ }
+ return sysDictType;
}
/**
* 根据字典类型查询信息
- *
+ *
* @param dictType 字典类型
* @return 字典类型
*/
@Override
- public SysDictType selectDictTypeByType(String dictType)
- {
+ public SysDictType selectDictTypeByType(String dictType) {
return dictTypeMapper.selectDictTypeByType(dictType);
}
/**
* 批量删除字典类型信息
- *
+ *
* @param dictIds 需要删除的字典ID
*/
@Override
- public void deleteDictTypeByIds(Long[] dictIds)
- {
- for (Long dictId : dictIds)
- {
+ public void deleteDictTypeByIds(Long[] dictIds) {
+ for (Long dictId : dictIds) {
SysDictType dictType = selectDictTypeById(dictId);
- if (dictDataMapper.countDictDataByType(dictType.getDictType()) > 0)
- {
+ if (dictDataMapper.countDictDataByType(dictType.getDictType()) > 0) {
throw new ServiceException(String.format("%1$s已分配,不能删除", dictType.getDictName()));
}
dictTypeMapper.deleteDictTypeById(dictId);
@@ -136,13 +147,11 @@
* 加载字典缓存数据
*/
@Override
- public void loadingDictCache()
- {
+ public void loadingDictCache() {
SysDictData dictData = new SysDictData();
dictData.setStatus("0");
Map<String, List<SysDictData>> dictDataMap = dictDataMapper.selectDictDataList(dictData).stream().collect(Collectors.groupingBy(SysDictData::getDictType));
- for (Map.Entry<String, List<SysDictData>> entry : dictDataMap.entrySet())
- {
+ for (Map.Entry<String, List<SysDictData>> entry : dictDataMap.entrySet()) {
DictUtils.setDictCache(entry.getKey(), entry.getValue().stream().sorted(Comparator.comparing(SysDictData::getDictSort)).collect(Collectors.toList()));
}
}
@@ -151,8 +160,7 @@
* 清空字典缓存数据
*/
@Override
- public void clearDictCache()
- {
+ public void clearDictCache() {
DictUtils.clearDictCache();
}
@@ -160,24 +168,21 @@
* 重置字典缓存数据
*/
@Override
- public void resetDictCache()
- {
+ public void resetDictCache() {
clearDictCache();
loadingDictCache();
}
/**
* 新增保存字典类型信息
- *
+ *
* @param dict 字典类型信息
* @return 结果
*/
@Override
- public int insertDictType(SysDictType dict)
- {
+ public int insertDictType(SysDictType dict) {
int row = dictTypeMapper.insertDictType(dict);
- if (row > 0)
- {
+ if (row > 0) {
DictUtils.setDictCache(dict.getDictType(), null);
}
return row;
@@ -185,19 +190,17 @@
/**
* 修改保存字典类型信息
- *
+ *
* @param dict 字典类型信息
* @return 结果
*/
@Override
@Transactional
- public int updateDictType(SysDictType dict)
- {
+ public int updateDictType(SysDictType dict) {
SysDictType oldDict = dictTypeMapper.selectDictTypeById(dict.getDictId());
dictDataMapper.updateDictDataType(oldDict.getDictType(), dict.getDictType());
int row = dictTypeMapper.updateDictType(dict);
- if (row > 0)
- {
+ if (row > 0) {
List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType(dict.getDictType());
DictUtils.setDictCache(dict.getDictType(), dictDatas);
}
@@ -206,17 +209,15 @@
/**
* 校验字典类型称是否唯一
- *
+ *
* @param dict 字典类型
* @return 结果
*/
@Override
- public String checkDictTypeUnique(SysDictType dict)
- {
+ public String checkDictTypeUnique(SysDictType dict) {
Long dictId = StringUtils.isNull(dict.getDictId()) ? -1L : dict.getDictId();
SysDictType dictType = dictTypeMapper.checkDictTypeUnique(dict.getDictType());
- if (StringUtils.isNotNull(dictType) && dictType.getDictId().longValue() != dictId.longValue())
- {
+ if (StringUtils.isNotNull(dictType) && dictType.getDictId().longValue() != dictId.longValue()) {
return UserConstants.NOT_UNIQUE;
}
return UserConstants.UNIQUE;
--
Gitblit v1.9.3