LoginController.php 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. <?php
  2. namespace App\Http\Controllers\Admin\Auth;
  3. use App\Models\AdminUserModel;
  4. use App\Services\Admin\AdminUser;
  5. use App\Http\Controllers\Admin\Controller;
  6. use Illuminate\Foundation\Auth\AuthenticatesUsers;
  7. use Validator, Auth;
  8. class LoginController extends Controller
  9. {
  10. /*
  11. |--------------------------------------------------------------------------
  12. | Login Controller
  13. |--------------------------------------------------------------------------
  14. |
  15. | This controller handles authenticating users for the application and
  16. | redirecting them to your home screen. The controller uses a trait
  17. | to conveniently provide its functionality to your applications.
  18. |
  19. */
  20. use AuthenticatesUsers;
  21. /**
  22. * Where to redirect users after login.
  23. *
  24. * @var string
  25. */
  26. protected $redirectTo = '/admin';
  27. /**
  28. * Create a new controller instance.
  29. *
  30. * @return void
  31. */
  32. public function __construct()
  33. {
  34. $this->_service = new AdminUser();
  35. $this->middleware('guest', ['except' => 'logout']);
  36. }
  37. /**
  38. * 重写登录视图页面
  39. * @author 晚黎
  40. * @date 2016-09-05T23:06:16+0800
  41. * @return [type] [description]
  42. */
  43. public function showLoginForm()
  44. {
  45. return view('admin.auth.login');
  46. }
  47. /**
  48. * 自定义认证驱动
  49. * @author 晚黎
  50. * @date 2016-09-05T23:53:07+0800
  51. * @return [type] [description]
  52. */
  53. protected function guard()
  54. {
  55. return auth()->guard('admin');
  56. }
  57. public function username()
  58. {
  59. return 'name';
  60. }
  61. public function wxLogin()
  62. {
  63. $store_id = session()->get('store_id');
  64. // dd($store_id);die;
  65. $wUser = session()->get('wUser');
  66. $wAccount = session()->get('wAccount');
  67. $res = AdminUserModel::where([['name', $wUser['name']],['store_id', $store_id]])->first();
  68. if (!$res) {
  69. $createUser['name'] = $wUser['name'];
  70. $createUser['real_name'] = $wUser['username'];
  71. $createUser['password'] = bcrypt('qweqwe');
  72. $createUser['type'] = 0;
  73. $createUser['status'] = 1;
  74. $createUser['is_root'] = null;
  75. $createUser['store_id'] = $store_id;
  76. $createUser['admin_role_id'] = 4;
  77. $res = AdminUserModel::create($createUser);
  78. }
  79. //dd(Auth::loginUsingId($res->id));
  80. if (Auth::guard('admin')->loginUsingId($res->id)) {
  81. $userAuth = Auth::guard('admin')->user();
  82. session()->put('is_we7','true');
  83. return redirect('?route=Admin/Base/Index/index');
  84. }
  85. //dd('success');
  86. }
  87. public function login(\Illuminate\Http\Request $request)
  88. {
  89. $validator = Validator::make($data = $request->all(),
  90. [
  91. 'name' => 'required', 'password' => 'required',
  92. ],
  93. [
  94. 'name.required'=>'请输入用户名',
  95. 'password.required'=>'请输入密码'
  96. ]
  97. );
  98. if ($validator->fails()) {
  99. $msg = $validator->messages()->first();
  100. return $this->showWarning($msg);
  101. }
  102. $res = $this->_service->login($request->name, $request->password);
  103. if($res) {
  104. session()->put('is_we7','true');
  105. redirect('/admin/login');
  106. }else{
  107. $msg = $this->_service->getMsg();
  108. $this->showWarning($msg);
  109. }
  110. return redirect('/admin');
  111. }
  112. public function logout()
  113. {
  114. Auth::guard('admin')->logout();
  115. return redirect('/admin/login');
  116. }
  117. }