src/Controller/Frontend/Nin9rsController.php line 43

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Controller\Frontend;
  4. use App\Controller\Frontend\Grouping\Service\GroupingShow;
  5. use App\Entity\Backend\Agrupacion;
  6. use Doctrine\ORM\EntityManagerInterface;
  7. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  8. use Symfony\Component\HttpFoundation\JsonResponse;
  9. use Symfony\Component\Routing\Annotation\Route;
  10. use Symfony\Component\HttpFoundation\Response;
  11. #[Route('/nin9rs')]
  12. final class Nin9rsController extends AbstractController
  13. {
  14.     public function __construct(
  15.         private readonly EntityManagerInterface $em,
  16.         private readonly GroupingShow $groupingShow,
  17.     ) {}
  18.     #[Route(path'/data'name'frontend_nin9rs_data'methods: ['GET'])]
  19.     public function data (): JsonResponse
  20.     {
  21.         $groupings $this->em->getRepository(Agrupacion::class)->findBy(['cliente' => 48], ['fecha_inicio' => 'ASC']); // 48 es el id del cliente de nin9rs creado en produccion
  22.         $nin9rsData = [];
  23.         foreach ($groupings as $grouping) {
  24.             $groupingData $this->groupingShow->__invoke($grouping->getId());
  25.             $nin9rsData[] = [
  26.                 "competitions" => $groupingData["competitions"],
  27.                 "groupingName" => $grouping->getNombre(),
  28.             ];
  29.         }
  30.         return new JsonResponse($nin9rsData);
  31.     }
  32.     #[Route(path'/view'name'frontend_nin9rs_view'methods: ['GET'])]
  33.     public function view (): Response
  34.     {
  35.         return $this->render("frontend/nin9rs.html.twig");
  36.     }
  37. }