89 lines
2.4 KiB
Python
89 lines
2.4 KiB
Python
import datetime
|
|
from typing import ClassVar
|
|
from ..base_nodes import CCBaseNode
|
|
|
|
class SchoolTimetableNode(CCBaseNode):
|
|
__primarylabel__: ClassVar[str] = 'SchoolTimetable'
|
|
school_timetable_id: str
|
|
start_date: datetime.date
|
|
end_date: datetime.date
|
|
|
|
class AcademicYearNode(CCBaseNode):
|
|
__primarylabel__: ClassVar[str] = 'AcademicYear'
|
|
year: str
|
|
|
|
class AcademicTermNode(CCBaseNode):
|
|
__primarylabel__: ClassVar[str] = 'AcademicTerm'
|
|
term_name: str
|
|
term_number: str
|
|
start_date: datetime.date
|
|
end_date: datetime.date
|
|
|
|
class AcademicTermBreakNode(CCBaseNode):
|
|
__primarylabel__: ClassVar[str] = 'AcademicTermBreak'
|
|
term_break_name: str
|
|
start_date: datetime.date
|
|
end_date: datetime.date
|
|
|
|
class AcademicWeekNode(CCBaseNode):
|
|
__primarylabel__: ClassVar[str] = 'AcademicWeek'
|
|
academic_week_number: str
|
|
start_date: datetime.date
|
|
week_type: str
|
|
|
|
class HolidayWeekNode(CCBaseNode):
|
|
__primarylabel__: ClassVar[str] = 'HolidayWeek'
|
|
start_date: datetime.date
|
|
|
|
class AcademicDayNode(CCBaseNode):
|
|
__primarylabel__: ClassVar[str] = 'AcademicDay'
|
|
academic_day: str
|
|
date: datetime.date
|
|
day_of_week: str
|
|
day_type: str
|
|
|
|
class OffTimetableDayNode(CCBaseNode):
|
|
__primarylabel__: ClassVar[str] = 'OffTimetableDay'
|
|
date: datetime.date
|
|
day_of_week: str
|
|
|
|
class StaffDayNode(CCBaseNode):
|
|
__primarylabel__: ClassVar[str] = 'StaffDay'
|
|
date: datetime.date
|
|
day_of_week: str
|
|
|
|
class HolidayDayNode(CCBaseNode):
|
|
__primarylabel__: ClassVar[str] = 'HolidayDay'
|
|
date: datetime.date
|
|
day_of_week: str
|
|
|
|
class AcademicPeriodNode(CCBaseNode):
|
|
__primarylabel__: ClassVar[str] = 'AcademicPeriod'
|
|
name: str
|
|
date: datetime.date
|
|
start_time: datetime.datetime
|
|
end_time: datetime.datetime
|
|
period_code: str
|
|
|
|
class RegistrationPeriodNode(CCBaseNode):
|
|
__primarylabel__: ClassVar[str] = 'RegistrationPeriod'
|
|
name: str
|
|
date: datetime.date
|
|
start_time: datetime.datetime
|
|
end_time: datetime.datetime
|
|
period_code: str
|
|
|
|
class BreakPeriodNode(CCBaseNode):
|
|
__primarylabel__: ClassVar[str] = 'BreakPeriod'
|
|
name: str
|
|
date: datetime.date
|
|
start_time: datetime.datetime
|
|
end_time: datetime.datetime
|
|
|
|
class OffTimetablePeriodNode(CCBaseNode):
|
|
__primarylabel__: ClassVar[str] = 'OffTimetablePeriod'
|
|
name: str
|
|
date: datetime.date
|
|
start_time: datetime.datetime
|
|
end_time: datetime.datetime
|