35 lines
1019 B
Python
35 lines
1019 B
Python
from marshmallow import fields, validate, Schema
|
|
|
|
|
|
class MessageSchema(Schema):
|
|
message = fields.Str()
|
|
|
|
|
|
class FreeTimeSchema(Schema):
|
|
id = fields.Integer()
|
|
start_date = fields.DateTime(required=True)
|
|
end_date = fields.DateTime(required=True)
|
|
|
|
|
|
class ListOfFreeTimesSchema(Schema):
|
|
free_times = fields.List(fields.Nested(FreeTimeSchema))
|
|
|
|
|
|
class ListOfTermOfDefenceSchema(Schema):
|
|
term_of_defences = fields.List(fields.Nested(FreeTimeSchema))
|
|
|
|
|
|
class TimeAvailabilityCreateSchema(Schema):
|
|
start_date = fields.DateTime(required=True)
|
|
end_date = fields.DateTime(required=True)
|
|
project_supervisor_id = fields.Integer(required=True) # temporary field it will be removed in the future
|
|
|
|
|
|
# temporary class it will be removed in the future
|
|
class TemporaryProjectSupervisorSchema(Schema):
|
|
id = fields.Integer(required=True)
|
|
|
|
class ProjectSupervisorTermQuerySchema(Schema):
|
|
id = fields.Integer(required=True)
|
|
term = fields.Integer(required=True, validate=validate.OneOf([1, 2]))
|