mirror of https://gitee.com/stylefeng/roses
【7.6.0】【dict】更新查询字典列表(平铺)
parent
030336fa50
commit
8391a3edbf
|
@ -120,10 +120,12 @@ public class DictController {
|
|||
}
|
||||
|
||||
/**
|
||||
* 获取字典列表
|
||||
* 获取平铺(展开)结构的字典列表
|
||||
* <p>
|
||||
* 本接口可能会传字典类型id,或者字典类型编码,或者searchText
|
||||
*
|
||||
* @author fengshuonan
|
||||
* @since 2020/10/29 16:35
|
||||
* @since 2023/6/27 17:36
|
||||
*/
|
||||
@GetResource(name = "获取字典列表", path = "/dict/list")
|
||||
public ResponseData<List<SysDict>> list(DictRequest dictRequest) {
|
||||
|
|
|
@ -128,6 +128,12 @@ public class DictRequest extends BaseRequest {
|
|||
@ChineseDescription("所有的父级id")
|
||||
private String dictPids;
|
||||
|
||||
/**
|
||||
* 搜索条件:字典类型编码
|
||||
*/
|
||||
@ChineseDescription("搜索条件:字典类型编码")
|
||||
private String dictTypeCode;
|
||||
|
||||
/**
|
||||
* 获取树形列表
|
||||
*/
|
||||
|
|
|
@ -24,7 +24,6 @@
|
|||
*/
|
||||
package cn.stylefeng.roses.kernel.dict.modular.service;
|
||||
|
||||
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
||||
import cn.stylefeng.roses.kernel.dict.api.DictApi;
|
||||
import cn.stylefeng.roses.kernel.dict.modular.entity.SysDict;
|
||||
import cn.stylefeng.roses.kernel.dict.modular.pojo.TreeDictInfo;
|
||||
|
@ -87,25 +86,15 @@ public interface DictService extends IService<SysDict>, DictApi {
|
|||
SysDict detail(DictRequest dictRequest);
|
||||
|
||||
/**
|
||||
* 获取字典列表
|
||||
* 获取平铺(展开)结构的字典列表
|
||||
* <p>
|
||||
* 本接口可能会传字典类型id,或者字典类型编码,或者searchText
|
||||
*
|
||||
* @param dictRequest 字典对象
|
||||
* @return 字典列表
|
||||
* @author fengshuonan
|
||||
* @since 2020/10/29 18:48
|
||||
* @since 2023/6/27 17:43
|
||||
*/
|
||||
List<SysDict> findList(DictRequest dictRequest);
|
||||
|
||||
/**
|
||||
* 获取字典列表(带分页)
|
||||
*
|
||||
* @param dictRequest 查询条件
|
||||
* @return 带分页的列表
|
||||
* @author fengshuonan
|
||||
* @since 2020/10/29 18:48
|
||||
*/
|
||||
PageResult<SysDict> findPage(DictRequest dictRequest);
|
||||
|
||||
/**
|
||||
* 删除字典类型下的所有字典
|
||||
*
|
||||
|
|
|
@ -85,4 +85,12 @@ public interface DictTypeService extends IService<SysDictType> {
|
|||
*/
|
||||
List<SysDictType> findList(DictTypeRequest dictTypeRequest);
|
||||
|
||||
/**
|
||||
* 通过字典类型的编码,获取到字典类型的id
|
||||
*
|
||||
* @author fengshuonan
|
||||
* @since 2023/6/27 17:39
|
||||
*/
|
||||
Long getDictTypeIdByDictTypeCode(String dictTypeCode);
|
||||
|
||||
}
|
||||
|
|
|
@ -27,9 +27,6 @@ package cn.stylefeng.roses.kernel.dict.modular.service.impl;
|
|||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.stylefeng.roses.kernel.db.api.factory.PageFactory;
|
||||
import cn.stylefeng.roses.kernel.db.api.factory.PageResultFactory;
|
||||
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
||||
import cn.stylefeng.roses.kernel.dict.api.exception.DictException;
|
||||
import cn.stylefeng.roses.kernel.dict.api.exception.enums.DictExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.dict.modular.entity.SysDict;
|
||||
|
@ -45,7 +42,6 @@ import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum;
|
|||
import cn.stylefeng.roses.kernel.rule.pojo.dict.SimpleDict;
|
||||
import cn.stylefeng.roses.kernel.rule.tree.factory.DefaultTreeBuildFactory;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
@ -162,12 +158,6 @@ public class DictServiceImpl extends ServiceImpl<DictMapper, SysDict> implements
|
|||
return this.list(wrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<SysDict> findPage(DictRequest dictRequest) {
|
||||
Page<SysDict> page = this.page(PageFactory.defaultPage(), this.createWrapper(dictRequest));
|
||||
return PageResultFactory.createPageResult(page);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeByDictTypeId(Long dictTypeId) {
|
||||
LambdaQueryWrapper<SysDict> sysDictLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
|
@ -266,6 +256,19 @@ public class DictServiceImpl extends ServiceImpl<DictMapper, SysDict> implements
|
|||
// 根据字典类型id查询字典
|
||||
queryWrapper.eq(StrUtil.isNotBlank(dictRequest.getDictTypeId()), SysDict::getDictTypeId, dictRequest.getDictTypeId());
|
||||
|
||||
// 根据字典类型编码查询
|
||||
if (StrUtil.isNotBlank(dictRequest.getDictTypeCode())) {
|
||||
|
||||
// 根据字典类型编码,获取字典类型的id
|
||||
Long dictTypeId = dictTypeService.getDictTypeIdByDictTypeCode(dictRequest.getDictTypeCode());
|
||||
if (dictTypeId != null) {
|
||||
queryWrapper.eq(SysDict::getDictTypeId, dictTypeId);
|
||||
} else {
|
||||
// 字典类型不存在,则查询一个不存在的字典类型id
|
||||
queryWrapper.eq(SysDict::getDictTypeId, -1L);
|
||||
}
|
||||
}
|
||||
|
||||
return queryWrapper;
|
||||
}
|
||||
|
||||
|
|
|
@ -122,6 +122,25 @@ public class DictTypeServiceImpl extends ServiceImpl<DictTypeMapper, SysDictType
|
|||
return this.list(wrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Long getDictTypeIdByDictTypeCode(String dictTypeCode) {
|
||||
|
||||
if (ObjectUtil.isEmpty(dictTypeCode)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
LambdaQueryWrapper<SysDictType> sysDictTypeLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
sysDictTypeLambdaQueryWrapper.eq(SysDictType::getDictTypeCode, dictTypeCode);
|
||||
sysDictTypeLambdaQueryWrapper.select(SysDictType::getDictTypeId);
|
||||
SysDictType sysDictType = this.getOne(sysDictTypeLambdaQueryWrapper);
|
||||
|
||||
if (sysDictType == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return sysDictType.getDictTypeId();
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验dictTypeClass是否是系统字典,如果是系统字典只能超级管理员操作
|
||||
*
|
||||
|
|
Loading…
Reference in New Issue