Skip to content
Snippets Groups Projects

Fix programme page

1 file
+ 13
7
Compare changes
  • Side-by-side
  • Inline
@@ -17,6 +17,7 @@
*/
package nl.tudelft.portal.controller;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
@@ -74,7 +75,8 @@ public class ProgramController {
public String getProgrammes(@AuthenticatedPerson Person person, Model model) {
List<Long> programIds = programApi.getAllRelevantPrograms(person.getId()).collectList()
.block().stream().map(ProgramSummaryDTO::getId).collect(Collectors.toList());
List<ProgramDetailsDTO> programs = programApi.getAllProgramsById(programIds).collectList().block();
List<ProgramDetailsDTO> programs = programIds.isEmpty() ? Collections.emptyList()
: programApi.getAllProgramsById(programIds).collectList().block();
model.addAttribute("programs", programs);
model.addAttribute("program", new PortalProgramCreateDTO());
model.addAttribute("patch", new PortalProgramPatchDTO());
@@ -94,12 +96,16 @@ public class ProgramController {
@PreAuthorize("@authorisationService.canManageProgram(#id)")
public String getProgram(@AuthenticatedPerson Person person, @PathVariable Long id, Model model) {
ProgramDetailsDTO program = programApi.getProgramById(id).block();
List<CourseDetailsDTO> courses = courseApi.getAllCoursesById(
program.getCourses().stream().map(CourseSummaryDTO::getId).collect(Collectors.toList()))
.collectList().block();
List<CohortDetailsDTO> cohorts = cohortApi.getAllCohortsById(
program.getCohorts().stream().map(CohortSummaryDTO::getId).collect(Collectors.toList()))
.collectList().block();
List<CourseDetailsDTO> courses = program.getCourses().isEmpty() ? Collections.emptyList()
: courseApi.getAllCoursesById(
program.getCourses().stream().map(CourseSummaryDTO::getId)
.collect(Collectors.toList()))
.collectList().block();
List<CohortDetailsDTO> cohorts = program.getCohorts().isEmpty() ? Collections.emptyList()
: cohortApi.getAllCohortsById(
program.getCohorts().stream().map(CohortSummaryDTO::getId)
.collect(Collectors.toList()))
.collectList().block();
model.addAttribute("program", program);
model.addAttribute("courses", courses);
Loading