authService = $authService; } /** * Lấy thông tin khách hàng hiện tại */ public function me() { return new ClientResource(auth('sanctum')->user()); } /** * Đăng nhập khách hàng */ public function login(ClientAuthRequest $request) { $result = $this->authService->authenticateClient($request->validated()); return response()->json([ 'error' => false, 'data' => [ 'client' => new ClientResource($result['client']), 'token' => $result['token'], ], ]); } /** * Đăng ký khách hàng mới */ public function register(ClientRegisterRequest $request) { $result = $this->authService->registerClient($request->validated()); return response()->json([ 'error' => false, 'data' => [ 'client' => new ClientResource($result['client']), 'token' => $result['token'], ], ]); } /** * Đăng xuất khách hàng */ public function logout() { auth('sanctum')->user()->currentAccessToken()->delete(); return response()->json([ 'error' => false, 'message' => 'Đã đăng xuất thành công.', ]); } }