src/Controller/Tire/GetTiresByOfferAction.php line 15

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace Slivki\Controller\Tire;
  4. use Slivki\Message\Query\OnlineOrder\Tire\GetTiresByOfferQuery;
  5. use Slivki\Messenger\Query\QueryBusInterface;
  6. use Slivki\Util\CommonUtil;
  7. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  8. use Symfony\Component\HttpFoundation\Request;
  9. use Symfony\Component\HttpFoundation\Response;
  10. use Symfony\Component\Routing\Annotation\Route;
  11. final class GetTiresByOfferAction extends AbstractController
  12. {
  13.     private QueryBusInterface $queryBus;
  14.     public function __construct(QueryBusInterface $queryBus)
  15.     {
  16.         $this->queryBus $queryBus;
  17.     }
  18.     /**
  19.      * @Route("/online-zapis/{offerId}",
  20.      *     requirements={"offerId"="\d+"},
  21.      *     name="tires_by_offer_get",
  22.      *     methods={"GET"},
  23.      * ),
  24.      */
  25.     public function __invoke(int $offerIdRequest $request): Response
  26.     {
  27.         return $this->render(
  28.             CommonUtil::isMobileDevice($request)
  29.                 ? 'Slivki/mobile/tire/tires_by_offer.html.twig'
  30.                 'Slivki/tire/tires_by_offer.html.twig',
  31.             $this->queryBus->handle(new GetTiresByOfferQuery($offerId))->jsonSerialize(),
  32.         );
  33.     }
  34. }