| | |
| | | continue |
| | | try: |
| | | name = login_data.username |
| | | email = "" |
| | | app_password = login_data.password |
| | | user_app = await UserAppDao(db).get_data_by_id(user.id, app["id"]) |
| | | if user_app: |
| | | name = user_app.username |
| | | email = user_app.email |
| | | app_password = user_app.decrypted_password(user_app.password) |
| | | else: |
| | | await update_user_info(db, user.id) |
| | | token = await service.login(name, app_password) |
| | | token = await service.login(name, app_password,email=email) |
| | | token_dict[app["id"]] = token |
| | | except Exception as e: |
| | | return Response(code=500, msg=f"Failed to login with {app['id']}: {str(e)}") |
| | |
| | | |
| | | @router.post("/v2/register", response_model=Response) |
| | | async def register_v2(user: UserCreate, db=Depends(get_db)): |
| | | if not is_valid_password(user.password): |
| | | password = await password_rsa(user.password) |
| | | if not is_valid_password(password): |
| | | return Response(code=400, msg="The password must be at least 8 and contain both numbers and letters") |
| | | db_user = db.query(UserModel).filter(UserModel.username == user.username).first() |
| | | if db_user: |
| | |
| | | register_dict[app['id']] = {"id":register_info.get("id"), "name": name, "email": register_info.get("email")} |
| | | except Exception as e: |
| | | return Response(code=500, msg=f"Failed to register with {app['id']}: {str(e)}") |
| | | user_id = await save_register_user(db, user.username, user.password, user.email, app_password, register_dict) |
| | | user_id = await save_register_user(db, user.username, password, user.email, app_password, register_dict) |
| | | if not user_id: |
| | | return Response(code=500, msg=f"Failed to register with app") |
| | | return Response(code=200, msg="User registered successfully",data={"userFlag": user_id}) |