This commit is contained in:
2026-01-18 12:23:01 +01:00
parent ef3d0ed970
commit bb1263edb8
86 changed files with 90289 additions and 0 deletions

63
backend/app/db/schemas.py Normal file
View File

@@ -0,0 +1,63 @@
from __future__ import annotations
from datetime import datetime
from typing import Optional
from pydantic import BaseModel, HttpUrl
class ProductBase(BaseModel):
boutique: str
url: HttpUrl
asin: str
titre: Optional[str]
url_image: Optional[HttpUrl]
categorie: Optional[str]
type: Optional[str]
actif: Optional[bool] = True
class ProductCreate(ProductBase):
pass
class ProductUpdate(BaseModel):
titre: Optional[str] = None
url_image: Optional[HttpUrl] = None
categorie: Optional[str] = None
type: Optional[str] = None
actif: Optional[bool] = None
class ProductRead(ProductBase):
id: int
cree_le: datetime
modifie_le: datetime
class Config:
orm_mode = True
class ProductSnapshotBase(BaseModel):
prix_actuel: Optional[float]
prix_conseille: Optional[float]
prix_min_30j: Optional[float]
etat_stock: Optional[str]
en_stock: Optional[bool]
note: Optional[float]
nombre_avis: Optional[int]
prime: Optional[bool]
choix_amazon: Optional[bool]
offre_limitee: Optional[bool]
exclusivite_amazon: Optional[bool]
statut_scrap: Optional[str]
message_erreur: Optional[str]
class ProductSnapshotRead(ProductSnapshotBase):
id: int
produit_id: int
scrape_le: datetime
class Config:
orm_mode = True