src/Controller/Comun/FestivoController.php line 55

Open in your IDE?
  1. <?php
  2. namespace App\Controller\Comun;
  3. use App\Entity\Comun\Festivo;
  4. use App\Form\Comun\FestivoType;
  5. use App\Repository\Comun\FestivoRepository;
  6. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  7. use Symfony\Component\HttpFoundation\Request;
  8. use Symfony\Component\HttpFoundation\Response;
  9. use Symfony\Component\Routing\Annotation\Route;
  10. use App\Entity\Admin\Empleada;
  11. use App\Repository\Admin\EmpleadaRepository;
  12. #[Route('/comun/festivo')]
  13. class FestivoController extends AbstractController
  14. {
  15.     #[Route('/'name'app_comun_festivo_index'methods: ['GET''POST'])]
  16.     public function index(Request $requestFestivoRepository $festivoRepository): Response
  17.     {
  18.         $empleada $this->get('security.token_storage')->getToken()->getUser()->getEmpleada();
  19.         $festivos $festivoRepository->findBy(['empleada' => $empleada], ['fecha' => 'ASC']);
  20.         $festivo = new Festivo();
  21.         $festivo->setEmpleada($empleada);
  22.         $form $this->createForm(FestivoType::class, $festivo);
  23.         $form->handleRequest($request);
  24.         if ($form->isSubmitted() && $form->isValid()) {
  25.             $festivoRepository->add($festivo);
  26.             return $this->redirectToRoute('app_comun_festivo_index', [], Response::HTTP_SEE_OTHER);
  27.         }
  28.         return $this->renderForm('comun/festivo/index.html.twig', [
  29.             'festivos' => $festivos,
  30.             'festivo' => $festivo,
  31.             'form' => $form,
  32.             'empleada' => $empleada
  33.         ]);
  34.         
  35.     }
  36.     
  37.     #[Route('/lista/{id}'name'app_comun_festivo_lista'methods: ['GET'])]
  38.     public function lista(FestivoRepository $festivoRepositoryEmpleada $empleada): Response
  39.     {
  40.         $festivos $festivoRepository->findBy(['empleada' => $empleada], ['fecha' => 'ASC']);
  41.         
  42.         return $this->renderForm('comun/festivo/lista.html.twig', [
  43.             'festivos' => $festivos,
  44.             
  45.         ]);
  46.         
  47.     }
  48.     
  49.     #[Route('/admin'name'app_comun_festivo_admin'methods: ['GET'])]
  50.     public function admin(EmpleadaRepository $er): Response
  51.     {
  52.         $empleadas $er->findBy([], ['nombre' => 'ASC']);
  53.         
  54.         return $this->renderForm('comun/festivo/admin.html.twig', [
  55.             'empleadas' => $empleadas,
  56.             
  57.         ]);
  58.         
  59.     }
  60.     
  61.     #[Route('/eliminar/{id}'name'app_comun_festivo_eliminar'methods: ['GET'])]
  62.     public function eliminar(FestivoRepository $festivoRepositoryFestivo $festivo): Response
  63.     {
  64.         
  65.             $festivoRepository->remove($festivo);
  66.             return $this->redirectToRoute('app_comun_festivo_index', [], Response::HTTP_SEE_OTHER);
  67.         
  68.     }
  69.     #[Route('/new'name'app_comun_festivo_new'methods: ['GET''POST'])]
  70.     public function new(Request $requestFestivoRepository $festivoRepository): Response
  71.     {
  72.         $festivo = new Festivo();
  73.         $form $this->createForm(FestivoType::class, $festivo);
  74.         $form->handleRequest($request);
  75.         if ($form->isSubmitted() && $form->isValid()) {
  76.             $festivoRepository->add($festivo);
  77.             return $this->redirectToRoute('app_comun_festivo_index', [], Response::HTTP_SEE_OTHER);
  78.         }
  79.         return $this->renderForm('comun/festivo/new.html.twig', [
  80.             'festivo' => $festivo,
  81.             'form' => $form,
  82.         ]);
  83.     }
  84.     #[Route('/{id}'name'app_comun_festivo_show'methods: ['GET'])]
  85.     public function show(Festivo $festivo): Response
  86.     {
  87.         return $this->render('comun/festivo/show.html.twig', [
  88.             'festivo' => $festivo,
  89.         ]);
  90.     }
  91.     #[Route('/{id}/edit'name'app_comun_festivo_edit'methods: ['GET''POST'])]
  92.     public function edit(Request $requestFestivo $festivoFestivoRepository $festivoRepository): Response
  93.     {
  94.         $form $this->createForm(FestivoType::class, $festivo);
  95.         $form->handleRequest($request);
  96.         if ($form->isSubmitted() && $form->isValid()) {
  97.             $festivoRepository->add($festivo);
  98.             return $this->redirectToRoute('app_comun_festivo_index', [], Response::HTTP_SEE_OTHER);
  99.         }
  100.         return $this->renderForm('comun/festivo/edit.html.twig', [
  101.             'festivo' => $festivo,
  102.             'form' => $form,
  103.         ]);
  104.     }
  105.     #[Route('/{id}'name'app_comun_festivo_delete'methods: ['POST'])]
  106.     public function delete(Request $requestFestivo $festivoFestivoRepository $festivoRepository): Response
  107.     {
  108.         if ($this->isCsrfTokenValid('delete'.$festivo->getId(), $request->request->get('_token'))) {
  109.             $festivoRepository->remove($festivo);
  110.         }
  111.         return $this->redirectToRoute('app_comun_festivo_index', [], Response::HTTP_SEE_OTHER);
  112.     }
  113. }