From 7d7090b098add475808ffdebebff8b4e2a3b98ff Mon Sep 17 00:00:00 2001 From: whycq <123456> Date: 星期六, 06 八月 2022 12:58:12 +0800 Subject: [PATCH] Merge branch 'hylyasrs' of http://47.97.1.152:5880/r/zy-asrs into hylyasrs --- src/main/java/com/zy/common/utils/TreeUtils.java | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 53 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/zy/common/utils/TreeUtils.java b/src/main/java/com/zy/common/utils/TreeUtils.java index 271ee28..e18416c 100644 --- a/src/main/java/com/zy/common/utils/TreeUtils.java +++ b/src/main/java/com/zy/common/utils/TreeUtils.java @@ -1,7 +1,10 @@ package com.zy.common.utils; import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.mapper.Wrapper; +import com.zy.asrs.entity.Node; import com.zy.asrs.entity.Tag; +import com.zy.asrs.service.NodeService; import com.zy.asrs.service.TagService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cache.annotation.Cacheable; @@ -18,6 +21,8 @@ @Autowired private TagService tagService; + @Autowired + private NodeService nodeService; /******************************** 褰掔被鏍� *********************************/ @@ -85,5 +90,53 @@ } } } + /******************************** 鑺傜偣鏍� *********************************/ + + /** + * 鑾峰彇鏍戝浘鏁版嵁缁撴瀯 + */ + @Cacheable(cacheNames="nodeTree",key="#id") + public ArrayList<Map> getNodeTree(String id, Long hostId){ + ArrayList<Map> result = new ArrayList<>(); + Node node = nodeService.selectById(id); + // 涓昏妭鐐� + Map<String, Object> map = new HashMap<>(); + map.put("title", node.getName()); + map.put("id", node.getId()); + map.put("spread", true); + List<Map> childrens = new ArrayList<>(); + map.put("children", childrens); + dealNode(node, childrens, hostId); + result.add(map); + // 寮�濮嬪鐞嗗瓧鑺傜偣 +// deal(tag, childrens); + return result; + } + + /** + * 閫掑綊鑾峰彇瀛愯妭鐐规暟鎹� + */ + public void dealNode(Node parent, List<Map> list, Long hostId) { + Wrapper<Node> wrapper = new EntityWrapper<Node>() + .eq("parent_id", parent.getId()) + .eq("status", "1"); + if (hostId != null) { + wrapper.eq("host_id", hostId); + } + List<Node> nodes = nodeService.selectList(wrapper); + for (Node node : nodes) { + Map<String, Object> map = new HashMap<>(); + map.put("title", node.getName()); + map.put("id", node.getId()); + map.put("spread", true); + List<Map> childrens = new ArrayList<>(); + map.put("children", childrens); + dealNode(node, childrens, hostId); + list.add(map); + } + } + + + // ------------------------------------------------------------------------------------------------------- } -- Gitblit v1.9.1