|
@ -25,17 +25,21 @@ Guns采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意
|
|
|
package cn.stylefeng.guns.sys.modular.dict.service.impl;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
|
import cn.hutool.core.lang.Dict;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
import cn.stylefeng.guns.core.enums.CommonStatusEnum;
|
|
|
import cn.stylefeng.guns.core.exception.ServiceException;
|
|
|
import cn.stylefeng.guns.core.exception.enums.StatusExceptionEnum;
|
|
|
import cn.stylefeng.guns.core.factory.PageFactory;
|
|
|
import cn.stylefeng.guns.core.factory.TreeBuildFactory;
|
|
|
import cn.stylefeng.guns.core.pojo.page.PageResult;
|
|
|
import cn.stylefeng.guns.sys.modular.dict.entity.SysDictData;
|
|
|
import cn.stylefeng.guns.sys.modular.dict.entity.SysDictType;
|
|
|
import cn.stylefeng.guns.sys.modular.dict.enums.SysDictTypeExceptionEnum;
|
|
|
import cn.stylefeng.guns.sys.modular.dict.mapper.SysDictTypeMapper;
|
|
|
import cn.stylefeng.guns.sys.modular.dict.param.SysDictTypeParam;
|
|
|
import cn.stylefeng.guns.sys.modular.dict.result.SysDictTreeNode;
|
|
|
import cn.stylefeng.guns.sys.modular.dict.service.SysDictDataService;
|
|
|
import cn.stylefeng.guns.sys.modular.dict.service.SysDictTypeService;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
@ -184,6 +188,29 @@ public class SysDictTypeServiceImpl extends ServiceImpl<SysDictTypeMapper, SysDi
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public List<SysDictTreeNode> tree() {
|
|
|
List<SysDictTreeNode> resultList = CollectionUtil.newArrayList();
|
|
|
LambdaQueryWrapper<SysDictType> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
queryWrapper.ne(SysDictType::getStatus, CommonStatusEnum.DELETED.getCode());
|
|
|
this.list(queryWrapper).forEach(sysDictType -> {
|
|
|
SysDictTreeNode sysDictTreeNode = new SysDictTreeNode();
|
|
|
BeanUtil.copyProperties(sysDictType, sysDictTreeNode);
|
|
|
sysDictTreeNode.setPid(0L);
|
|
|
resultList.add(sysDictTreeNode);
|
|
|
});
|
|
|
sysDictDataService.list(new LambdaQueryWrapper<SysDictData>().ne(SysDictData::getStatus, CommonStatusEnum.DELETED.getCode()))
|
|
|
.forEach(sysDictData -> {
|
|
|
SysDictTreeNode sysDictTreeNode = new SysDictTreeNode();
|
|
|
sysDictTreeNode.setId(sysDictData.getId());
|
|
|
sysDictTreeNode.setPid(sysDictData.getTypeId());
|
|
|
sysDictTreeNode.setCode(sysDictData.getCode());
|
|
|
sysDictTreeNode.setName(sysDictData.getValue());
|
|
|
resultList.add(sysDictTreeNode);
|
|
|
});
|
|
|
return new TreeBuildFactory<SysDictTreeNode>().doTreeBuild(resultList);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 校验参数,检查是否存在重复的编码或者名称
|
|
|
*
|