public ActionResult ActualizarItem(int?id, VentasCarrito reg)
 {
     ventasCart = ventasCarrito.SingleOrDefault(s => s.Id_Articulo == id);
     // Si lo que se requiere supera lo disponible, entonces se indica el error.
     if (reg.Cantidad > ventasCart.CantidadDisponible)
     {
         reg = ventasCarrito.SingleOrDefault(s => s.Id_Articulo == id);
         TempData["Error"] = "No Hay Suficientes(" + ventasCart.CantidadDisponible.ToString() + ")";
         return(View(reg));
     }
     else if (reg.Cantidad < 1) // Si se coloca una cantidad negativa o cero, se indica
     {
         reg = ventasCarrito.SingleOrDefault(s => s.Id_Articulo == id);
         TempData["Error"] = "Cantidad Inválida";
         return(View(reg));
     }
     else
     {
         if (ventasCart.Id_Articulo != 0)
         {
             ventasCart.Cantidad = reg.Cantidad;
             ventasCart.Total    = ventasCart.Cantidad * ventasCart.PrecioUnitarioVenta;
             CalculaTotales(); // Siempre hacemos refresh de los totales
             return(RedirectToAction("Carro"));
         }
         else
         {
             TempData["Error"] = "Error";
         }
         return(View(reg));
     }
 }
        // Para actualizar articulo del carrito
        public ActionResult ActualizarItem(int?id)
        {
            if (id == null)
            {
                id = 1;
            }
            VentasCarrito reg = ventasCarrito.SingleOrDefault(s => s.Id_Articulo == id);

            return(View(reg));
        }
        public ActionResult BorrarItem(int?id, VentasCarrito reg)
        {
            ventasCart = ventasCarrito.SingleOrDefault(s => s.Id_Articulo == id);

            if (ventasCart != null)
            {
                ventasCarrito.Remove(ventasCart);
                CalculaTotales(); // Siempre hacemos refresh de los totales
                return(RedirectToAction("Carro"));
            }
            return(View(reg));
        }
        public ActionResult Carro(int?idArt) //, int? txtCantidad, string BotonParam, string Actualizar, string Borrar, string add_tag)
        {
            if (idArt != null)
            {
                ventasCart = ventasCarrito.SingleOrDefault(s => s.Id_Articulo == idArt);
                if (ventasCart == null)
                {
                    // Es nuevo en el carrito
                    var ArtQuery = (from art in db.InventarioArticulos
                                    where art.Id_Articulo == idArt
                                    select art).FirstOrDefault();

                    if (ArtQuery != null && ArtQuery.CantidadDisponible > 0) // Confirmamos Exista y haya disponibilidad
                    {
                        VentasCarrito reg = new VentasCarrito();
                        reg.Id                  = 0;
                        reg.Id_Articulo         = ArtQuery.Id_Articulo;
                        reg.Descripcion         = ArtQuery.Descripcion;
                        reg.CantidadDisponible  = int.Parse(ArtQuery.CantidadDisponible.ToString());
                        reg.Cantidad            = 1;
                        reg.PrecioUnitarioVenta = ArtQuery.PrecioUnitarioVenta;
                        reg.Total               = reg.PrecioUnitarioVenta * reg.Cantidad;
                        reg.ArtImagen           = ArtQuery.ArtImagen;
                        ventasCarrito.Add(reg);
                    }
                }
                else
                {
                    // Si ya esta en el carrito y se vuelve a seleccionar el art. 1 a la cantidad
                    ventasCart.Cantidad++;
                    if (ventasCart.Cantidad > ventasCart.CantidadDisponible) // Si sobrepasa disponibilidad dejamos el maximo disp.
                    {
                        ventasCart.Cantidad = ventasCart.CantidadDisponible;
                    }
                }
            }

            CalculaTotales(); // Siempre hacemos refresh de los totales
            return(View(ventasCarrito));
        }