'Retrieved Questions Answers', 'message' => 'You have successfully retrieved a list of questions and answers' ]; } /** @var CanListQuestions */ private $canListQuestions; /** @var ListsQuestionUserAnswerSelected */ private $listsQuestionUserAnswerSelected; /** * ListQuestionsAnswersQALogic constructor. * @param CanListQuestions $canListQuestions * @param ListsQuestionUserAnswerSelected $listsQuestionUserAnswerSelected */ public function __construct(CanListQuestions $canListQuestions, ListsQuestionUserAnswerSelected $listsQuestionUserAnswerSelected) { $this->canListQuestions = $canListQuestions; $this->listsQuestionUserAnswerSelected = $listsQuestionUserAnswerSelected; } /** * @param Request $request * @return JsonResponse * @throws \App\Classes\Exceptions\AccessForbiddenException * @throws \App\Classes\Exceptions\MalformedRequestException * @throws \App\Classes\Exceptions\RequestValidationException */ public function logic(Request $request) : JsonResponse { $this->canListQuestions->passes(); $query = $this->listsQuestionUserAnswerSelected->execute($this->listsQuestionUserAnswerSelected->deserializeFilters($request->input('filters'))); return $this->collectionResponse(QuestionsAnswersResource::collection($query)); } }