Implement /students/{ssn}/registration/{id}/graduation/check

Issue #54 new
Daníel Sigurgeirsson created an issue

The following must be checked:

  • has the student completed (or is registered in) enough ECTS credits to graduate?
  • remember NOT to include ECTS units from repeated courses (i.e. if the student takes a given course twice, but only the latest grade should count)
  • has completed all mandatory courses in the major
  • if the major has elective requirements, has the student completed enough of those?
  • do the same for emphasislines (i.e. required courses and elective requirements), but only if the student is registered on an emphasis line

This method must remember to use the curriculum version of the student!

This method should return an object containing all reasons why the student cannot graduate, for instance:

{ CanGraduate: false,
  FailureReasons: [
   { ...some details....},
   { ....another reason ....}
]}

Impl. note: there is a function in StudentSharedService called GetFinishedAndCurrentCourses() which returns a list of all finished and current courses (probably also including failed courses), which can be used to calculate the number of ECTS units a student has finished or is currently enrolled in.

Comments (4)

  1. Log in to comment