需求: 统计XX学校学生总数,
第一级 学校,学生总数
第二级 年级,学生数量
第三级 班级,学生数量
- 主程序
/**
* 获取所有子节点
*
* @param menuList list
* @param parentId 第一个节点的pid
* @return 、
*/
public static List<School> treeMenuCountsList(List<School> menuList, long parentId) {
List<School> childMenu = new ArrayList<>();
for (School object : menuList) {
School school = new School();
BeanUtils.copyProperties(object,school);
System.out.println("school = " + school);
if (object.getPid() == parentId){
List<School> tree = treeMenuCountsList(menuList, object.getId());
school.setChildren(tree);
if (school.getChildren().size() > 0) {
school.setNum(school.getChildren().stream().mapToInt(School::getNum).sum());
}
childMenu.add(school);
}
}
return childMenu;
}