You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

32 lines
928 B

class Oauth::QQController < Oauth::BaseController
def create
Rails.logger.info "---------收到qq登录回调-------------"
Rails.logger.info "---------auth_hash: #{auth_hash['uid']}"
new_user = false
# 存在该用户
open_user = OpenUsers::QQ.find_by(uid: auth_hash['uid'])
if open_user.present? && open_user.user.present?
successful_authentication(open_user.user)
else
if current_user.blank? || !current_user.logged?
new_user = true
set_session_unionid(auth_hash['uid'])
else
OpenUsers::QQ.create!(user: current_user, uid: auth_hash['uid'])
end
end
render_ok(new_user: new_user)
end
end
# class Oauth::QQController < Oauth::BaseController
# def create
# user, new_user = Oauth::CreateOrFindQqAccountService.call(current_user, auth_hash)
#
# successful_authentication(user)
#
# render_ok(new_user: new_user)
# end
# end