Files
2026-04-29 09:39:56 -05:00

96 lines
2.0 KiB
Python

from datetime import date, time
from pydantic import BaseModel
class BusinessRead(BaseModel):
id: int
name: str
type: str
timezone: str
status: str
plan: str
meta_business_id: str | None
whatsapp_phone_number_id: str | None
model_config = {"from_attributes": True}
class BusinessUpdate(BaseModel):
name: str | None = None
type: str | None = None
timezone: str | None = None
class BusinessConfigRead(BaseModel):
open_days: list[int]
open_time: time
close_time: time
slot_duration: int
max_per_slot: int
blocked_dates: list[date]
assistant_name: str
tone: str
welcome_message: str | None
model_config = {"from_attributes": True}
class BusinessConfigUpdate(BaseModel):
open_days: list[int] | None = None
open_time: time | None = None
close_time: time | None = None
slot_duration: int | None = None
max_per_slot: int | None = None
blocked_dates: list[date] | None = None
assistant_name: str | None = None
tone: str | None = None
welcome_message: str | None = None
class TableTypeCreate(BaseModel):
capacity: int
quantity: int
label: str | None = None
class TableTypeUpdate(BaseModel):
capacity: int | None = None
quantity: int | None = None
label: str | None = None
class TableTypeRead(BaseModel):
id: int
capacity: int
quantity: int
label: str | None
model_config = {"from_attributes": True}
class ServiceCreate(BaseModel):
name: str
description: str | None = None
price: float | None = None
duration_minutes: int | None = None
class ServiceUpdate(BaseModel):
name: str | None = None
description: str | None = None
price: float | None = None
duration_minutes: int | None = None
is_active: bool | None = None
class ServiceRead(BaseModel):
id: int
name: str
description: str | None
price: float | None
duration_minutes: int | None
is_active: bool
model_config = {"from_attributes": True}