Добавлен эндпоинт getRoutesList
This commit is contained in:
@ -83,6 +83,16 @@ async def get_med_exam_dict():
|
|||||||
return await c.vitacore_api.getMedExamDict()
|
return await c.vitacore_api.getMedExamDict()
|
||||||
|
|
||||||
|
|
||||||
|
@router.get('/getRoutesList')
|
||||||
|
async def get_routes_list():
|
||||||
|
"""
|
||||||
|
Get list of routes.
|
||||||
|
"""
|
||||||
|
return await c.vitacore_api.getRoutesList(
|
||||||
|
'4e6de5f7-4dc9-451b-bf0d-7a64a9b8c279'
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
@router.post('/measurement', status_code=status.HTTP_202_ACCEPTED)
|
@router.post('/measurement', status_code=status.HTTP_202_ACCEPTED)
|
||||||
async def measurement(
|
async def measurement(
|
||||||
user: Annotated[str, Depends(login)],
|
user: Annotated[str, Depends(login)],
|
||||||
@ -172,11 +182,6 @@ async def get_pat_flg(user: Annotated[str, Depends(login)]):
|
|||||||
return mock.patFLG[0]
|
return mock.patFLG[0]
|
||||||
|
|
||||||
|
|
||||||
@router.get('/getRoutesList')
|
|
||||||
async def get_routes_list(user: Annotated[str, Depends(login)]):
|
|
||||||
return mock.routesList[0]
|
|
||||||
|
|
||||||
|
|
||||||
@router.get('/getHospRecommendations')
|
@router.get('/getHospRecommendations')
|
||||||
async def get_hosp_recommendations(user: Annotated[str, Depends(login)]):
|
async def get_hosp_recommendations(user: Annotated[str, Depends(login)]):
|
||||||
return mock.hospRecommendations
|
return mock.hospRecommendations
|
||||||
|
|||||||
@ -90,3 +90,13 @@ class VITACORE_API(AsyncClient):
|
|||||||
case _:
|
case _:
|
||||||
self.logger.error(req.json())
|
self.logger.error(req.json())
|
||||||
raise e.UnknownException
|
raise e.UnknownException
|
||||||
|
|
||||||
|
async def getRoutesList(self, patId: str):
|
||||||
|
req = await self.get('/getRoutesList', params={'patId': patId})
|
||||||
|
|
||||||
|
match req.status_code:
|
||||||
|
case st.HTTP_200_OK:
|
||||||
|
return s.RoutesListModel.model_validate(req.json())
|
||||||
|
case _:
|
||||||
|
self.logger.error(req.json())
|
||||||
|
raise e.UnknownException
|
||||||
|
|||||||
@ -278,3 +278,58 @@ class MedExamTypeModel(BaseModel):
|
|||||||
|
|
||||||
class MedExamDictModel(BaseModel):
|
class MedExamDictModel(BaseModel):
|
||||||
MedExamTypes: list[MedExamTypeModel]
|
MedExamTypes: list[MedExamTypeModel]
|
||||||
|
|
||||||
|
|
||||||
|
class ResultModel(BaseModel):
|
||||||
|
Resource: str = Field(title='Врач', examples=['Изотова Г.М.'])
|
||||||
|
ExaminationId: str = Field(
|
||||||
|
title='Идентификатор осмотра',
|
||||||
|
examples=['4d8550e6-7ad8-46f7-b874-9b20c673d168'],
|
||||||
|
)
|
||||||
|
DiagResultId: str = Field(
|
||||||
|
title='Идентификатор результата исследования',
|
||||||
|
examples=['77312a5f-0498-4656-8215-9cf151ec2a9b'],
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
class RouteModel(BaseModel):
|
||||||
|
Type: str = Field(
|
||||||
|
title='Тип',
|
||||||
|
examples=['ROUTE_TO_DOCTOR_INSPECTION', 'ROUTE_TO_DIAGNOSTICS'],
|
||||||
|
)
|
||||||
|
CreationDateTime: datetime = Field(
|
||||||
|
title='Дата и время создания', examples=['2025-03-24 14:49']
|
||||||
|
)
|
||||||
|
Name: str = Field(
|
||||||
|
title='Наименование услуги / специальности',
|
||||||
|
examples=['Кардиолог [1259]', 'Общий анализ крови [B03.016.002]'],
|
||||||
|
)
|
||||||
|
EntryPlace: str | None = Field(
|
||||||
|
title='Кабинет приёма',
|
||||||
|
examples=['Каб.№211 Шайдуллина Г.И. (Кардиолог)', None],
|
||||||
|
default=None,
|
||||||
|
)
|
||||||
|
EntryResName: str | None = Field(
|
||||||
|
title='ФИО врача или кабинета полностью',
|
||||||
|
examples=['Каб.№211 Шайдуллина Г.И. (Кардиолог)', None],
|
||||||
|
default=None,
|
||||||
|
)
|
||||||
|
ResultExits: str = Field(title='Исполнение', examples=['0', '1'])
|
||||||
|
Result: ResultModel | None = Field(
|
||||||
|
title='Связка осмотра/услуги с выполнением направления', default=None
|
||||||
|
)
|
||||||
|
LpuName: str | None = Field(
|
||||||
|
title='Наименование МО', examples=['ГАУЗ "ГКБ №7"'], default=None
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
class RoutesListModel(BaseModel):
|
||||||
|
EventID: str = Field(
|
||||||
|
title='Идентификатор случая госпитализации',
|
||||||
|
examples=['a268e6d7-618c-4b83-97ca-c9dc8b79b55b'],
|
||||||
|
)
|
||||||
|
EventDate: datetime = Field(
|
||||||
|
title='Дата обращения', examples=['2025-03-17']
|
||||||
|
)
|
||||||
|
LpuName: str = Field(title='Наименование МО', examples=['ГАУЗ "ГКБ №7"'])
|
||||||
|
Routes: list[RouteModel] = Field(title='Список направлений')
|
||||||
|
|||||||
Reference in New Issue
Block a user