| | |
| | | package cn.gistack.sm.sjztmd.service.impl; |
| | | |
| | | import cn.gistack.common.node.TreeNode; |
| | | import cn.gistack.common.utils.NodeTreeUtil; |
| | | import cn.gistack.sm.sjztmd.entity.AttAdBase; |
| | | import cn.gistack.sm.sjztmd.mapper.AttAdBaseMapper; |
| | | import cn.gistack.sm.sjztmd.service.IAttAdBaseService; |
| | |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.Comparator; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | | * @ClassName AttAdBaseServiceImpl |
| | |
| | | public List<AttAdBaseVO> lazyTree(String parentCode, Map<String, Object> param) { |
| | | return baseMapper.lazyTree(parentCode, param); |
| | | } |
| | | |
| | | /** |
| | | * 查询区域菜单树-带层级 |
| | | * @param parentCode |
| | | * @param obj |
| | | * @return |
| | | */ |
| | | @Override |
| | | public Object selectAttAdBaseTree(String parentCode, Map<String, Object> obj) { |
| | | List<TreeNode> nodeTree = NodeTreeUtil.getNodeTree(baseMapper.selectAttAdBaseTree(parentCode, obj)); |
| | | // 排序并返回 |
| | | return sortTree(nodeTree); |
| | | } |
| | | |
| | | /** |
| | | * 排序--只排第一,二个子集 |
| | | * @param nodeTree |
| | | */ |
| | | private List<TreeNode> sortTree(List<TreeNode> nodeTree) { |
| | | for (TreeNode node : nodeTree) { |
| | | if (node.getHasChildren()){ |
| | | List<TreeNode> children = node.getChildren(); |
| | | // 遍历子节点 |
| | | for (TreeNode child : children) { |
| | | if (child.getHasChildren()){ |
| | | child.setChildren(child.getChildren().stream().sorted(Comparator.comparing(TreeNode::getId)).collect(Collectors.toList())); |
| | | } |
| | | } |
| | | node.setChildren(node.getChildren().stream().sorted(Comparator.comparing(TreeNode::getId)).collect(Collectors.toList())); |
| | | } |
| | | } |
| | | return nodeTree; |
| | | } |
| | | } |