Linux SRV-16 6.18.44-paas #1 SMP PREEMPT_DYNAMIC Thu Aug 13 10:08:12 UTC 2026 x86_64
/
proc
/
212
/
root
/
proc
/
212
/
root
/
proc
/
self
/
root
/
proc
/
70528
/
cwd
/
src
/
Controller
/
back
/
//proc/212/root/proc/212/root/proc/self/root/proc/70528/cwd/src/Controller/back/SizeController.php
<?php namespace App\Controller\back; use App\Entity\Size; use App\Repository\SizeRepository; use App\Repository\ProductRepository; use Doctrine\Persistence\ManagerRegistry; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Annotation\Route; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Doctrine\DBAL\Exception\ForeignKeyConstraintViolationException; /** * @Route("/admin/product") */ class SizeController extends AbstractController { /** * @Route("/{id}/size/create/{name}", name="back_size_create") */ public function index(ManagerRegistry $doctrine, $id, ProductRepository $productRepository, $name): Response { $product = $productRepository->find($id); $size = new Size(); $size->setName($name); $size->setProduct($product); $em = $doctrine->getManager(); $em->persist($size); $em->flush(); return $this->json($size->getId()); } /** * @Route("/size/{id}/delete", name="back_size_delete") */ public function deleteSize($id, SizeRepository $sizeRepository, ManagerRegistry $doctrine) { $size = $sizeRepository->find($id); $em = $doctrine->getManager(); try { $em->remove($size); $em->flush(); } catch (ForeignKeyConstraintViolationException $e) { $doctrine->resetManager(); $size = $sizeRepository->find($id); $em = $doctrine->getManager(); $size->setActive(false); $em->persist($size); $em->flush(); return $this->json("Impossible de supprimer la taille car elle est utilisé dans une commande. Elle à été archivée, et ne sera visible que sur les anciennes commandes."); } return $this->json("success"); } }