'Retrieved Help Menu First Question', 'message' => 'You have successfully retrieved a Help Menu First Question' ]; } /** @var CanFetchHelpMenuQuestion */ private $canFetchHelpMenuQuestion; /** @var FetchFirstQuestionQAProcessor */ private $fetchFirstQuestionQAProcessor; /** * FetchQuestionQALogic constructor. * @param CanFetchHelpMenuQuestion $canFetchHelpMenuQuestion * @param FetchFirstQuestionQAProcessor $fetchFirstQuestionQAProcessor */ public function __construct(CanFetchHelpMenuQuestion $canFetchHelpMenuQuestion, FetchFirstQuestionQAProcessor $fetchFirstQuestionQAProcessor) { $this->canFetchHelpMenuQuestion = $canFetchHelpMenuQuestion; $this->fetchFirstQuestionQAProcessor = $fetchFirstQuestionQAProcessor; } /** * @param Request $request * @return JsonResponse * @throws ErrorException */ public function logic(Request $request) : JsonResponse { $this->canFetchHelpMenuQuestion->passes(); $userId = Auth::user()->id; $query = $this->fetchFirstQuestionQAProcessor->execute($request); return $this->resourceResponse(new HelpMenuQuestionResource($query, $userId)); } }