|
|
|
|
@ -43,18 +43,18 @@ class PassportResource(Resource):
|
|
|
|
|
raise WebAppAuthRequiredError()
|
|
|
|
|
|
|
|
|
|
# get site from db and check if it is normal
|
|
|
|
|
site = db.session.scalars(select(Site).filter(Site.code == app_code, Site.status == "normal").limit(1)).first()
|
|
|
|
|
site = db.session.scalar(select(Site).filter(Site.code == app_code, Site.status == "normal"))
|
|
|
|
|
if not site:
|
|
|
|
|
raise NotFound()
|
|
|
|
|
# get app from db and check if it is normal and enable_site
|
|
|
|
|
app_model = db.session.scalars(select(App).filter(App.id == site.app_id).limit(1)).first()
|
|
|
|
|
app_model = db.session.scalar(select(App).filter(App.id == site.app_id))
|
|
|
|
|
if not app_model or app_model.status != "normal" or not app_model.enable_site:
|
|
|
|
|
raise NotFound()
|
|
|
|
|
|
|
|
|
|
if user_id:
|
|
|
|
|
end_user = db.session.scalars(
|
|
|
|
|
select(EndUser).filter(EndUser.app_id == app_model.id, EndUser.session_id == user_id).limit(1)
|
|
|
|
|
).first()
|
|
|
|
|
end_user = db.session.scalar(
|
|
|
|
|
select(EndUser).filter(EndUser.app_id == app_model.id, EndUser.session_id == user_id)
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
if end_user:
|
|
|
|
|
pass
|
|
|
|
|
@ -122,11 +122,11 @@ def exchange_token_for_existing_web_user(app_code: str, enterprise_user_decoded:
|
|
|
|
|
if not user_auth_type:
|
|
|
|
|
raise Unauthorized("Missing auth_type in the token.")
|
|
|
|
|
|
|
|
|
|
site = db.session.scalars(select(Site).filter(Site.code == app_code, Site.status == "normal").limit(1)).first()
|
|
|
|
|
site = db.session.scalar(select(Site).filter(Site.code == app_code, Site.status == "normal"))
|
|
|
|
|
if not site:
|
|
|
|
|
raise NotFound()
|
|
|
|
|
|
|
|
|
|
app_model = db.session.scalars(select(App).filter(App.id == site.app_id).limit(1)).first()
|
|
|
|
|
app_model = db.session.scalar(select(App).filter(App.id == site.app_id))
|
|
|
|
|
if not app_model or app_model.status != "normal" or not app_model.enable_site:
|
|
|
|
|
raise NotFound()
|
|
|
|
|
|
|
|
|
|
@ -141,17 +141,15 @@ def exchange_token_for_existing_web_user(app_code: str, enterprise_user_decoded:
|
|
|
|
|
|
|
|
|
|
end_user = None
|
|
|
|
|
if end_user_id:
|
|
|
|
|
end_user = db.session.scalars(select(EndUser).filter(EndUser.id == end_user_id).limit(1)).first()
|
|
|
|
|
end_user = db.session.scalar(select(EndUser).filter(EndUser.id == end_user_id))
|
|
|
|
|
if session_id:
|
|
|
|
|
end_user = db.session.scalars(
|
|
|
|
|
select(EndUser)
|
|
|
|
|
.filter(
|
|
|
|
|
end_user = db.session.scalar(
|
|
|
|
|
select(EndUser).filter(
|
|
|
|
|
EndUser.session_id == session_id,
|
|
|
|
|
EndUser.tenant_id == app_model.tenant_id,
|
|
|
|
|
EndUser.app_id == app_model.id,
|
|
|
|
|
)
|
|
|
|
|
.limit(1)
|
|
|
|
|
).first()
|
|
|
|
|
)
|
|
|
|
|
if not end_user:
|
|
|
|
|
if not session_id:
|
|
|
|
|
raise NotFound("Missing session_id for existing web user.")
|
|
|
|
|
@ -188,9 +186,9 @@ def _exchange_for_public_app_token(app_model, site, token_decoded):
|
|
|
|
|
user_id = token_decoded.get("user_id")
|
|
|
|
|
end_user = None
|
|
|
|
|
if user_id:
|
|
|
|
|
end_user = db.session.scalars(
|
|
|
|
|
select(EndUser).filter(EndUser.app_id == app_model.id, EndUser.session_id == user_id).limit(1)
|
|
|
|
|
).first()
|
|
|
|
|
end_user = db.session.scalar(
|
|
|
|
|
select(EndUser).filter(EndUser.app_id == app_model.id, EndUser.session_id == user_id)
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
if not end_user:
|
|
|
|
|
end_user = EndUser(
|
|
|
|
|
|