diff --git a/src/calculation_budget_constrains/schema.py b/src/calculation_budget_constrains/schema.py index a35b203..1aefe76 100644 --- a/src/calculation_budget_constrains/schema.py +++ b/src/calculation_budget_constrains/schema.py @@ -33,7 +33,7 @@ class OverhaulRead(OverhaulBase): class BudgetContraintQuery(DefultBase): - cost_threshold: float = 100 + cost_threshold: float = Field(100, ge=0, le=1000000000000000) # { # "overview": { diff --git a/src/database/schema.py b/src/database/schema.py index 42ff626..58734f9 100644 --- a/src/database/schema.py +++ b/src/database/schema.py @@ -7,14 +7,14 @@ from src.models import DefultBase class CommonParams(DefultBase): # This ensures no extra query params are allowed current_user: Optional[str] = Field(None, alias="currentUser") - page: int = Field(1, gt=0, lt=2147483647) + page: int = Field(1, gt=0, le=1000000) items_per_page: int = Field(5, gt=0, le=50, multiple_of=5, alias="itemsPerPage") query_str: Optional[str] = Field(None, alias="q") filter_spec: Optional[str] = Field(None, alias="filter") sort_by: List[str] = Field(default_factory=list, alias="sortBy[]") descending: List[bool] = Field(default_factory=list, alias="descending[]") exclude: List[str] = Field(default_factory=list, alias="exclude[]") - all_params: int = Field(0, alias="all") + all_params: int = Field(0, alias="all", ge=0, le=1000000) # Property to mirror your original return dict's bool conversion @property diff --git a/src/database/service.py b/src/database/service.py index d26f9a9..2418e8b 100644 --- a/src/database/service.py +++ b/src/database/service.py @@ -20,14 +20,14 @@ QueryStr = constr(pattern=r"^[ -~]+$", min_length=1) def common_parameters( db_session: DbSession, # type: ignore current_user: QueryStr = Query(None, alias="currentUser"), # type: ignore - page: int = Query(1, gt=0, lt=2147483647), - items_per_page: int = Query(5, alias="itemsPerPage", gt=-2, lt=2147483647), + page: int = Query(1, gt=0, le=1000000), + items_per_page: int = Query(5, alias="itemsPerPage", gt=-2, le=1000000), query_str: QueryStr = Query(None, alias="q"), # type: ignore filter_spec: QueryStr = Query(None, alias="filter"), # type: ignore sort_by: List[str] = Query([], alias="sortBy[]"), descending: List[bool] = Query([], alias="descending[]"), exclude: List[str] = Query([], alias="exclude[]"), - all: int = Query(0), + all: int = Query(0, ge=0, le=1000000), # role: QueryStr = Depends(get_current_role), ): return { diff --git a/src/equipment_sparepart/schema.py b/src/equipment_sparepart/schema.py index a0cde46..bc40adb 100644 --- a/src/equipment_sparepart/schema.py +++ b/src/equipment_sparepart/schema.py @@ -13,7 +13,7 @@ class ScopeEquipmentActivityBase(DefultBase): class ScopeEquipmentActivityCreate(ScopeEquipmentActivityBase): name: str - cost: Optional[float] = Field(0) + cost: Optional[float] = Field(0, ge=0, le=1000000000000000) class ScopeEquipmentActivityUpdate(ScopeEquipmentActivityBase): @@ -23,7 +23,7 @@ class ScopeEquipmentActivityUpdate(ScopeEquipmentActivityBase): class ScopeEquipmentActivityRead(ScopeEquipmentActivityBase): name: str - cost: float + cost: float = Field(..., ge=0, le=1000000000000000) class ScopeEquipmentActivityPagination(Pagination): diff --git a/src/overhaul_activity/schema.py b/src/overhaul_activity/schema.py index 52b917b..7c872b6 100644 --- a/src/overhaul_activity/schema.py +++ b/src/overhaul_activity/schema.py @@ -17,14 +17,14 @@ class OverhaulActivityCreate(OverhaulActivityBase): class OverhaulActivityUpdate(OverhaulActivityBase): - material_cost: Optional[float] = Field(0) - service_cost: Optional[float] = Field(0) + material_cost: Optional[float] = Field(0, ge=0, le=1000000000000000) + service_cost: Optional[float] = Field(0, ge=0, le=1000000000000000) class OverhaulScope(DefultBase): type: str start_date: datetime end_date: datetime - duration_oh: int + duration_oh: int = Field(..., ge=0, le=1000000) class ScopeEquipmentJob(DefultBase): @@ -35,12 +35,12 @@ class OverhaulJob(DefultBase): class OverhaulActivityRead(OverhaulActivityBase): id: UUID - material_cost: Optional[float] = Field(0) - service_cost: Optional[float] = Field(0) + material_cost: Optional[float] = Field(0, ge=0, le=1000000000000000) + service_cost: Optional[float] = Field(0, ge=0, le=1000000000000000) location_tag: str equipment_name: Optional[str] oh_scope: str - overhaul_cost: Optional[float] = Field(0) + overhaul_cost: Optional[float] = Field(0, ge=0, le=1000000000000000) # equipment: MasterEquipmentTree # overhaul_scope: OverhaulScope # overhaul_jobs: Optional[List[OverhaulJob]] = Field([]) diff --git a/src/overhaul_scope/schema.py b/src/overhaul_scope/schema.py index af37ca3..605aa78 100644 --- a/src/overhaul_scope/schema.py +++ b/src/overhaul_scope/schema.py @@ -8,8 +8,8 @@ from src.models import DefultBase, Pagination class ScopeBase(DefultBase): - duration_oh: Optional[int] = Field(720, title="Duration OH") - crew_number: Optional[int] = Field(10, title="Crew") + duration_oh: Optional[int] = Field(720, title="Duration OH", ge=0, le=1000000) + crew_number: Optional[int] = Field(10, title="Crew", ge=0, le=1000000) status: Optional[str] = Field("Upcoming")