Добавлен эндпоинт getMedExamDict
This commit is contained in:
@ -75,6 +75,14 @@ async def get_vaccs_report():
|
||||
)
|
||||
|
||||
|
||||
@router.get('/getMedExamDict')
|
||||
async def get_med_exam_dict():
|
||||
"""
|
||||
Get medical examination dictionary.
|
||||
"""
|
||||
return await c.vitacore_api.getMedExamDict()
|
||||
|
||||
|
||||
@router.post('/measurement', status_code=status.HTTP_202_ACCEPTED)
|
||||
async def measurement(
|
||||
user: Annotated[str, Depends(login)],
|
||||
@ -169,11 +177,6 @@ async def get_routes_list(user: Annotated[str, Depends(login)]):
|
||||
return mock.routesList[0]
|
||||
|
||||
|
||||
@router.get('/getMedExamDict')
|
||||
async def get_med_exam_dict(user: Annotated[str, Depends(login)]):
|
||||
return mock.medexamDict
|
||||
|
||||
|
||||
@router.get('/getHospRecommendations')
|
||||
async def get_hosp_recommendations(user: Annotated[str, Depends(login)]):
|
||||
return mock.hospRecommendations
|
||||
|
||||
@ -80,3 +80,13 @@ class VITACORE_API(AsyncClient):
|
||||
case _:
|
||||
self.logger.error(req.json())
|
||||
raise e.UnknownException
|
||||
|
||||
async def getMedExamDict(self):
|
||||
req = await self.get('/getMedExamDict')
|
||||
|
||||
match req.status_code:
|
||||
case st.HTTP_200_OK:
|
||||
return s.MedExamDictModel.model_validate(req.json())
|
||||
case _:
|
||||
self.logger.error(req.json())
|
||||
raise e.UnknownException
|
||||
|
||||
@ -234,3 +234,47 @@ class VaccsReportModel(BaseModel):
|
||||
title='Содержимое документа в формате .doc '
|
||||
'(сжатое методом кодирования Base64)'
|
||||
)
|
||||
|
||||
|
||||
class MedExamItemModel(BaseModel):
|
||||
AgeGroupName: str = Field(
|
||||
title='Наименование возрастной группы',
|
||||
examples=['ДВН 1 этап. приказ 404н'],
|
||||
)
|
||||
# AgeGroupCriteria
|
||||
Required: str = Field(
|
||||
title='Обязательность',
|
||||
examples=['Обязательный/Дополнительный'],
|
||||
)
|
||||
Type: str = Field(
|
||||
title='Тип',
|
||||
examples=['Специальность/Услуга'],
|
||||
)
|
||||
MedicalServiceCode: str = Field(
|
||||
title='Код услуги',
|
||||
examples=['B04.010.002'],
|
||||
)
|
||||
MedicalServiceName: str = Field(
|
||||
title='Наименрование услуги',
|
||||
examples=['Осмотр фельдшером (акушеркой) или врачом акушером'],
|
||||
)
|
||||
SpecialityName: str = Field(
|
||||
title='Специальность',
|
||||
examples=['Акушер-гинеколог'],
|
||||
)
|
||||
|
||||
|
||||
class MedExamTypeModel(BaseModel):
|
||||
Name: str = Field(
|
||||
title='Наименование медосмотра',
|
||||
examples=['ДВН 1 этап. приказ 404н'],
|
||||
)
|
||||
Code: str = Field(
|
||||
title='Код медосмотра',
|
||||
examples=['024'],
|
||||
)
|
||||
MedExamItems: list[MedExamItemModel]
|
||||
|
||||
|
||||
class MedExamDictModel(BaseModel):
|
||||
MedExamTypes: list[MedExamTypeModel]
|
||||
|
||||
Reference in New Issue
Block a user