service->getAll(); return $this->successResponse(payload: NotificationResource::collection($items)); } public function store(NotificationRequest $request): JsonResponse { $item = $this->service->create($request->validated()); return $this->successResponse( payload: new NotificationResource($item), message: __('messages.created'), code: 201, ); } public function show(int $id): JsonResponse { $item = $this->service->findById($id); return $this->successResponse(payload: new NotificationResource($item)); } public function destroy(int $id): JsonResponse { $this->service->delete($id); return $this->successResponse(message: __('messages.deleted'), code: 204); } public function myUnread(): JsonResponse { $items = $this->service->getUnreadByUser(Auth::id()); return $this->successResponse(payload: NotificationSendResource::collection($items)); } public function markAsRead(int $sendId): JsonResponse { $this->service->markAsRead($sendId, Auth::id()); return $this->successResponse(message: __('messages.updated')); } }