From 365d6b16969a4249de72d9a5e719bcfba41099e9 Mon Sep 17 00:00:00 2001 From: Miwory Date: Mon, 29 Sep 2025 08:53:45 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=20=D1=8D=D0=BD=D0=B4=D0=BF=D0=BE=D0=B8=D0=BD=D1=82=20get?= =?UTF-8?q?VaccsReport?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/apps/users/v1/router.py | 15 ++++++++++----- src/clients/vitacore/api.py | 10 ++++++++++ src/clients/vitacore/schema.py | 7 +++++++ 3 files changed, 27 insertions(+), 5 deletions(-) diff --git a/src/apps/users/v1/router.py b/src/apps/users/v1/router.py index b9d7b41..3e73f37 100644 --- a/src/apps/users/v1/router.py +++ b/src/apps/users/v1/router.py @@ -65,6 +65,16 @@ async def get_entries(): ) +@router.get('/getVaccsReport') +async def get_vaccs_report(): + """ + Get report of vaccinations for user by id. + """ + return await c.vitacore_api.getVaccsReport( + '6fe66cae-409a-4f56-8ae9-d55d3c38569b' + ) + + @router.post('/measurement', status_code=status.HTTP_202_ACCEPTED) async def measurement( user: Annotated[str, Depends(login)], @@ -139,11 +149,6 @@ async def get_elns(user: Annotated[str, Depends(login)]): return mock.elns[0] -@router.get('/getVaccsReport') -async def get_vaccs_report(user: Annotated[str, Depends(login)]): - return mock.vacs[0] - - @router.get('/getDiagnosticResults') async def get_diagnostic_results(user: Annotated[str, Depends(login)]): return mock.diagnosticResults diff --git a/src/clients/vitacore/api.py b/src/clients/vitacore/api.py index c97bebc..def2896 100644 --- a/src/clients/vitacore/api.py +++ b/src/clients/vitacore/api.py @@ -70,3 +70,13 @@ class VITACORE_API(AsyncClient): case _: self.logger.error(req.json()) raise e.UnknownException + + async def getVaccsReport(self, patId: str): + req = await self.get('/getVaccsReport', params={'patId': patId}) + + match req.status_code: + case st.HTTP_200_OK: + return s.VaccsReportModel.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 413b3c1..bcc52bc 100644 --- a/src/clients/vitacore/schema.py +++ b/src/clients/vitacore/schema.py @@ -227,3 +227,10 @@ class EntryModel(BaseModel): class EntriesModel(BaseModel): Entries: list[EntryModel] + + +class VaccsReportModel(BaseModel): + content: str = Field( + title='Содержимое документа в формате .doc ' + '(сжатое методом кодирования Base64)' + )