Патч
Some checks failed
Build And Push / publish (push) Has been cancelled

This commit is contained in:
2025-11-27 13:28:58 +03:00
parent 45a4123708
commit f3c9cb42d6
12 changed files with 172 additions and 88 deletions

View File

@ -49,22 +49,20 @@ async def callback(session: AsyncSessionDep, code: str):
token.access_token, token.id_token
)
vita_user = await c.vitacore_api.findBySnils(esia_user.snils)
if len(vita_user.patients) == 0:
raise e.BadRequestException(detail='Patient not found')
vita_user = vita_user.patients[0]
try:
vita_user = await c.vitacore_api.findBySnils(esia_user.snils)
except e.UnknownException:
raise e.BadRequestException(detail='Patient not found') from None
existing_user_stmt = (
select(User).where(User.vita_id == vita_user.id).limit(1)
select(User).where(User.vita_id == vita_user.patId).limit(1)
)
existing_user = (
await session.execute(existing_user_stmt)
).scalar_one_or_none()
if existing_user is None:
user = User(vita_id=vita_user.id)
user = User(vita_id=vita_user.patId)
session.add(user)
await session.commit()
await session.refresh(user)