fixed(字典接口耦合问题):

1.修改基础包下字典接口
2.还原system下的字典接口
This commit is contained in:
Emil.Zhang 2023-05-10 17:38:02 +08:00
parent bd64a73298
commit b0781f9abe
5 changed files with 30 additions and 15 deletions

View File

@ -8,7 +8,6 @@ import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.domain.entity.SysDictData; import com.ruoyi.common.core.domain.entity.SysDictData;
import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.service.DictService;
import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.system.service.ISysDictDataService; import com.ruoyi.system.service.ISysDictDataService;
@ -34,7 +33,6 @@ public class SysDictDataController extends BaseController {
private final ISysDictDataService dictDataService; private final ISysDictDataService dictDataService;
private final ISysDictTypeService dictTypeService; private final ISysDictTypeService dictTypeService;
private final DictService dictService;
/** /**
* 查询字典数据列表 * 查询字典数据列表
@ -74,7 +72,7 @@ public class SysDictDataController extends BaseController {
*/ */
@GetMapping(value = "/type/{dictType}") @GetMapping(value = "/type/{dictType}")
public R<List<SysDictData>> dictType(@PathVariable String dictType) { public R<List<SysDictData>> dictType(@PathVariable String dictType) {
List<SysDictData> data = dictService.selectDictDataByType(dictType); List<SysDictData> data = dictTypeService.selectDictDataByType(dictType);
if (ObjectUtil.isNull(data)) { if (ObjectUtil.isNull(data)) {
data = new ArrayList<>(); data = new ArrayList<>();
} }

View File

@ -1,8 +1,6 @@
package com.ruoyi.common.core.service; package com.ruoyi.common.core.service;
import com.ruoyi.common.core.domain.entity.SysDictData; import java.util.Map;
import java.util.List;
/** /**
* 通用 字典服务 * 通用 字典服务
@ -59,10 +57,10 @@ public interface DictService {
String getDictValue(String dictType, String dictLabel, String separator); String getDictValue(String dictType, String dictLabel, String separator);
/** /**
* 根据字典类型查询字典数据 * 获取字典下所有的字典值与标签
* *
* @param dictType 字典类型 * @param dictType 字典类型
* @return 字典数据集合信息 * @return dictValue为keydictLabel为值组成的Map
*/ */
List<SysDictData> selectDictDataByType(String dictType); Map<String, String> getAllDictByDictType(String dictType);
} }

View File

@ -9,7 +9,6 @@ import com.alibaba.excel.write.metadata.holder.WriteSheetHolder;
import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder; import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder;
import com.ruoyi.common.annotation.ExcelDictFormat; import com.ruoyi.common.annotation.ExcelDictFormat;
import com.ruoyi.common.annotation.ExcelEnumFormat; import com.ruoyi.common.annotation.ExcelEnumFormat;
import com.ruoyi.common.core.domain.entity.SysDictData;
import com.ruoyi.common.core.service.DictService; import com.ruoyi.common.core.service.DictService;
import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.spring.SpringUtils; import com.ruoyi.common.utils.spring.SpringUtils;
@ -97,11 +96,11 @@ public class ExcelDownHandler implements SheetWriteHandler {
if (StrUtil.isNotBlank(dictType)) { if (StrUtil.isNotBlank(dictType)) {
// 如果传递了字典名则依据字典建立下拉 // 如果传递了字典名则依据字典建立下拉
options = options =
Optional.ofNullable(dictService.selectDictDataByType(dictType)) new ArrayList<>(
.orElseThrow(() -> new ServiceException(String.format("字典 %s 不存在", dictType))) Optional.ofNullable(dictService.getAllDictByDictType(dictType))
.stream() .orElseThrow(() -> new ServiceException(String.format("字典 %s 不存在", dictType)))
.map(SysDictData::getDictLabel) .values()
.collect(Collectors.toList()); );
} else if (StrUtil.isNotBlank(converterExp)) { } else if (StrUtil.isNotBlank(converterExp)) {
// 如果指定了确切的值则直接解析确切的值 // 如果指定了确切的值则直接解析确切的值
options = StrUtil.split( options = StrUtil.split(

View File

@ -32,6 +32,14 @@ public interface ISysDictTypeService {
*/ */
List<SysDictType> selectDictTypeAll(); List<SysDictType> selectDictTypeAll();
/**
* 根据字典类型查询字典数据
*
* @param dictType 字典类型
* @return 字典数据集合信息
*/
List<SysDictData> selectDictDataByType(String dictType);
/** /**
* 根据字典类型ID查询信息 * 根据字典类型ID查询信息
* *

View File

@ -279,4 +279,16 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService
} }
} }
@Override
public Map<String, String> getAllDictByDictType(String dictType) {
List<SysDictData> thisDictTypeDataList = selectDictDataByType(dictType);
Map<String, String> dictMap = null;
for (SysDictData everyDictData : thisDictTypeDataList) {
if (ObjectUtil.isNull(dictMap)) {
dictMap = new HashMap<>();
}
dictMap.put(everyDictData.getDictValue(), everyDictData.getDictLabel());
}
return dictMap;
}
} }