src/Controller/Movimientos/TransferenciaController.php line 23

Open in your IDE?
  1. <?php
  2. namespace App\Controller\Movimientos;
  3. use App\Entity\Movimientos\Transferencia;
  4. use App\Form\Movimientos\TransferenciaType;
  5. use App\Repository\Movimientos\TransferenciaRepository;
  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 Sensio\Bundle\FrameworkExtraBundle\Configuration\Security;
  11. /**
  12.  * @Route("/movimientos/transferencia")
  13.  * @Security("is_granted('IS_AUTHENTICATED_FULLY')")
  14.  */
  15. class TransferenciaController extends AbstractController
  16. {
  17.     /**
  18.      * @Route("/", name="app_movimientos_transferencia_index", methods={"GET"})
  19.      */
  20.     public function index(TransferenciaRepository $transferenciaRepository): Response
  21.     {
  22.         return $this->render('movimientos/transferencia/index.html.twig', [
  23.             'transferencias' => $transferenciaRepository->findAll(),
  24.         ]);
  25.     }
  26.     /**
  27.      * @Route("/new", name="app_movimientos_transferencia_new", methods={"GET", "POST"})
  28.      */
  29.     public function new(Request $request, TransferenciaRepository $transferenciaRepository): Response
  30.     {
  31.         $transferencium = new Transferencia();
  32.         $proximo = $transferenciaRepository->proximoNumero();
  33.         if (!$proximo)
  34.         {
  35.             $proximo = 1;
  36.         }
  37.         $transferencium->setNumero($proximo);
  38.         
  39.         $form = $this->createForm(TransferenciaType::class, $transferencium);
  40.         $form->handleRequest($request);
  41.         if ($form->isSubmitted() && $form->isValid()) {
  42.             $transferenciaRepository->add($transferencium, true);
  43.             return $this->redirectToRoute('app_movimientos_item_movimiento_new', ['id' => $transferencium->getId()], Response::HTTP_SEE_OTHER);
  44.            // return $this->redirectToRoute('app_movimientos_transferencia_index', [], Response::HTTP_SEE_OTHER);
  45.         }
  46.         return $this->renderForm('movimientos/transferencia/new.html.twig', [
  47.             'transferencium' => $transferencium,
  48.             'form' => $form,
  49.         ]);
  50.     }
  51.     /**
  52.      * @Route("/{id}", name="app_movimientos_transferencia_show", methods={"GET"})
  53.      */
  54.     public function show(Transferencia $transferencium): Response
  55.     {
  56.         return $this->render('movimientos/transferencia/show.html.twig', [
  57.             'transferencium' => $transferencium,
  58.         ]);
  59.     }
  60.     /**
  61.      * @Route("/{id}/edit", name="app_movimientos_transferencia_edit", methods={"GET", "POST"})
  62.      */
  63.     public function edit(Request $request, Transferencia $transferencium, TransferenciaRepository $transferenciaRepository): Response
  64.     {
  65.         $form = $this->createForm(TransferenciaType::class, $transferencium);
  66.         $form->handleRequest($request);
  67.         if ($form->isSubmitted() && $form->isValid()) {
  68.             $transferenciaRepository->add($transferencium, true);
  69.             return $this->redirectToRoute('app_movimientos_transferencia_index', [], Response::HTTP_SEE_OTHER);
  70.         }
  71.         return $this->renderForm('movimientos/transferencia/edit.html.twig', [
  72.             'transferencium' => $transferencium,
  73.             'form' => $form,
  74.         ]);
  75.     }
  76.     /**
  77.      * @Route("/{id}", name="app_movimientos_transferencia_delete", methods={"POST"})
  78.      */
  79.     public function delete(Request $request, Transferencia $transferencium, TransferenciaRepository $transferenciaRepository): Response
  80.     {
  81.         if ($this->isCsrfTokenValid('delete'.$transferencium->getId(), $request->request->get('_token'))) {
  82.             $transferenciaRepository->remove($transferencium, true);
  83.         }
  84.         return $this->redirectToRoute('app_movimientos_transferencia_index', [], Response::HTTP_SEE_OTHER);
  85.     }
  86. }