refactor(api): unify typed error contract across draft pricing and publish flows
standardize typed error responses across draft, pricing and publish endpoints reduce contract drift between related flows keep client-side handling more predictable and consistent
This commit is contained in:
@@ -1,24 +1,19 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from fastapi import HTTPException, status
|
||||
|
||||
from app.repositories.scheme_groups import list_scheme_version_groups
|
||||
from app.repositories.scheme_seats import list_scheme_version_seats
|
||||
from app.repositories.scheme_sectors import list_scheme_version_sectors
|
||||
from app.services.api_errors import raise_unprocessable
|
||||
|
||||
|
||||
def _raise_uniqueness_error(message: str, detail: dict | None = None) -> None:
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_422_UNPROCESSABLE_ENTITY,
|
||||
detail=detail or {"code": "editor_uniqueness_error", "message": message},
|
||||
)
|
||||
payload = detail or {"code": "editor_uniqueness_error", "message": message}
|
||||
raise_unprocessable(**payload)
|
||||
|
||||
|
||||
def _raise_reference_error(message: str, detail: dict | None = None) -> None:
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_422_UNPROCESSABLE_ENTITY,
|
||||
detail=detail or {"code": "editor_reference_error", "message": message},
|
||||
)
|
||||
payload = detail or {"code": "editor_reference_error", "message": message}
|
||||
raise_unprocessable(**payload)
|
||||
|
||||
|
||||
async def validate_single_seat_patch_uniqueness(
|
||||
|
||||
Reference in New Issue
Block a user