Добавлен эндпоинт getELNs
This commit is contained in:
@ -154,6 +154,14 @@ async def get_diagnostic_results():
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@router.get('/getELNs')
|
||||||
|
async def get_eln():
|
||||||
|
"""
|
||||||
|
Get list of ELNs.
|
||||||
|
"""
|
||||||
|
return await c.vitacore_api.getELNs('d4493f1c-fcbb-4242-99e6-32328bed53b9')
|
||||||
|
|
||||||
|
|
||||||
@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)],
|
||||||
@ -218,11 +226,6 @@ async def find_pat(user: Annotated[str, Depends(login)]):
|
|||||||
return mock.findpat[0]
|
return mock.findpat[0]
|
||||||
|
|
||||||
|
|
||||||
@router.get('/getELNS')
|
|
||||||
async def get_elns(user: Annotated[str, Depends(login)]):
|
|
||||||
return mock.elns[0]
|
|
||||||
|
|
||||||
|
|
||||||
@router.get('/getPatFLG')
|
@router.get('/getPatFLG')
|
||||||
async def get_pat_flg(user: Annotated[str, Depends(login)]):
|
async def get_pat_flg(user: Annotated[str, Depends(login)]):
|
||||||
return mock.patFLG[0]
|
return mock.patFLG[0]
|
||||||
|
|||||||
@ -165,3 +165,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 getELNs(self, patId: str):
|
||||||
|
req = await self.get('/getELNs', params={'patId': patId})
|
||||||
|
|
||||||
|
match req.status_code:
|
||||||
|
case st.HTTP_200_OK:
|
||||||
|
return s.ELNsModel.model_validate(req.json())
|
||||||
|
case _:
|
||||||
|
self.logger.error(req.json())
|
||||||
|
raise e.UnknownException
|
||||||
|
|||||||
@ -552,3 +552,59 @@ class DiagnosticResultsModel(BaseModel):
|
|||||||
DainosticsResults: list[DiagnosticResultModel] = Field(
|
DainosticsResults: list[DiagnosticResultModel] = Field(
|
||||||
title='Список результатов исследований'
|
title='Список результатов исследований'
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
class ProlongationModel(BaseModel):
|
||||||
|
StartDate: datetime = Field(
|
||||||
|
title='Дата продления с', examples=['2020-10-21']
|
||||||
|
)
|
||||||
|
ProlongationDate: str = Field(
|
||||||
|
title='Дата продления до', examples=['2020-10-25']
|
||||||
|
)
|
||||||
|
Post: str = Field(
|
||||||
|
title='Врач',
|
||||||
|
examples=['Ахсанова Р.М. (Врач общей практики (семейный врач))'],
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
class PatientELNModel(BaseModel):
|
||||||
|
PatientSNILS: str = Field(
|
||||||
|
title='СНИЛС болеющего', examples=['000-000-600 01']
|
||||||
|
)
|
||||||
|
Number: str = Field(
|
||||||
|
title='Номер листа нетрудоспособности', examples=['910040906829']
|
||||||
|
)
|
||||||
|
OpenDate: datetime = Field(title='Дата открытия', examples=['2020-10-21'])
|
||||||
|
DateClose: datetime = Field(title='Дата закрытия', examples=['2020-10-25'])
|
||||||
|
WorkDate: datetime = Field(
|
||||||
|
title='Дата выхода на работу', examples=['2020-10-26']
|
||||||
|
)
|
||||||
|
DaysCount: int = Field(
|
||||||
|
title='Количество дней нетрудоспособности', examples=[5]
|
||||||
|
)
|
||||||
|
Cause: str = Field(
|
||||||
|
title='Причина нетрудоспособности',
|
||||||
|
examples=[
|
||||||
|
'Заболевание (в том числе профессиональное заболевание и его '
|
||||||
|
'обострение)'
|
||||||
|
],
|
||||||
|
)
|
||||||
|
Prolongations: list[ProlongationModel] = Field(title='Продления')
|
||||||
|
LpuName: str = Field(
|
||||||
|
title='Наименование МО', examples=['ГАУЗ Новошешминская ЦРБ']
|
||||||
|
)
|
||||||
|
BranchAddress: str = Field(
|
||||||
|
title='Адрес подразделения выдачи',
|
||||||
|
examples=['Республика Татарстан,с.Новошешминск, ул.Майская, д.8'],
|
||||||
|
)
|
||||||
|
FssLnStatus: str = Field(title='Статус ЭЛН в ФСС', examples=['30'])
|
||||||
|
SentSNILS: str = Field(
|
||||||
|
title='СНИЛС получателя ЭЛН (отправленный в ФСС)',
|
||||||
|
examples=['00000060001'],
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
class ELNsModel(BaseModel):
|
||||||
|
PatientELNs: list[PatientELNModel] = Field(
|
||||||
|
title='Список электронных листов нетрудоспособности'
|
||||||
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user