Skip to content

basic API

rephaelaz edited this page Apr 25, 2018 · 3 revisions

##Server routes /:user : Display all the schedules created by the user, and the user only.

/:user/:semester : Display schedule editor. This should be the same as our java application.

/:user/:semester/addcourse : Add a course to the semester.

/:user/:semester/:courseid : Get data for a specific course.

/:user/:semester/:courseid/update : Send data to update the course.

/:user/:semester/:courseid/delete : Send request for course deletion.

Needed API

getAllCoursesByFaculty(facultyName).

getCourseConflicts(courseID).

getCourseConstraints(courseID).

getForbiddenDays(courseID). (allow user to add a constraint on an exam, for example, the lecturer isn't available this day, this constraint is valid only for the specified course).

getFacultySchedule(scheduleName). choose from previous schedules.(the user will be allowed to determine the schedule name, and reload it).

Course API:

setters and getters for all relevant fields.

add constraint, remove constraint.

add conflict, remove conflict.

studyProgram:

courses, faculties.

save:

save the final schedule to db. (define format).

assign course(courseID, date).

user changes will also be saved to the db.

course:

id, name, credit points, daysBefore, faculty

conflicts, constraints, isLast, isFirst, isTaught, isRequired, hasExam.

csv file format(input) (TBD):

cuorseID,courseName, creditsPoints, Faculty, studyProgram, 1, 2, 3

Clone this wiki locally