add endpoint toogle interested + add data interested for events

This commit is contained in:
2025-08-17 14:47:17 +02:00
parent 96aeb56195
commit 4a4be39ad3
2 changed files with 59 additions and 15 deletions

View File

@@ -1,26 +1,34 @@
from pydantic import BaseModel, EmailStr
from pydantic_mongo import AbstractRepository, ObjectIdField
from datetime import datetime, date
from bson import ObjectId
from typing import List, Optional
class Event(BaseModel):
id: ObjectIdField = None
name: str
place: str
description: str
imgUrl: str | None = None
imgUrl: Optional[str] = None
status: int = 0
latitude: float = 0.0
longitude: float = 0.0
link: str | None = None
ticket: str | None = None
organizers: list[str] = []
tags: list[str] = []
start_date: datetime | None = None
end_date: datetime | None = None
link: Optional[str] = None
ticket: Optional[str] = None
organizers: List[str] = []
tags: List[str] = []
start_date: Optional[datetime] = None
end_date: Optional[datetime] = None
created_at: datetime = datetime.today()
updated_at: datetime | None = None
deleted_at: datetime | None = None
disabled_at: datetime | None = None
updated_at: Optional[datetime] = None
deleted_at: Optional[datetime] = None
disabled_at: Optional[datetime] = None
interested_users: List[ObjectId] = []
model_config = {
"arbitrary_types_allowed": True
}
class EventOut(BaseModel):
id: ObjectIdField = None
@@ -35,6 +43,10 @@ class EventOut(BaseModel):
end_date: datetime | None = None
tags: list[str] = []
class EventOutWithInterested(EventOut):
interested: bool = False
interested_count: int = 0
class EventIn(BaseModel):
name: str
place: str