feat(models): tables MeteoStation + MeteoOpenMeteo (SQLModel)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,11 @@
|
||||
from app.models.garden import Garden, GardenCell, GardenImage, Measurement # noqa
|
||||
from app.models.plant import PlantVariety, PlantImage # noqa
|
||||
from app.models.plant import Plant, PlantImage # noqa
|
||||
from app.models.planting import Planting, PlantingEvent # noqa
|
||||
from app.models.task import Task # noqa
|
||||
from app.models.settings import UserSettings, LunarCalendarEntry # noqa
|
||||
from app.models.tool import Tool # noqa
|
||||
from app.models.media import Media, Attachment # noqa
|
||||
from app.models.dicton import Dicton # noqa
|
||||
from app.models.astuce import Astuce # noqa
|
||||
from app.models.recolte import Recolte, Observation # noqa
|
||||
from app.models.meteo import MeteoStation, MeteoOpenMeteo # noqa
|
||||
|
||||
36
backend/app/models/meteo.py
Normal file
36
backend/app/models/meteo.py
Normal file
@@ -0,0 +1,36 @@
|
||||
from typing import Optional
|
||||
from sqlmodel import Field, SQLModel
|
||||
|
||||
|
||||
class MeteoStation(SQLModel, table=True):
|
||||
"""Données collectées depuis la station WeeWX locale."""
|
||||
__tablename__ = "meteostation"
|
||||
|
||||
date_heure: str = Field(primary_key=True) # "2026-02-22T14:00"
|
||||
type: str = "current" # "current" | "veille"
|
||||
temp_ext: Optional[float] = None # °C extérieur
|
||||
temp_int: Optional[float] = None # °C intérieur (serre)
|
||||
humidite: Optional[float] = None # %
|
||||
pression: Optional[float] = None # hPa
|
||||
pluie_mm: Optional[float] = None # précipitations
|
||||
vent_kmh: Optional[float] = None
|
||||
vent_dir: Optional[str] = None # N/NE/E/SE/S/SO/O/NO
|
||||
uv: Optional[float] = None
|
||||
solaire: Optional[float] = None # W/m²
|
||||
|
||||
|
||||
class MeteoOpenMeteo(SQLModel, table=True):
|
||||
"""Prévisions journalières Open-Meteo."""
|
||||
__tablename__ = "meteoopenmeteo"
|
||||
|
||||
date: str = Field(primary_key=True) # "2026-02-22"
|
||||
t_min: Optional[float] = None
|
||||
t_max: Optional[float] = None
|
||||
pluie_mm: Optional[float] = None
|
||||
vent_kmh: Optional[float] = None
|
||||
wmo: Optional[int] = None
|
||||
label: Optional[str] = None
|
||||
humidite_moy: Optional[float] = None
|
||||
sol_0cm: Optional[float] = None # temp sol surface
|
||||
etp_mm: Optional[float] = None # évapotranspiration
|
||||
fetched_at: Optional[str] = None
|
||||
Reference in New Issue
Block a user