'Deleted Remark', 'message' => 'You have successfully deleted a Remark' ]; } /** @var CanDeleteRemark */ private $canDeleteRemark; /** @var DeletesRemark */ private $deletesRemark; /** @var FetchesRemark */ private $fetchesRemark; /** * DeleteRemarkControllersLogic constructor. * @param CanDeleteRemark $canDeleteRemark * @param DeletesRemark $deletesRemark * @param FetchesRemark $fetchesRemark */ public function __construct(CanDeleteRemark $canDeleteRemark, DeletesRemark $deletesRemark, FetchesRemark $fetchesRemark) { $this->canDeleteRemark = $canDeleteRemark; $this->deletesRemark = $deletesRemark; $this->fetchesRemark = $fetchesRemark; } /** * @param Request $request * @return JsonResponse * @throws ErrorException */ public function logic(Request $request) : JsonResponse { $this->canDeleteRemark->passes(); $query = $this->fetchesRemark->execute(['id' => $request->route('id')]); $this->deletesRemark->execute($query); return $this->response([]); } }