|
- <?php
-
- namespace App\Http\Controllers\Web\Auth;
-
- use App\Codes\UserRole;
- use App\Http\Controllers\Web\WebController;
- use App\Models\User;
- use Illuminate\Http\JsonResponse;
- use Illuminate\Http\Request;
-
- class SwitchCustomerController extends WebController
- {
-
- public function name(): string
- {
- return "成り代わり(顧客)";
- }
-
- public function description(): string
- {
- return "成り代わりを行う";
- }
-
-
- public function __construct(protected SwitchParam $param)
- {
- parent::__construct();
- }
-
- protected function run(Request $request): JsonResponse
- {
- $param = $this->param;
-
- $user = User::findOrFail($param->userId);
- if ($user->role !== UserRole::CUSTOMER) throw new LogicException();
-
- $this->sessionUser->switch($user);
-
- $res = [
- 'user_id' => $user->id,
- 'name' => $user->name,
- 'role' => $user->role,
- ];
-
- return $this->successResponse($res);
- }
- }
|