AuthController.php 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. <?php
  2. namespace App\Http\Controllers\Cp\Manage;
  3. use App\Http\Controllers\Controller;
  4. use App\Modules\CpUser\Services\CpUserService;
  5. use Illuminate\Http\Request;
  6. use App\Modules\CpUser\Models\CpUser;
  7. use Cache;
  8. class AuthController extends Controller
  9. {
  10. /**
  11. * @apiDefine Manage 管理
  12. */
  13. /**
  14. * @apiVersion 1.0.0
  15. * @apiDescription 管理后台登陆
  16. * @api {POST} auth/login 管理后台登陆
  17. * @apiGroup Manage
  18. * @apiName login
  19. * @apiParam {String} username 账号.
  20. * @apiParam {String} password 密码.
  21. * @apiSuccessExample {json} Success-Response:
  22. *
  23. * {
  24. * "code": 0,
  25. * "msg": "",
  26. * "data": {}
  27. * }
  28. */
  29. function login(Request $request)
  30. {
  31. $msg = '';
  32. do{
  33. $username = $request->has('username') ? trim($request->input('username')) : '';
  34. $password = $request->has('password') ? trim($request->input('password')) : '';
  35. if(!$username || !$password) {
  36. $msg = '账号或者密码不能为空';
  37. break;
  38. }
  39. $cp_user = CpUserService::getCpUser($username);
  40. if($cp_user && $cp_user->password == md5($password."^-^zhuishuyun^_^"))
  41. {
  42. if($cp_user->is_enabled == 0) {
  43. $msg = '无效账号';
  44. break;
  45. }
  46. $request->session()->put('cp_manage_auth', $cp_user->id);
  47. $request->session()->put('cp_manage_user', serialize($cp_user));
  48. $options = [];
  49. $options =[
  50. 'login'=>'ok',
  51. 'username'=>$username
  52. ];
  53. $options = json_encode($options);
  54. // 成功后跳后台
  55. return redirect('index');
  56. }else{
  57. $msg = '账号或者密码错误';
  58. break;
  59. }
  60. }while(false);
  61. return redirect('/login?msg='.$msg);
  62. }
  63. /**
  64. * Get a validator for an incoming registration request.
  65. *
  66. * @param array $data
  67. * @return \Illuminate\Contracts\Validation\Validator
  68. */
  69. protected function validator(array $data)
  70. {
  71. return Validator::make($data, [
  72. 'name' => 'required|max:255',
  73. 'email' => 'required|email|max:255|unique:users',
  74. 'password' => 'required|confirmed|min:6',
  75. ]);
  76. }
  77. }