每天每天
越来越爱

java递归获取地区树


/**
     * 递归获取数据
     * @param dbpAreas 所有地区信息
     * @param parentId 最上级地区标识
     * @return 返回tree
     */
    public static List<AreaVo> trees(List<AreaVo> dbpAreas, String parentId) {
        List<AreaVo> parent = new LinkedList<>();
        Optional.ofNullable(dbpAreas).orElse(new ArrayList<>())
                .stream().filter(item -> item != null && item.getParentId().equals(parentId))
                .forEach(item -> {
                    AreaVo area = new AreaVo();
                    BeanUtils.copyProperties(item, area);
                    List<AreaVo> result = trees(dbpAreas, item.getDeptCode());
                    area.setChildList(result);
                    parent.add(area);
                });

        return parent;
    }
赞(0) 打赏

评论 抢沙发