forked from cartsnitch/app
Squashed 'common/' content from commit 28b2939
git-subtree-dir: common git-subtree-split: 28b2939037b5932ca5d5a6c734b292c012ac675f
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
"""Store and StoreLocation Pydantic schemas."""
|
||||
|
||||
import uuid
|
||||
from datetime import datetime
|
||||
|
||||
from pydantic import BaseModel
|
||||
|
||||
from cartsnitch_common.constants import StoreSlug
|
||||
|
||||
|
||||
class StoreCreate(BaseModel):
|
||||
name: str
|
||||
slug: StoreSlug
|
||||
logo_url: str | None = None
|
||||
website_url: str | None = None
|
||||
|
||||
|
||||
class StoreRead(BaseModel):
|
||||
model_config = {"from_attributes": True}
|
||||
|
||||
id: uuid.UUID
|
||||
name: str
|
||||
slug: StoreSlug
|
||||
logo_url: str | None
|
||||
website_url: str | None
|
||||
created_at: datetime
|
||||
updated_at: datetime
|
||||
|
||||
|
||||
class StoreLocationCreate(BaseModel):
|
||||
store_id: uuid.UUID
|
||||
address: str
|
||||
city: str
|
||||
state: str
|
||||
zip: str
|
||||
lat: float | None = None
|
||||
lng: float | None = None
|
||||
|
||||
|
||||
class StoreLocationRead(BaseModel):
|
||||
model_config = {"from_attributes": True}
|
||||
|
||||
id: uuid.UUID
|
||||
store_id: uuid.UUID
|
||||
address: str
|
||||
city: str
|
||||
state: str
|
||||
zip: str
|
||||
lat: float | None
|
||||
lng: float | None
|
||||
created_at: datetime
|
||||
updated_at: datetime
|
||||
Reference in New Issue
Block a user