Files
shinra32 56c51378b8 Co-authored-by: MENDOZA BALLARDO GAEL RICARDO <gael-meb123@users.noreply.github.com>
version final final ya enserio la final del proyecto :)
2026-05-23 08:42:27 -06:00

33 lines
797 B
Python

from typing import Literal, Optional
from pydantic import BaseModel, Field
IncidentCategory = Literal[
"derrame", "dano_propiedad", "conducta", "no_recoleccion", "otro"
]
IncidentStatus = Literal["open", "in_review", "resolved"]
class UnitPublic(BaseModel):
id: int
plate: Optional[str] = None
status: Optional[str] = None
class IncidentOut(BaseModel):
id: int
user_id: str
unit_id: Optional[int] = None
type: IncidentCategory
description: str
photo_url: Optional[str] = None
status: IncidentStatus
created_at: Optional[str] = None
class IncidentCreate(BaseModel):
"""Payload usado cuando NO se sube foto (JSON)."""
unit_id: Optional[int] = None
type: IncidentCategory
description: str = Field(min_length=3, max_length=1000)