tables.py 789 B

123456789101112131415161718192021222324252627282930313233343536
  1. from datetime import datetime
  2. from typing import Dict, Optional
  3. from pydantic import BaseModel
  4. from .fincas import FincaBase
  5. class BaseTable(BaseModel):
  6. station: FincaBase
  7. initial_date: datetime
  8. final_date: datetime
  9. data_percentage: float
  10. class Summary(BaseTable):
  11. lt10: Optional[float]
  12. gt30: Optional[float]
  13. gt33: Optional[float]
  14. grados_acumulados: Optional[float]
  15. grados_acumulados_promedio: Optional[float]
  16. amplitud_termica: Optional[float]
  17. precip_acumulada: Optional[float]
  18. class SummarySeason(Summary):
  19. dias_igualar_temporada: Optional[float]
  20. class MonthlyPrecipitations(BaseTable):
  21. months: Dict[int, float]
  22. precip_acumulada: Optional[float]
  23. class DegreesAccumulatedAvgMonth(BaseTable):
  24. months: Dict[int, float]