From 03cf98d3c92de33a4666a05369a4a6ae3c365e1c Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: Mon, 16 Aug 2021 16:25:25 +0800
Subject: [PATCH] 优化异常信息
---
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDictTypeServiceImpl.java | 80 ++++++++++++++++++++++++----------------
1 files changed, 48 insertions(+), 32 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 2db4341..4fb1559 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
@@ -1,19 +1,19 @@
package com.ruoyi.system.service.impl;
-import java.util.List;
-import javax.annotation.PostConstruct;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
import com.ruoyi.common.constant.UserConstants;
import com.ruoyi.common.core.domain.entity.SysDictData;
import com.ruoyi.common.core.domain.entity.SysDictType;
-import com.ruoyi.common.exception.CustomException;
+import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.DictUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.mapper.SysDictDataMapper;
import com.ruoyi.system.mapper.SysDictTypeMapper;
import com.ruoyi.system.service.ISysDictTypeService;
+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.List;
/**
* 字典 业务层处理
@@ -35,12 +35,7 @@
@PostConstruct
public void init()
{
- List<SysDictType> dictTypeList = dictTypeMapper.selectDictTypeAll();
- for (SysDictType dictType : dictTypeList)
- {
- List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType(dictType.getDictType());
- DictUtils.setDictCache(dictType.getDictType(), dictDatas);
- }
+ loadingDictCache();
}
/**
@@ -120,46 +115,66 @@
* @return 结果
*/
@Override
- public int deleteDictTypeByIds(Long[] dictIds)
+ public void deleteDictTypeByIds(Long[] dictIds)
{
for (Long dictId : dictIds)
{
SysDictType dictType = selectDictTypeById(dictId);
if (dictDataMapper.countDictDataByType(dictType.getDictType()) > 0)
{
- throw new CustomException(String.format("%1$s已分配,不能删除", dictType.getDictName()));
+ throw new ServiceException(String.format("%1$s已分配,不能删除", dictType.getDictName()));
}
+ dictTypeMapper.deleteDictTypeById(dictId);
+ DictUtils.removeDictCache(dictType.getDictType());
}
- int count = dictTypeMapper.deleteDictTypeByIds(dictIds);
- if (count > 0)
- {
- DictUtils.clearDictCache();
- }
- return count;
}
/**
- * 清空缓存数据
+ * 加载字典缓存数据
*/
@Override
- public void clearCache()
+ public void loadingDictCache()
+ {
+ List<SysDictType> dictTypeList = dictTypeMapper.selectDictTypeAll();
+ for (SysDictType dictType : dictTypeList)
+ {
+ List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType(dictType.getDictType());
+ DictUtils.setDictCache(dictType.getDictType(), dictDatas);
+ }
+ }
+
+ /**
+ * 清空字典缓存数据
+ */
+ @Override
+ public void clearDictCache()
{
DictUtils.clearDictCache();
}
/**
+ * 重置字典缓存数据
+ */
+ @Override
+ public void resetDictCache()
+ {
+ clearDictCache();
+ loadingDictCache();
+ }
+
+ /**
* 新增保存字典类型信息
*
- * @param dictType 字典类型信息
+ * @param dict 字典类型信息
* @return 结果
*/
@Override
- public int insertDictType(SysDictType dictType)
+ public int insertDictType(SysDictType dict)
{
- int row = dictTypeMapper.insertDictType(dictType);
+ int row = dictTypeMapper.insertDictType(dict);
if (row > 0)
{
- DictUtils.clearDictCache();
+ DictUtils.setDictCache(dict.getDictType(), null);
}
return row;
}
@@ -167,19 +182,20 @@
/**
* 修改保存字典类型信息
*
- * @param dictType 字典类型信息
+ * @param dict 字典类型信息
* @return 结果
*/
@Override
@Transactional
- public int updateDictType(SysDictType dictType)
+ public int updateDictType(SysDictType dict)
{
- SysDictType oldDict = dictTypeMapper.selectDictTypeById(dictType.getDictId());
- dictDataMapper.updateDictDataType(oldDict.getDictType(), dictType.getDictType());
- int row = dictTypeMapper.updateDictType(dictType);
+ SysDictType oldDict = dictTypeMapper.selectDictTypeById(dict.getDictId());
+ dictDataMapper.updateDictDataType(oldDict.getDictType(), dict.getDictType());
+ int row = dictTypeMapper.updateDictType(dict);
if (row > 0)
{
- DictUtils.clearDictCache();
+ List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType(dict.getDictType());
+ DictUtils.setDictCache(dict.getDictType(), dictDatas);
}
return row;
}
--
Gitblit v1.9.2