AuthController.php 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <?php
  2. namespace App\Modules\Pc\Controllers;
  3. use App\Base\BaseController;
  4. use App\Models\User\User;
  5. use App\Modules\Pc\Services\AuthService;
  6. use App\Modules\Pc\Services\EmailService;
  7. use Illuminate\Support\Facades\Auth;
  8. class AuthController extends BaseController
  9. {
  10. public function emailCaptcha()
  11. {
  12. $params = $this->valid([
  13. "email" => "required|email",
  14. "source" => "required",
  15. ]);
  16. return $this->ok(app(EmailService::class)->emailCaptcha($params['email'], $params['source']));
  17. }
  18. public function profile()
  19. {
  20. /** @var User $user */
  21. $user = Auth::user();
  22. return $this->ok([
  23. "id" => $user->id,
  24. "token" => app(AuthService::class)->encryptToken($user->id),
  25. "name" => $user->name,
  26. "avatar" => $user->avatar,
  27. "company" => [
  28. "id" => optional($user->company)->id ?? 0,
  29. "name" => optional($user->company)->name ?? "",
  30. ],
  31. ]);
  32. }
  33. public function register()
  34. {
  35. return $this->ok([
  36. "token" => "token",
  37. "name" => "",
  38. "phone" => "",
  39. ]);
  40. }
  41. public function login()
  42. {
  43. return $this->ok([
  44. "token" => "token",
  45. "name" => "",
  46. "phone" => "",
  47. ]);
  48. }
  49. public function resetPassword()
  50. {
  51. return $this->ok([
  52. "token" => "token",
  53. "name" => "",
  54. "phone" => "",
  55. ]);
  56. }
  57. }