diff --git a/java/hello-world/src/main/java/org/acme/schooltimetabling/helperClasses/ResultSaver.java b/java/hello-world/src/main/java/org/acme/schooltimetabling/helperClasses/ResultSaver.java index 0e107b50..659946a6 100644 --- a/java/hello-world/src/main/java/org/acme/schooltimetabling/helperClasses/ResultSaver.java +++ b/java/hello-world/src/main/java/org/acme/schooltimetabling/helperClasses/ResultSaver.java @@ -262,6 +262,9 @@ private void listView(XSSFSheet listSheet, List validLessons, List lessons, int rowIdx) { + + lessons = sortLessons(lessons); + for(Lesson lesson: lessons){ final Timeslot lsTs = lesson.getTimeslot(); Timeslot.test_minSetUp("1"); @@ -289,6 +292,9 @@ private int listViewPrntHlpr(XSSFSheet listSheet, List lessons, int rowI * list view helper for printing out the skipped lessons */ private int listViewSkipHelper(XSSFSheet listSheet, List lessons, int rowIdx){ + + lessons = sortLessons(lessons); + for(Lesson lesson: lessons){ Row row = listSheet.createRow(rowIdx++); Object[] vals = new Object[]{lesson.getCourseName(), "N/A", lesson.getModifiers(), @@ -318,6 +324,22 @@ else if (val instanceof Boolean){ } } + + private List sortLessons(List list){ + //sort the list so it look neat to look at; sort by course name + //make the list mutable for sorting + List toSort = new ArrayList<>(list); + toSort.sort((a, b) -> { + String nameA = a.getCourseName(); + String nameB = b.getCourseName(); + + return nameA.compareTo(nameB); + }); + + return toSort; + } + + /** * driver function for printing out the teacher view Excel sheet */ diff --git a/java/hello-world/src/main/resources/solverConfig.xml b/java/hello-world/src/main/resources/solverConfig.xml index e6292076..1686c78e 100644 --- a/java/hello-world/src/main/resources/solverConfig.xml +++ b/java/hello-world/src/main/resources/solverConfig.xml @@ -11,7 +11,7 @@ - NON_REPRODUCIBLE + 100