from typing import Dict, List, Optional from fastapi import APIRouter, HTTPException, status from fastapi.params import Query from src.database.core import DbSession from src.models import StandardResponse from .service import get_eaf_timeline router = APIRouter() # @router.get("", response_model=StandardResponse[List[Dict]]) # async def get_target_reliability( # db_session: DbSession, # scope_name: Optional[str] = Query(None), # eaf_threshold: float = Query(100), # ): # """Get all scope pagination.""" # results = await get_all_target_reliability( # db_session=db_session, scope_name=scope_name, eaf_threshold=eaf_threshold # ) # return StandardResponse( # data=results, # message="Data retrieved successfully", # ) @router.get("", response_model=StandardResponse[List[Dict]]) async def get_target_reliability( db_session: DbSession, oh_session_id: Optional[str] = Query(None), eaf_input: float = Query(0.5), duration: int = Query(8000), ): """Get all scope pagination.""" if not oh_session_id: raise HTTPException( status_code=status.HTTP_400_BAD_REQUEST, detail="oh_session_id is required", ) results = await get_eaf_timeline( db_session=db_session, oh_session_id=oh_session_id, eaf_input=eaf_input, oh_duration=duration ) return StandardResponse( data=results, message="Data retrieved successfully", )