first commit

This commit is contained in:
Anurag Jangid 2026-10-08 02:52:58 +05:30
commit 34ea15a54d
246 changed files with 18660 additions and 0 deletions

View file

@ -0,0 +1,62 @@
from datetime import datetime
from pydantic import BaseModel, Field
from app.models.enums import EventStatus, EventType, TicketTypeStatus
class VenuePublic(BaseModel):
id: int
slug: str
name: str
area: str
city: str
address: str
map_url: str | None = None
description: str | None = None
model_config = {"from_attributes": True}
class EventMediaPublic(BaseModel):
id: int
image_url: str
alt_text: str | None
sort_order: int
model_config = {"from_attributes": True}
class TicketTypePublic(BaseModel):
id: int
name: str
description: str | None
price_paise: int = Field(ge=0)
status: TicketTypeStatus
sort_order: int
remaining_quantity: int = Field(ge=0)
model_config = {"from_attributes": True}
class EventSummary(BaseModel):
id: int
slug: str
title: str
category: EventType
status: EventStatus
starts_at: datetime
ends_at: datetime | None
is_featured: bool
cover_image_url: str | None
cover_image_alt: str | None
venue: VenuePublic
model_config = {"from_attributes": True}
class EventDetail(EventSummary):
description: str | None
meta_description: str | None
media: list[EventMediaPublic]
ticket_types: list[TicketTypePublic]