Esempio n. 1
0
 public function addAction(Request $request)
 {
     $em = $this->getDoctrine()->getManager();
     $user = $this->container->get('security.context')->getToken()->getUser();
     if (!session_id()) {
         session_start();
     }
     $sessionID = session_id();
     if ($user == 'anon.') {
         $entityCart = $em->getRepository('CartBundle:cart')->findOneBy(array('llave' => $sessionID, 'estatus' => 1));
         if (!$entityCart) {
             $entityCart = new cart();
             //$usuario = em ->getRepository('Busqueda de usuario ')
             $entityCart->setLlave($sessionID);
             $entityCart->setestatus(1);
             $entityCart->setDateCart(new \DateTime("now"));
             // $entityCart->setUsuario($usuario)
             $em->persist($entityCart);
             $em->flush();
         } else {
             //$usuario= $em->getRepository('UserCarritoBundle:Usuario')->find($user->getId());
             $entityCart = $em->getRepository('CartBundle:cart')->findOneBy(array('estatus' => 1));
             if (!$entityCart) {
                 $entityCart = new carrito();
                 $entityCart->setLlave($sessionID);
                 $entityCart->setEstatus(1);
                 $entityCart->setDateCart(new \DateTime("now"));
                 $entityCart->setUsuario($usuario);
                 $em->persist($entityCart);
                 $em->flush();
             }
         }
         $id = $this->get('request')->request->get('txtProducto');
         if ($id > 0) {
             $producto = $em->getRepository('AdminBundle:AdminProd')->find($id);
             if ($this->get('request')->request->get('txtCantidad', 1) == '') {
                 $cantidad = 1;
             } else {
                 $cantidad = $this->get('request')->request->get('txtCantidad', 1);
             }
             $entity = new itemCart();
             $entity->setCantidad($cantidad);
             $total = $producto->getPrecio() * $cantidad;
             /*$entity->setCantidadPeriodo(1);
               $entity->setRenta($renta);
               $entity->setPeriodo($periodo);*/
             $entity->setprecioU($total);
             $entity->setCarrito($entityCarrito);
             $entity->setAdmonProd($producto);
             $entity->setDate(new \DateTime("now"));
             $em->persist($entity);
             $em->flush();
         }
         return $this->redirect($this->generateUrl('cart_show', array('id' => $entityCart->getId())));
     }
 }