'Retrieved Feedback', 'message' => 'You have successfully exported feedback data' ]; } /** @var ExportsFeedback */ private $exportsFeedback; /** @var CanExportFeedback */ private $canExportFeedback; /** * ExportFeedbackDataLogic constructor. * @param ExportsFeedback $exportsFeedback * @param CanExportFeedback $canExportFeedback */ public function __construct(ExportsFeedback $exportsFeedback, CanExportFeedback $canExportFeedback) { $this->exportsFeedback = $exportsFeedback; $this->canExportFeedback = $canExportFeedback; } /** * @param Request $request * @return Response */ public function logic(Request $request) : BinaryFileResponse { $this->canExportFeedback->passes(); $response = $this->exportsFeedback->download('feedback.xls', Excel::XLS, ['Content-Type' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet']); ob_end_clean(); return $response; } }