28 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Ruby
		
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Ruby
		
	
	
	
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 |