class BindUsersController < ApplicationController def create Rails.logger.debug "--------------开始绑定用户------------" Rails.logger.debug "--------------params: #{params.to_unsafe_h}" tip_exception '系统错误' if session[:unionid].blank? bind_user = User.try_to_login(params[:username], params[:password]) tip_exception '用户名或者密码错误' if bind_user.blank? tip_exception '用户名或者密码错误' unless bind_user.check_password?(params[:password].to_s) tip_exception '参数错误' unless ["qq", "wechat", "gitee", "github", "educoder", "acge"].include?(params[:type].to_s) tip_exception '该账号已被绑定,请更换其他账号进行绑定' if bind_user.bind_open_user?(params[:type].to_s) "OpenUsers::#{params[:type].to_s.capitalize}".constantize.create!(user: bind_user, uid: session[:unionid]) successful_authentication(bind_user) @user = bind_user end def new_user current_user end private def create_params params.permit(:username, :password, :type, :not_bind) end end