This commit is contained in:
2026-06-10 02:04:37 -06:00
parent 1ba3d8dea4
commit 31cdce03a0
131 changed files with 15922 additions and 106 deletions
+55
View File
@@ -0,0 +1,55 @@
from __future__ import annotations
from datetime import datetime
from pydantic import BaseModel, Field
class FasePaqueteInput(BaseModel):
nombre: str = Field(..., min_length=1)
orden: int = Field(0, ge=0)
class PaqueteCreate(BaseModel):
nombre: str = Field(..., min_length=1, description="Nombre del paquete")
descripcion: str | None = None
fases: list[FasePaqueteInput] = Field(default_factory=list)
class PaqueteUpdate(BaseModel):
nombre: str | None = Field(None, min_length=1)
descripcion: str | None = None
activo: bool | None = None
class ManageAction(BaseModel):
action: str = Field(..., description="Acción: addFase, updateFase, deleteFase, addServicio, removeServicio")
faseId: str | None = None
nombre: str | None = None
orden: int | None = None
servicioCatalogoId: str | None = None
fasePaqueteId: str | None = None
class FasePaqueteResponse(BaseModel):
id: str
paqueteId: str
nombre: str
orden: int
createdAt: datetime
updatedAt: datetime
servicios: list[dict] | None = None
model_config = {"from_attributes": True}
class PaqueteResponse(BaseModel):
id: str
nombre: str
descripcion: str | None
activo: bool
createdAt: datetime
updatedAt: datetime
fases: list[FasePaqueteResponse] | None = None
model_config = {"from_attributes": True}