liukangdong
2024-11-14 56a0692624bad9d65feaf0b31b8c28eb698f3c9f
server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/RegionTreeVO.java
@@ -42,13 +42,25 @@
        for (PageRegionInfoResponse treeNode : nodeList){
            // 判断当前节点是否为根节点,此处注意:若parentId类型是String,则要采用equals()方法判断。
            if (Objects.isNull(treeNode.getParentIndexCode())
                    || StringUtils.equals(treeNode.getParentIndexCode(),"null")) {
                    || StringUtils.equals(treeNode.getParentIndexCode(),"null")
                    || !isValidParentCode(treeNode.getParentIndexCode(),nodeList)) {
                // 是,添加
                rootNodeList.add(treeNode);
            }
        }
        return rootNodeList;
    }
    private boolean isValidParentCode(String parentIndexCode, List<PageRegionInfoResponse> nodeList) {
        for (PageRegionInfoResponse treeNode : nodeList){
            // 判断当前节点是否为根节点,此处注意:若parentId类型是String,则要采用equals()方法判断。
            if ( StringUtils.equals(treeNode.getIndexCode(),parentIndexCode)) {
                return true;
            }
        }
        return false;
    }
@@ -59,7 +71,7 @@
    public List<PageRegionInfoResponse> buildTree(){
        // treeNodes:保存一个顶级节点所构建出来的完整树形
        List<PageRegionInfoResponse> treeNodes = new ArrayList<PageRegionInfoResponse>();
        // getRootNode():获取所有的根节点
         getRootNode();//:获取所有的根节点
        for (PageRegionInfoResponse treeRootNode : getRootNode()) {
            // 将顶级节点进行构建子树
            treeRootNode = buildChildTree(treeRootNode);
@@ -79,7 +91,7 @@
        // nodeList:所有节点集合(所有数据)
        for (PageRegionInfoResponse treeNode : nodeList) {
            // 判断当前节点的父节点ID是否等于根节点的ID,即当前节点为其下的子节点
                if (!Objects.isNull(treeNode.getParentIndexCode())&&treeNode.getParentIndexCode().equals(pNode.getRegionIndexCode())) {
                if (!Objects.isNull(treeNode.getParentIndexCode())&&treeNode.getParentIndexCode().equals(pNode.getIndexCode())) {
                    // 再递归进行判断当前节点的情况,调用自身方法
                    childTree.add(buildChildTree(treeNode));
                }