Skip to content

Commit 8d19f37

Browse files
committed
Added Model
1 parent ba1706b commit 8d19f37

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

backend/app/models.py

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,3 +112,36 @@ class TokenPayload(SQLModel):
112112
class NewPassword(SQLModel):
113113
token: str
114114
new_password: str = Field(min_length=8, max_length=40)
115+
116+
117+
# Shared properties
118+
class MeetingBase(SQLModel):
119+
title: str = Field(min_length=1, max_length=255)
120+
agenda: str = Field(min_length=1)
121+
summary: str | None = Field(default=None)
122+
123+
124+
# Properties to receive on meeting creation
125+
class MeetingCreate(MeetingBase):
126+
pass
127+
128+
129+
# Properties to receive on meeting update
130+
class MeetingUpdate(MeetingBase):
131+
title: str | None = Field(default=None, min_length=1, max_length=255) # type: ignore
132+
agenda: str | None = Field(default=None, min_length=1) # type: ignore
133+
134+
135+
# Database model
136+
class Meeting(MeetingBase, table=True):
137+
id: uuid.UUID = Field(default_factory=uuid.uuid4, primary_key=True)
138+
139+
140+
# Properties to return via API
141+
class MeetingPublic(MeetingBase):
142+
id: uuid.UUID
143+
144+
145+
class MeetingsPublic(SQLModel):
146+
data: list[MeetingPublic]
147+
count: int

0 commit comments

Comments
 (0)