由于工作很晚了,直接上代码吧
@RequestMapping("getParentId") public ResultModel getTree() { List<TreeNode> treeNodeList = new ArrayList<>(); // 第一版 // 把所有的一级 // QueryWrapper<Area> queryWrapper = new QueryWrapper<>(); // queryWrapper.eq("area_parent_id", SystemConstant.PARENT_ID); // List<Area> oneList = areaService.list(queryWrapper); // oneList.forEach(one -> { // TreeNode treeNode = new TreeNode(); // treeNode.setId(one.getId()); // treeNode.setName(one.getAreaName()); // getChildren(treeNode); // treeNodeList.add(treeNode); // }); return ResultModel.success(treeNodeList); }
递归调用
public void getChildren(TreeNode parentNode){ QueryWrapper<Area> queryWrapper = new QueryWrapper<>(); queryWrapper.eq("area_parent_id", parentNode.getId()); List<Area> children = areaService.list(queryWrapper); List<TreeNode> treeNodeList = new ArrayList<>(); children.forEach(child -> { TreeNode treeNode = new TreeNode(); treeNode.setId(child.getId()); treeNode.setName(child.getAreaName()); getChildren(treeNode); treeNodeList.add(treeNode); }); parentNode.setChildren(treeNodeList); }