Refactor Lesson model to use time type for start and end fields and update from_hebe_dict method for date conversion
This commit is contained in:
parent
af0885b2d2
commit
dc79405e42
1 changed files with 12 additions and 12 deletions
|
@ -1,4 +1,4 @@
|
||||||
from datetime import datetime, date
|
from datetime import datetime, date, time
|
||||||
from pydantic import BaseModel
|
from pydantic import BaseModel
|
||||||
|
|
||||||
#class Change(BaseModel):
|
#class Change(BaseModel):
|
||||||
|
@ -20,8 +20,8 @@ class Lesson(BaseModel):
|
||||||
position: int
|
position: int
|
||||||
date: date
|
date: date
|
||||||
room: str | None
|
room: str | None
|
||||||
start: str
|
start: time
|
||||||
end: str
|
end: time
|
||||||
subject: str | None
|
subject: str | None
|
||||||
teacher: str | None
|
teacher: str | None
|
||||||
group: str | None
|
group: str | None
|
||||||
|
@ -31,10 +31,10 @@ class Lesson(BaseModel):
|
||||||
def from_hebe_dict(data: dict):
|
def from_hebe_dict(data: dict):
|
||||||
return Lesson(
|
return Lesson(
|
||||||
position = data["TimeSlot"]["Position"],
|
position = data["TimeSlot"]["Position"],
|
||||||
date=datetime.fromtimestamp(data["Date"]["Timestamp"] / 1000),
|
date = datetime.fromtimestamp(data["Date"]["Timestamp"] / 1000).date(),
|
||||||
room = data["Room"]["Code"],
|
room = data["Room"]["Code"],
|
||||||
start=data["TimeSlot"]["Start"],
|
start = datetime.strptime(data["TimeSlot"]["Start"], "%H:%M").time(),
|
||||||
end=data["TimeSlot"]["End"],
|
end = datetime.strptime(data["TimeSlot"]["End"], "%H:%M").time(),
|
||||||
subject = data["Subject"]["Name"],
|
subject = data["Subject"]["Name"],
|
||||||
teacher = data["TeacherPrimary"]["DisplayName"],
|
teacher = data["TeacherPrimary"]["DisplayName"],
|
||||||
group = data["Distribution"]["Shortcut"] if data["Distribution"] else None,
|
group = data["Distribution"]["Shortcut"] if data["Distribution"] else None,
|
||||||
|
|
Loading…
Add table
Reference in a new issue