This commit is contained in:
@ -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)
|
||||
|
||||
Reference in New Issue
Block a user