diff --git a/src/apps/users/v1/router.py b/src/apps/users/v1/router.py index e2bf72e..c94acbd 100644 --- a/src/apps/users/v1/router.py +++ b/src/apps/users/v1/router.py @@ -134,6 +134,16 @@ async def get_hosp_recommendations(): ) +@router.get('/getHospRoutes') +async def get_hosp_routes(): + """ + Get list of recommended hospitals. + """ + return await c.vitacore_api.getHospRoutes( + '3092e1c5-e08b-4654-a027-82be90fe8a49' + ) + + @router.post('/measurement', status_code=status.HTTP_202_ACCEPTED) async def measurement( user: Annotated[str, Depends(login)], @@ -211,8 +221,3 @@ async def get_diagnostic_results(user: Annotated[str, Depends(login)]): @router.get('/getPatFLG') async def get_pat_flg(user: Annotated[str, Depends(login)]): return mock.patFLG[0] - - -@router.get('/getHospRoutes') -async def get_hosp_routes(user: Annotated[str, Depends(login)]): - return mock.hospRoutes diff --git a/src/clients/vitacore/api.py b/src/clients/vitacore/api.py index bbfb318..0dab370 100644 --- a/src/clients/vitacore/api.py +++ b/src/clients/vitacore/api.py @@ -145,3 +145,13 @@ class VITACORE_API(AsyncClient): case _: self.logger.error(req.json()) raise e.UnknownException + + async def getHospRoutes(self, patId: str): + req = await self.get('/getHospRoutes', params={'patId': patId}) + + match req.status_code: + case st.HTTP_200_OK: + return s.HospRoutesModel.model_validate(req.json()) + case _: + self.logger.error(req.json()) + raise e.UnknownException diff --git a/src/clients/vitacore/schema.py b/src/clients/vitacore/schema.py index f9b67ad..5468e00 100644 --- a/src/clients/vitacore/schema.py +++ b/src/clients/vitacore/schema.py @@ -500,3 +500,19 @@ class HospRecommendationsModel(BaseModel): Recommendations: list[RecommendationModel] = Field( title='Список рекомендаций' ) + + +class HospRoutesModel(BaseModel): + EventID: str = Field( + title='Идентификатор случая госпитализации', + examples=['b8227793-0f40-40f0-b8aa-9fc00cc13b96'], + ) + EventDate: datetime = Field( + title='Дата обращения', examples=['2025-07-21'] + ) + RoutesToDoctor: list[RouteToDoctorModel] = Field( + title='Направления ко врачу' + ) + RoutesToDiagnostic: list[RouteToDiagnosticModel] = Field( + title='Направления на услугу' + )