65 lines
1.6 KiB
Python
65 lines
1.6 KiB
Python
from marshmallow import fields, Schema
|
|
|
|
|
|
class ProjectSupervisorSchema(Schema):
|
|
first_name = fields.Str()
|
|
last_name = fields.Str()
|
|
email = fields.Str()
|
|
available_groups = fields.Integer()
|
|
|
|
|
|
class ProjectSupervisorPaginationSchema(Schema):
|
|
project_supervisors = fields.List(fields.Nested(ProjectSupervisorSchema))
|
|
max_pages = fields.Integer()
|
|
|
|
|
|
class ProjectSupervisorQuerySchema(Schema):
|
|
page = fields.Integer()
|
|
per_page = fields.Integer()
|
|
|
|
|
|
class TemporaryStudentSchema(Schema):
|
|
student_index = fields.Integer(required=True)
|
|
|
|
|
|
class MessageSchema(Schema):
|
|
message = fields.Str()
|
|
|
|
|
|
class ExaminationScheduleSchema(Schema):
|
|
id = fields.Integer()
|
|
title = fields.Str()
|
|
start_date = fields.DateTime()
|
|
end_date = fields.DateTime()
|
|
|
|
|
|
class ExaminationScheduleListSchema(Schema):
|
|
examination_schedules = fields.List(fields.Nested(ExaminationScheduleSchema))
|
|
|
|
|
|
class TermOfDefenceStudentItemSchema(Schema):
|
|
id = fields.Integer()
|
|
start_date = fields.DateTime()
|
|
end_date = fields.DateTime()
|
|
|
|
|
|
class TermOfDefenceStudentListSchema(Schema):
|
|
term_of_defences = fields.List(fields.Nested(TermOfDefenceStudentItemSchema))
|
|
|
|
|
|
class YearGroupStudentSchema(Schema):
|
|
id = fields.Integer()
|
|
name = fields.Str()
|
|
mode = fields.Str()
|
|
|
|
|
|
class YearGroupStudentPaginationSchema(Schema):
|
|
year_groups = fields.List(fields.Nested(YearGroupStudentSchema))
|
|
max_pages = fields.Integer()
|
|
|
|
|
|
class YearGroupQueryStudentSchema(Schema):
|
|
index = fields.Integer(required=True) # it will be removed
|
|
page = fields.Integer()
|
|
per_page = fields.Integer()
|