You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
141 lines
4.4 KiB
Python
141 lines
4.4 KiB
Python
from typing import List, Optional
|
|
|
|
from fastapi import APIRouter, Depends
|
|
from fastapi.responses import JSONResponse
|
|
from pydantic import BaseModel
|
|
|
|
from src.auth.service import JWTBearer
|
|
from src.calculation_budget_constrains.router import \
|
|
router as calculation_budget_constraint
|
|
from src.calculation_target_reliability.router import \
|
|
router as calculation_target_reliability
|
|
from src.calculation_time_constrains.router import \
|
|
router as calculation_time_constrains_router
|
|
from src.job.router import router as job_router
|
|
from src.overhaul.router import router as overhaul_router
|
|
from src.overhaul_activity.router import router as overhaul_activity_router
|
|
from src.overhaul_job.router import router as job_overhaul_router
|
|
from src.overhaul_scope.router import router as scope_router
|
|
from src.scope_equipment.router import router as scope_equipment_router
|
|
from src.scope_equipment_job.router import router as scope_equipment_job_router
|
|
|
|
# from src.overhaul_scope.router import router as scope_router
|
|
# from src.scope_equipment.router import router as scope_equipment_router
|
|
# from src.overhaul.router import router as overhaul_router
|
|
# from src.overhaul_history.router import router as overhaul_history_router
|
|
# from src.overhaul_activity.router import router as scope_equipment_activity_router
|
|
# # from src.overhaul_schedule.router import router as ovehaul_schedule_router
|
|
# from src.scope_equipment_part.router import router as scope_equipment_part_router
|
|
# from src.calculation_target_reliability.router import router as calculation_target_reliability
|
|
#
|
|
# from src.master_activity.router import router as activity_router
|
|
|
|
|
|
|
|
|
|
class ErrorMessage(BaseModel):
|
|
msg: str
|
|
|
|
|
|
class ErrorResponse(BaseModel):
|
|
detail: Optional[List[ErrorMessage]]
|
|
|
|
|
|
api_router = APIRouter(
|
|
default_response_class=JSONResponse,
|
|
responses={
|
|
400: {"model": ErrorResponse},
|
|
401: {"model": ErrorResponse},
|
|
403: {"model": ErrorResponse},
|
|
404: {"model": ErrorResponse},
|
|
500: {"model": ErrorResponse},
|
|
},
|
|
)
|
|
|
|
|
|
@api_router.get("/healthcheck", include_in_schema=False)
|
|
def healthcheck():
|
|
return {"status": "ok"}
|
|
|
|
|
|
authenticated_api_router = APIRouter(
|
|
dependencies=[Depends(JWTBearer())],
|
|
)
|
|
# overhaul data
|
|
authenticated_api_router.include_router(
|
|
overhaul_router, prefix="/overhauls", tags=["overhaul"]
|
|
)
|
|
|
|
authenticated_api_router.include_router(job_router, prefix="/jobs", tags=["job"])
|
|
|
|
# # Overhaul session data
|
|
authenticated_api_router.include_router(
|
|
scope_router, prefix="/overhaul-session", tags=["overhaul-session"]
|
|
)
|
|
|
|
authenticated_api_router.include_router(
|
|
scope_equipment_router, prefix="/scope-equipments", tags=["scope_equipment"]
|
|
)
|
|
|
|
authenticated_api_router.include_router(
|
|
overhaul_activity_router, prefix="/overhaul-activity", tags=["activity"]
|
|
)
|
|
|
|
authenticated_api_router.include_router(
|
|
scope_equipment_job_router,
|
|
prefix="/scope-equipment-jobs",
|
|
tags=["scope_equipment", "job"],
|
|
)
|
|
|
|
authenticated_api_router.include_router(
|
|
job_overhaul_router, prefix="/overhaul-jobs", tags=["job", "overhaul"]
|
|
)
|
|
|
|
# authenticated_api_router.include_router(
|
|
# overhaul_history_router, prefix="/overhaul-history", tags=["overhaul_history"]
|
|
# )
|
|
|
|
# authenticated_api_router.include_router(
|
|
# scope_equipment_activity_router, prefix="/equipment-activities", tags=["scope_equipment_activities"]
|
|
# )
|
|
|
|
# authenticated_api_router.include_router(
|
|
# activity_router, prefix="/activities", tags=["activities"]
|
|
# )
|
|
|
|
# authenticated_api_router.include_router(
|
|
# scope_equipment_part_router, prefix="/equipment-parts", tags=["scope_equipment_parts"]
|
|
# )
|
|
|
|
# authenticated_api_router.include_router(
|
|
# ovehaul_schedule_router, prefix="/overhaul-schedules", tags=["overhaul_schedules"]
|
|
# )
|
|
|
|
# calculation
|
|
calculation_router = APIRouter(prefix="/calculation", tags=["calculations"])
|
|
|
|
# Time constrains
|
|
calculation_router.include_router(
|
|
calculation_time_constrains_router,
|
|
prefix="/time-constraint",
|
|
tags=["calculation", "time_constraint"],
|
|
)
|
|
|
|
# Target reliability
|
|
calculation_router.include_router(
|
|
calculation_target_reliability,
|
|
prefix="/target-reliability",
|
|
tags=["calculation", "target_reliability"],
|
|
)
|
|
|
|
# # Budget Constrain
|
|
calculation_router.include_router(
|
|
calculation_budget_constraint,
|
|
prefix="/budget-constraint",
|
|
tags=["calculation", "budget_constraint"],
|
|
)
|
|
|
|
authenticated_api_router.include_router(calculation_router)
|
|
|
|
api_router.include_router(authenticated_api_router)
|