AccountController.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?php
  2. namespace App\Http\Controllers\Account;
  3. use App\Facade\Site;
  4. use App\Consts\ErrorConst;
  5. use App\Exceptions\ApiException;
  6. use App\Libs\ApiResponse;
  7. use App\Libs\Utils;
  8. use App\Services\Account\AccountService;
  9. use App\Transformer\Account\AccountTransformer;
  10. use Illuminate\Http\Request;
  11. use Illuminate\Routing\Controller as BaseController;
  12. use Illuminate\Support\Facades\Redis;
  13. use Illuminate\Support\Facades\Validator;
  14. class AccountController extends BaseController
  15. {
  16. use ApiResponse;
  17. protected $accountService;
  18. public function __construct(
  19. AccountService $accountService
  20. ) {
  21. $this->accountService = $accountService;
  22. }
  23. public function index(Request $request)
  24. {
  25. return view('index');
  26. }
  27. /**
  28. * 动漫音频管理平台入口
  29. *
  30. * @param Request $request
  31. * @return \Illuminate\Contracts\View\View
  32. */
  33. public function animeIndex(Request $request)
  34. {
  35. return view('animeIndex');
  36. }
  37. /**
  38. * 登录
  39. *
  40. * @param Request $request
  41. * @return mixed
  42. * @throws ApiException
  43. */
  44. public function login(Request $request)
  45. {
  46. $all = $request->all();
  47. $account = trim(getProp($all, 'account'));
  48. $passwd = trim(getProp($all, 'passwd'));
  49. if (strlen($account) < 1 || strlen($passwd) < 1) {
  50. Utils::throwError(ErrorConst::PARAM_ERROR_CODE);
  51. }
  52. // 登录
  53. $user = $this->accountService->login($account, $passwd);
  54. return $this->success($user);
  55. }
  56. /**
  57. * 退出登录
  58. *
  59. * @return mixed
  60. */
  61. public function logout()
  62. {
  63. // 当前登录用户
  64. $token = Site::getToken();
  65. // 退出
  66. $result = $this->accountService->logout($token);
  67. return $this->success(['success' => $result ? 1 : 0]);
  68. }
  69. }