/** * Lists all Producteur entities. * * @Route("/AjouterProduits/{id}", name="producteur_add_product") */ public function addProduitsAction(Request $request, $id) { $em = $this->getDoctrine()->getManager(); $producteur = $em->getRepository('AdminBundle:Producteur')->find($id); $production = new Production(); $form = $this->createForm('AdminBundle\\Form\\ProductionType', $production); $form->handleRequest($request); if ($form->isSubmitted() && $form->isValid()) { $production->setProducteur($producteur); $em = $this->getDoctrine()->getManager(); $em->persist($production); $stock = $em->getRepository('AdminBundle:Stock')->findOneBy(array("produits" => $production->getProduits(), "entrepot" => $production->getEntrepot())); if (!$stock) { $stock = new Stock(); $stock->setEntrepot($production->getEntrepot()); $stock->setProduits($production->getProduits()); } $stock->setQuantite($stock->getQuantite() + $production->getQuantite()); $stock->setPoids($stock->getPoids() + $production->getPoids()); $em->persist($stock); $em->flush(); return $this->redirectToRoute('stock_index', array('id' => $production->getId())); } return $this->render('AdminBundle:Producteur:addProducts.html.twig', array('producteur' => $producteur, 'production' => $production, 'form' => $form->createView())); }
/** * Creates a form to delete a Stock entity. * * @param Production $stock The Stock entity * * @return \Symfony\Component\Form\Form The form */ private function createDeleteForm(Stock $stock) { return $this->createFormBuilder()->setAction($this->generateUrl('stock_delete', array('id' => $stock->getId())))->setMethod('DELETE')->getForm(); }