public List<TreeDataModel> getTreeListByProjectId(String projectId) { List<ProjectScheduleEntity> projectScheduleLsit = projectScheduleRepository.findAllByOrgProject(projectId); return treeRecursionDataList(projectScheduleLsit, "0"); } public static List<TreeDataModel> treeRecursionDataList(List<ProjectScheduleEntity> treeList, String parentId) { List<TreeDataModel> treeDataModels = new ArrayList<>(); for (ProjectScheduleEntity projectScheduleEntity : treeList) { TreeDataModel treeDataModel = ProjectScheduleMapper.INSTANCE.mapToTreeDataModel(projectScheduleEntity); String prjschId = treeDataModel.getPrjschId(); String prjschPid = treeDataModel.getPrjschPid(); if (parentId.equals(prjschPid)) { treeDataModel.setChildrens(treeRecursionDataList(treeList, prjschId)); treeDataModels.add(treeDataModel); } } return treeDataModels; }