Files

28 lines
692 B
Python
Raw Permalink Normal View History

2026-04-25 20:43:37 +12:00
from datetime import datetime
from pydantic import BaseModel, ConfigDict, Field
from app.schemas.product import ProductCostBreakdown
class ScenarioCreate(BaseModel):
2026-05-10 09:46:07 +12:00
model_config = ConfigDict(extra="forbid")
name: str = Field(min_length=1, max_length=255)
description: str | None = Field(default=None, max_length=2000)
2026-04-25 20:43:37 +12:00
overrides: dict = Field(default_factory=dict)
class ScenarioRead(BaseModel):
id: int
name: str
status: str
description: str | None
overrides: dict
created_at: datetime
model_config = ConfigDict(from_attributes=True)
class ScenarioRunResponse(BaseModel):
scenario: ScenarioRead
results: list[ProductCostBreakdown]