feat(backend): modèles SQLModel (10 tables)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
30
backend/app/models/planting.py
Normal file
30
backend/app/models/planting.py
Normal file
@@ -0,0 +1,30 @@
|
||||
from datetime import date, datetime
|
||||
from typing import Optional
|
||||
from sqlmodel import Field, SQLModel
|
||||
|
||||
|
||||
class Planting(SQLModel, table=True):
|
||||
id: Optional[int] = Field(default=None, primary_key=True)
|
||||
garden_id: int = Field(foreign_key="garden.id", index=True)
|
||||
variety_id: int = Field(foreign_key="plantvariety.id", index=True)
|
||||
cell_id: Optional[int] = Field(default=None, foreign_key="gardencell.id")
|
||||
date_semis: Optional[date] = None
|
||||
date_plantation: Optional[date] = None
|
||||
date_repiquage: Optional[date] = None
|
||||
quantite: int = 1
|
||||
statut: str = "prevu" # prevu | en_cours | termine | echoue
|
||||
date_recolte_debut: Optional[date] = None
|
||||
date_recolte_fin: Optional[date] = None
|
||||
rendement_estime: Optional[float] = None
|
||||
rendement_reel: Optional[float] = None
|
||||
notes: Optional[str] = None
|
||||
created_at: datetime = Field(default_factory=datetime.utcnow)
|
||||
updated_at: datetime = Field(default_factory=datetime.utcnow)
|
||||
|
||||
|
||||
class PlantingEvent(SQLModel, table=True):
|
||||
id: Optional[int] = Field(default=None, primary_key=True)
|
||||
planting_id: int = Field(foreign_key="planting.id", index=True)
|
||||
type: str # arrosage | taille | traitement | observation | autre
|
||||
note: Optional[str] = None
|
||||
ts: datetime = Field(default_factory=datetime.utcnow)
|
||||
Reference in New Issue
Block a user