| | |
| | | import org.springblade.core.tool.utils.StringPool; |
| | | import org.springblade.modules.system.entity.Dept; |
| | | import org.springblade.modules.system.mapper.DeptMapper; |
| | | import org.springblade.modules.system.node.TreeNode; |
| | | import org.springblade.modules.system.node.TreeNodes; |
| | | import org.springblade.modules.system.service.IDeptService; |
| | | import org.springblade.modules.system.vo.DeptVO; |
| | | import org.springblade.modules.system.wrapper.DeptWrapper; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.stream.Collectors; |
| | |
| | | * 懒加载获取部门树形结构,不包含顶级管理员公安局 |
| | | */ |
| | | @Override |
| | | public List<DeptVO> securityLazyTree(String tenantId, Long parentId) { |
| | | if (AuthUtil.isAdministrator()) { |
| | | tenantId = StringPool.EMPTY; |
| | | } |
| | | return ForestNodeMerger.merge(baseMapper.securityLazyTree(tenantId, parentId)); |
| | | public List<DeptVO> securityLazyTree(String jurisdiction, Long parentId) { |
| | | return ForestNodeMerger.merge(baseMapper.securityLazyTree(jurisdiction, parentId)); |
| | | } |
| | | |
| | | @Override |
| | | public List<String> selectIn() { |
| | | return baseMapper.selectIn(); |
| | | } |
| | | |
| | | /** |
| | | * 懒加载获取部门树形结构(包含用户数据) |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<DeptVO> lazyTreeUser(String tenantId, Long parentId) { |
| | | if (AuthUtil.isAdministrator()) { |
| | | tenantId = StringPool.EMPTY; |
| | | } |
| | | return ForestNodeMerger.merge(baseMapper.lazyTreeUser(tenantId, parentId)); |
| | | } |
| | | |
| | | @Override |
| | | public Long add(Dept dept) { |
| | | return baseMapper.add(dept); |
| | | } |
| | | |
| | | /** |
| | | * 懒加载获取部门树形结构(按分类查询) |
| | | */ |
| | | @Override |
| | | public List<DeptVO> lazyTreeType(String deptCategory, Long parentId) { |
| | | return ForestNodeMerger.merge(baseMapper.lazyTreeType("000000",deptCategory,parentId)); |
| | | } |
| | | |
| | | /** |
| | | * 懒加载获取部门树形结构(包含用户数据)app |
| | | * @param type 1:保安对保安 2:保安向民警 3:民警向民警 |
| | | * @param jurisdiction 辖区id |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<DeptVO> lazyTreeUserApp(Integer type,String jurisdiction) { |
| | | return ForestNodeMerger.merge(baseMapper.lazyTreeUserApp(type,jurisdiction)); |
| | | } |
| | | |
| | | /** |
| | | * 懒加载获取部门树形结构(包含用户数据),只查下一级的数据 |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<TreeNodes> lazyTreeUsers(String tenantId, Long parentId) { |
| | | Map<Long,TreeNodes> map = baseMapper.lazyTreeUsers(parentId); |
| | | System.out.println("map = " + map.size()); |
| | | List<TreeNodes> tree = new ArrayList<>(); |
| | | map.forEach((id,treeNodes) ->{ |
| | | if (map.containsKey(treeNodes.getParentId())){ |
| | | map.get(treeNodes.getParentId()).getChildren().add(treeNodes); |
| | | }else { |
| | | tree.add(treeNodes); |
| | | } |
| | | }); |
| | | return tree; |
| | | } |
| | | } |