private List <ItemCarrito> cargarItems(string codigoFactura)
        {
            GestorConexion     gestor     = new GestorConexion();
            List <ItemCarrito> aux        = new List <ItemCarrito>();
            SqlConnection      connection = gestor.connection();
            SqlCommand         command    = new SqlCommand();
            SqlDataReader      lector;

            try
            {
                command.CommandType = System.Data.CommandType.Text;
                command.CommandText = "select * from vw_itemFactura where CodigoFactura = @code";
                command.Parameters.AddWithValue("@code", codigoFactura);
                command.Connection = connection;
                connection.Open();
                lector = command.ExecuteReader();
                while (lector.Read())
                {
                    ItemCarrito x = new ItemCarrito();
                    x.code      = lector.GetString(1);
                    x.name      = lector.GetString(2);
                    x.ammount   = lector.GetInt32(3);
                    x.unitPrice = (float)lector.GetDecimal(4);
                    aux.Add(x);
                }
                connection.Close();
                return(aux);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public List <ItemCarrito> Listar(Pedido pedidin)
        {
            AccesoDatos        Acceso = new AccesoDatos();
            List <ItemCarrito> Lista  = new List <ItemCarrito>();

            try
            {
                Acceso.setearQuery("Select IdProducto, IdPedido, PrecioActual, CantidadPedida, UrlImagen, Nombre from Detalle where IdPedido = @idPed");
                Acceso.agregarParametro("@idPed", pedidin.IdPedido);

                Acceso.ejecutarLector();
                Acceso.lector = Acceso.comando.ExecuteReader();
                while (Acceso.lector.Read())
                {
                    ItemCarrito Aux = new ItemCarrito();

                    Aux.IdProducto     = (long)Acceso.lector["IdProducto"];
                    Aux.IdPedido       = (long)Acceso.lector["IdPedido"];
                    Aux.PrecioActual   = (Decimal)Acceso.lector["PrecioActual"];
                    Aux.CantidadPedida = (Byte)Acceso.lector["CantidadPedida"];
                    Aux.UrlImagen      = (string)Acceso.lector["UrlImagen"];
                    Aux.NombreActual   = (string)Acceso.lector["Nombre"];

                    Lista.Add(Aux);
                }
                Acceso.cerrarConexion();
                return(Lista);
            }
            catch (Exception ex)
            {
                throw ex;
                // return Lista;
                //obviamente hay que hacer una redireccion a una pagina de error  :)
            }
        }
        //-------ESCRITURA---------------


        public void saveItems(ItemCarrito item, string codigoFactura)
        {
            GestorConexion gestor     = new GestorConexion();
            SqlConnection  connection = gestor.connection();
            SqlCommand     command    = new SqlCommand();

            try
            {
                command.CommandType = System.Data.CommandType.Text;
                command.CommandText = "insert into itemsxfactura values(@ArtCode, @CodigoFactura, @price, @cant) ";
                command.Parameters.AddWithValue("@ArtCode", item.code);
                command.Parameters.AddWithValue("@CodigoFactura", codigoFactura);
                command.Parameters.AddWithValue("@price", (decimal)item.unitPrice);
                command.Parameters.AddWithValue("@cant", item.ammount);
                command.Connection = connection;
                connection.Open();
                command.ExecuteNonQuery();
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                connection.Close();
            }
        }
示例#4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            carrito  = (List <ItemCarrito>)Session["listaCarrito"];
            elemento = new ItemCarrito();

            if (carrito == null)
            {
                carrito = new List <ItemCarrito>();
            }
            if (!IsPostBack)
            {
                if (Request.QueryString["id"] != null)
                {
                    if (carrito.Find(x => x.Articulos.ID.ToString() == Request.QueryString["id"]) == null)
                    {
                        List <Articulos> listadoOriginal = (List <Articulos>)Session["listadoArticulos"];
                        elemento.Articulos = listadoOriginal.Find(x => x.ID.ToString() == Request.QueryString["id"]);
                        carrito.Add(elemento);
                    }
                }
                Repetidor.DataSource = carrito;

                Repetidor.DataBind();
            }
            Session.Add("ListaCarrito", carrito);
        }
示例#5
0
 private void SetearFila(DataGridViewRow r, ItemCarrito itemCarrito)
 {
     r.Cells[cmnPropiedad.Index].Value      = itemCarrito.Propiedad.DescripcionP;
     r.Cells[cmnValorPropiedad.Index].Value = itemCarrito.Valor;
     r.Cells[cmnCostoOperacion.Index].Value = itemCarrito.Propiedad.CostoOperacion;
     r.Cells[cmnTotal.Index].Value          = itemCarrito.Valor + itemCarrito.Propiedad.CostoOperacion;
     r.Tag = itemCarrito;
 }
示例#6
0
        public void Agregar(Producto producto, int cantidad)
        {
            var productoEnCarrito = new ItemCarrito();

            productoEnCarrito.Producto = producto;
            productoEnCarrito.Cantidad = cantidad;
            Productos.Add(productoEnCarrito);
        }
        public void btn_AgregarClick(object sender, EventArgs e)
        {
            var         id   = int.Parse((sender as LinkButton).CommandArgument);
            ItemCarrito item = carr.Items.Find(x => x.Id == id);

            carr.AgregarItem(item);
            Session.Add("carrito", carr);
            Response.Redirect(Request.RawUrl);
        }
示例#8
0
 public void InsertarItemCarrito(ItemCarritoInsVO carivo)
 {
     using (TiendaVirtualEntities db = new TiendaVirtualEntities())
     {
         ItemCarrito ica = new ItemCarrito(carivo);
         db.ItemCarrito.Add(ica);
         db.SaveChanges();
     }
 }
示例#9
0
        private void SetearFila(DataGridViewRow r, ItemCarrito itemCarrito)
        {
            r.Cells[cmnProducto.Index].Value       = itemCarrito.Producto.Descripcion;
            r.Cells[cmnPrecioUnitario.Index].Value = itemCarrito.Producto.Precio;
            r.Cells[cmnCantidad.Index].Value       = itemCarrito.Cantidad;
            r.Cells[cmnTotal.Index].Value          = itemCarrito.Cantidad * itemCarrito.Producto.Precio;

            r.Tag = itemCarrito;
        }
        public ActionResult Agregar(int IdAux) // aca viene por medio del href, con el id para agregar al carrito
        {
            ItemCarrito item;

            Producto producto;

            List <ItemCarrito> listaCarrito;

            producto = negocio.BuscarPorId(IdAux);



            DetalleCarritoNegocio negocioCarrito = new DetalleCarritoNegocio();

            item = negocioCarrito.Map(producto);



            if (Session["listaCarrito"] == null)
            {
                listaCarrito = new List <ItemCarrito>();
            }
            else
            {
                listaCarrito = (List <ItemCarrito>)Session["listaCarrito"];
            }
            ItemCarrito repe = new ItemCarrito();

            foreach (var itemCarrito in listaCarrito)
            {
                if (IdAux == itemCarrito.IdProducto)
                {
                    repe = itemCarrito;
                }
            }

            if (item.IdProducto != repe.IdProducto)
            {
                listaCarrito.Add(item);
                Session["listaCarrito"] = listaCarrito;
            }



            foreach (var itemProd in listaCarrito)
            {
                if (IdAux == itemProd.IdProducto)
                {
                    itemProd.CantidadItem++;
                }
            }

            return(RedirectToAction("Carrito"));
        }
示例#11
0
        private void agregarProductoAlCarrito(Producto producto, int cantidad)
        {
            ItemCarrito item = new ItemCarrito();

            if (!carrito.ContainsKey(producto.Id.ToString()))
            {
                item.producto = producto;
                item.cantidad = cantidad;
                carrito.Add(producto.Id.ToString(), item);
            }
            else
            {
                this.sumarCantidad(producto.Id, cantidad);
            }
        }
        public ItemCarrito Map(Producto producto)
        {
            ItemCarrito carrito = new ItemCarrito() // inicializacion mientras instancio
            {
                UrlImagen   = producto.UrlImagen,
                Precio      = producto.Precio,
                IdProducto  = producto.Id,
                IdTipo      = producto.IdTipo,
                Nombre      = producto.Nombre,
                Talle       = producto.talle.Nombre,
                Descripcion = producto.Descripcion,
                Color       = producto.color.Nombre,
            };

            return(carrito);
        }
示例#13
0
        public void btn_AgregarClick(object sender, EventArgs e)
        {
            var         id = int.Parse((sender as LinkButton).CommandArgument);
            Articulo    a  = listaArticulo.Find(x => x.Id == id);
            ItemCarrito i  = new ItemCarrito(a);

            if ((Carrito)Session["carrito"] == null)
            {
                carr.AgregarItem(i);
            }
            else
            {
                carr = (Carrito)Session["carrito"];
                carr.AgregarItem(i);
            }
            Session.Add("carrito", carr);
        }
示例#14
0
 protected void buttonEliminar_Click(object sender, EventArgs e)
 {
     try
     {
         var argument = ((Button)sender).CommandArgument;
         List <ItemCarrito> carrito = (List <ItemCarrito>)Session["listaCarrito"];
         ItemCarrito        elim    = carrito.Find(x => x.Articulos.ID.ToString() == argument);
         carrito.Remove(elim);
         Session.Add("listaFavoritos", carrito);
         Repetidor.DataSource = null;
         Repetidor.DataSource = carrito;
         Repetidor.DataBind();
     }
     catch (Exception ex)
     {
         Response.Redirect("Error.aspx");
     }
 }
示例#15
0
        private void Additem()
        {
            var comp = new ItemCarrito();

            try
            {
                string code = (string)Request.QueryString["ART"];
                if (code != null)
                {
                    page = findProductPage();


                    bool    nuevo = true;
                    Carrito aux   = (Carrito)Session["chart"];
                    foreach (ItemCarrito item in aux.items)
                    {
                        if (item.code == code)
                        {
                            item.ammount++;
                            nuevo = false;
                        }
                    }
                    if (nuevo)
                    {
                        var auxproduct = productoBusiness.buscarid(code);
                        comp.name      = auxproduct.name;
                        comp.code      = auxproduct.code;
                        comp.ammount   = 1;
                        comp.unitPrice = (float)auxproduct.unitPrice();
                        aux.items.Add(comp);
                    }



                    Session.Remove("chart");
                    Session["chart"] = aux;
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
示例#16
0
 private void btnAceptar_Click(object sender, EventArgs e)
 {
     if (ValidarPropiedad())
     {
         Propiedad propiedad = new Propiedad
         {
             PropiedadId    = propiedadSeleccionado.PropiedadId,
             DescripcionP   = propiedadSeleccionado.DescripcionP,
             CostoOperacion = propiedadSeleccionado.CostoOperacion
         };
         var itemCarrito = new ItemCarrito
         {
             Propiedad = propiedad,
             Valor     = (int)nudValor.Value
         };
         carrito.AgregarAlCarrito(propiedad, (int)nudValor.Value);
         MostrarDatosEnGrilla();
         CalcularTotal();
         InicializarControles();
     }
 }
        public void  AgregarDetalle(ItemCarrito item)
        {
            try
            {
                AccesoDatos Acceso = new AccesoDatos();
                Acceso.setearQuery_conPa("SP_AgregarDetalle");

                Acceso.agregarParametro("@IdProducto     ", item.IdProducto);
                Acceso.agregarParametro("@idPedido       ", item.IdPedido);
                Acceso.agregarParametro("@PrecioActual   ", item.PrecioActual);
                Acceso.agregarParametro("@CantidadPedida ", item.CantidadPedida);
                Acceso.agregarParametro("@UrlImagen      ", item.UrlImagen);
                Acceso.agregarParametro("@Nombre         ", item.NombreActual);
                Acceso.ejecutarAccion();
                Acceso.cerrarConexion();
            }
            catch (Exception)
            {
                throw;
            }
        }
        public List <DetalleCarrito> Asignar(List <ItemCarrito> lista)
        {
            List <DetalleCarrito> ListaDetalle = new List <DetalleCarrito>();
            DetalleCarrito        detalle      = new DetalleCarrito();
            ItemCarrito           itemcarrito  = new ItemCarrito();



            foreach (var item in lista)
            {
                detalle = new DetalleCarrito(); // esto es para no pisar lo que esta en la direccion de memoria, si solo tengo un detalle siempre se va a pisar ahi, en cambio instanciandolo le doy un nuevo lugar en memoria
                detalle.NombreActual   = item.Nombre;
                detalle.PrecioActual   = item.Precio;
                detalle.UrlImagen      = item.UrlImagen;
                detalle.IdProducto     = item.IdProducto;
                detalle.CantidadPedida = item.CantidadItem;
                ListaDetalle.Add(detalle);
            }

            return(ListaDetalle);
        }
示例#19
0
 private void AceptarProductoButton_Click(object sender, EventArgs e)
 {
     if (ValidarProducto())
     {
         Producto producto = new Producto
         {
             ProductoId  = productoSeleccionado.ProductoId,
             Descripcion = productoSeleccionado.Descripcion,
             Precio      = productoSeleccionado.Precio
         };
         var itemCarrito = new ItemCarrito
         {
             Producto = producto,
             Cantidad = (int)CantidadNumericUpDown.Value
         };
         carrito.AgregarAlCarrito(producto, (int)CantidadNumericUpDown.Value);
         MostrarDatosEnGrilla();
         CalcularTotal();
         InicializarControles();
     }
 }
示例#20
0
 public IHttpActionResult AgregarProducto(long id, int cantidad)
 {
     try
     {
         if (id == 0)
         {
             throw new System.ArgumentException("Código de producto no válido.");
         }
         if (cantidad == 0)
         {
             throw new System.ArgumentException("Cantidad de producto no válida.");
         }
         Producto producto = db.Productos.Find(id);
         if (producto == null)
         {
             ItemCarrito item = new ItemCarrito();
             item = carrito[id];
             if (item == null)
             {
                 item.producto = producto;
                 item.cantidad = cantidad;
                 carrito.Add(id, item);
             }
             else
             {
                 item.cantidad = item.cantidad + cantidad;
             }
         }
         else
         {
             throw new System.ArgumentException("El producto no fue encontrado.");
         }
     }catch (Exception e)
     {
         return((IHttpActionResult)e);
     }
     return((IHttpActionResult)carrito);
 }
        protected void ButtonAddChart_Click(object sender, EventArgs e)
        {
            var comp = new ItemCarrito();

            try
            {
                bool    nuevo = true;
                Carrito aux   = (Carrito)Session["chart"];
                foreach (ItemCarrito item in aux.items)
                {
                    if (item.code == producto.code)
                    {
                        item.ammount += int.Parse(TextCuantity.Text);
                        nuevo         = false;
                    }
                }
                if (nuevo)
                {
                    var auxproduct = productoBusiness.buscarid(producto.code);
                    comp.name      = auxproduct.name;
                    comp.code      = auxproduct.code;
                    comp.ammount   = int.Parse(TextCuantity.Text);
                    comp.unitPrice = (float)auxproduct.unitPrice();
                    aux.items.Add(comp);
                }



                Session.Remove("chart");
                Session["chart"] = aux;
            }
            catch (Exception)
            {
                throw;
            }
        }
示例#22
0
        private void sumarCantidad(long id, int cantidad)
        {
            ItemCarrito item = carrito[id.ToString()];

            item.cantidad += cantidad;
        }
示例#23
0
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                if (!IsPostBack)
                {
                    bandera = false;
                }

                carrito.listaItem = (List <ItemCarrito>)Session[Session.SessionID + "listaCarrito"];
                if (carrito.listaItem == null)
                {
                    carrito.listaItem = new List <ItemCarrito>();
                }

                var prodQuitar = Request.QueryString["idQuitar"];
                if (prodQuitar != null)
                {
                    ItemCarrito productoQuitar = carrito.listaItem.Find(J => J.Producto.ID == int.Parse(prodQuitar));

                    carrito.listaItem.Remove(productoQuitar);

                    Session[Session.SessionID + "listaCarrito"] = carrito.listaItem;
                    Response.Redirect("Carrito.aspx", false);
                }
                else if (Request.QueryString["idprod"] != null)
                {
                    //obtengo lista original (el listado completo)
                    List <Producto> listaOriginal = (List <Producto>)Session[Session.SessionID + "listaProducto"];

                    var      prodSeleccionado = Convert.ToInt32(Request.QueryString["idprod"]);
                    Producto producto         = listaOriginal.Find(J => J.ID == prodSeleccionado);

                    ItemCarrito auxCarrito = carrito.listaItem.Find(B => B.Producto.ID == producto.ID);

                    if (auxCarrito == null)
                    {
                        CarritoItem.Producto = producto;

                        CarritoItem.Cantidad++;

                        carrito.Total += CarritoItem.Producto.Precio;
                        carrito.listaItem.Add(CarritoItem);
                        Session[Session.SessionID + "listaCarrito"] = carrito.listaItem;
                    }
                    Response.Redirect("Carrito.aspx", false);
                }

                var CantRest = Request.QueryString["idCantRest"];
                if (CantRest != null)
                {
                    if (!bandera)
                    {
                    }

                    ItemCarrito productoRestar = carrito.listaItem.Find(J => J.Producto.ID == int.Parse(CantRest));

                    if (productoRestar.Cantidad != 0 && productoRestar.Cantidad != 1)
                    {
                        productoRestar.Cantidad--;
                    }
                    else
                    {
                    }

                    Session[Session.SessionID + "listaCarrito"] = carrito.listaItem;
                    Response.Redirect("Carrito.aspx", false);
                }

                var CantSum = Request.QueryString["idCantSum"];
                if (CantSum != null)
                {
                    ItemCarrito productoSumar = carrito.listaItem.Find(J => J.Producto.ID == int.Parse(CantSum));

                    if (productoSumar.Cantidad == productoSumar.Producto.Stock || productoSumar.Cantidad > productoSumar.Producto.Stock)
                    {
                    }
                    else
                    {
                        productoSumar.Cantidad++;
                    }

                    Session[Session.SessionID + "listaCarrito"] = carrito.listaItem;
                    Response.Redirect("Carrito.aspx", false);
                }

                var idCarrito = Request.QueryString["idComprar"];
                if (idCarrito != null)
                {
                    Usuario usuario = (Usuario)Session["usersession"];


                    if ((List <ItemCarrito>)Session[Session.SessionID + "listaCarrito"] == null)
                    {
                        Session["Error" + Session.SessionID] = "Error al realizar la compra.";
                        Response.Redirect("Error.aspx", false);
                    }
                    else if (usuario == null)
                    {
                        Response.Redirect("Login.aspx", false);
                    }
                    else
                    {
                        carrito.listaItem = (List <ItemCarrito>)Session[Session.SessionID + "listaCarrito"];

                        Producto_X_Venta productoXventa = new Producto_X_Venta();
                        List <Venta>     listaVenta     = new List <Venta>();
                        Producto         producto       = new Producto();


                        Venta    venta    = new Venta();
                        DateTime fechaHoy = DateTime.Now;


                        //decimal subtotal = 0;

                        //foreach (var item in listaItem)
                        //{
                        //    subtotal += item.PrecioItem();
                        //}
                        //Total = subtotal;

                        decimal total = carrito.SubTotal();
                        venta.usuario     = usuario;
                        venta.PrecioTotal = total;
                        venta.Fecha       = fechaHoy;
                        negocioVenta.Agregar(venta);

                        VentasNegocio negocioVentas = new VentasNegocio();
                        listaVenta = negocioVentas.Listar();

                        Int64 idVenta = 0;

                        foreach (var item in listaVenta)
                        {
                            if (item.usuario.ID_Usuario == usuario.ID_Usuario)
                            {
                                idVenta = item.ID;
                            }
                        }
                        venta.ID = idVenta;
                        foreach (var itemCarrito in carrito.listaItem)
                        {
                            productoXventa.venta    = venta;
                            productoXventa.producto = itemCarrito.Producto;
                            productoXventa.Cantidad = itemCarrito.Cantidad;
                            //productoXventa.Precio = itemCarrito.PrecioItem();
                            productoXventa.Precio = itemCarrito.Producto.Precio;

                            producto.ID    = itemCarrito.Producto.ID;
                            producto.Stock = itemCarrito.Producto.Stock - itemCarrito.Cantidad;

                            negocioProducto.ModificarStock(producto);
                            negocioVenta.AgregarItem(productoXventa);
                        }



                        Response.Redirect("CompraFinalizada.aspx", false);
                    }

                    //else
                    //{
                    //    Session["Error" + Session.SessionID] = "Error al realizar la compra.";
                    //    Response.Redirect("Error.aspx", false);
                    //}


                    //foreach (var item in listaCarrito)
                    //{
                    //    foreach (var item2 in item.listaItem)
                    //    {
                    //        item2.

                    //        negocioVenta.AgregarItem(item2);
                    //    }

                    //}
                }
            }
            catch (Exception ex)
            {
                Session["Error" + Session.SessionID] = "Error en el carrito.";
                //Session["Error" + Session.SessionID] = ex;
                Response.Redirect("Error.aspx");
            }
        }
示例#24
0
        public void QuitarProducto(int codProducto, int nroCarrito)
        {
            ItemCarrito item = (ItemCarrito)contexto.ItemCarrito.Where(b => b.IdCarrito == nroCarrito && b.CodProducto == codProducto).First();

            contexto.ItemCarrito.Remove(item);
        }
示例#25
0
        protected void Page_Load(object sender, EventArgs e)
        {
            ProductoNegocio negocio = new ProductoNegocio();

            try
            {
                IdAux    = Convert.ToInt32(Request.QueryString["idArticulo"]);
                extra    = Convert.ToInt32(Request.QueryString["extra"]);
                Liston   = negocio.Listar();
                Producto = Liston.Find(x => x.Id == IdAux);

                if (IdAux == 0)                          //Si entra desde el botón carrito.
                {
                    if (Session["ListaCarrito"] == null) //Si la lista no llegó a instanciarse
                    {
                        ListaAux = new List <ItemCarrito>();
                        Session["ListaCarrito"] = ListaAux;
                    }
                    else
                    {
                        ListaAux = (List <ItemCarrito>)Session["ListaCarrito"];
                    }

                    CalcularImporteTotal(ListaAux);

                    return;
                }

                Detalle              = new ItemCarrito();
                Detalle.IdProducto   = Producto.Id;
                Detalle.NombreActual = Producto.Nombre;
                Detalle.PrecioActual = Producto.Precio;
                Detalle.UrlImagen    = Producto.Imagen;

                if (IdAux > 0 && extra == 1)                                // Si viene a eliminar
                {
                    ListaAux = (List <ItemCarrito>)Session["ListaCarrito"]; //traeme lo que tenemos en session
                    //foreach (var item in ListaAux)
                    //{
                    //    if (IdAux == item.IdProducto)
                    //    {
                    //        ListaAux.Remove(item);
                    //        Session["ListaCarrito"] = ListaAux;
                    //        CalcularImporteTotal(ListaAux);

                    //        Response.Redirect("Carrito.aspx");
                    //    }
                    //}
                    int indice;
                    indice = ListaAux.FindIndex(x => x.IdProducto == IdAux);

                    ListaAux.RemoveAt(indice);
                    Session["ListaCarrito"] = ListaAux;
                    CalcularImporteTotal(ListaAux);

                    Response.Redirect("Carrito.aspx", false); // si lo ponemos en false sigue ejecutandose el codigo
                    return;
                }
                else//Si viene a hacer otra cosa.
                {
                    if (Session["ListaCarrito"] == null)
                    {
                        ListaAux = new List <ItemCarrito>();
                        Detalle.CantidadPedida = 1;
                        ListaAux.Add(Detalle);
                        Session["ListaCarrito"] = ListaAux;
                        CalcularImporteTotal(ListaAux);
                    }
                    else
                    {
                        ListaAux = (List <ItemCarrito>)Session["ListaCarrito"];// mi lista con los Items del carrito q agregue en session
                        foreach (var item in ListaAux)
                        {
                            if (item.IdProducto == IdAux)
                            {
                                item.CantidadPedida++;
                                foreach (var Producto in Liston)//listaCatalogo
                                {
                                    if (IdAux == Producto.Id)
                                    {
                                        if (Producto.StockActual >= item.CantidadPedida)//se valida el stock
                                        {
                                            Session["ListaCarrito"] = ListaAux;
                                            CalcularImporteTotal(ListaAux);

                                            return;
                                        }
                                        else
                                        {
                                            item.CantidadPedida--;
                                            //habría que
                                            Session["ListaCarrito"] = ListaAux;
                                            CalcularImporteTotal(ListaAux);

                                            return;
                                        }
                                    }
                                }
                            }
                        }
                        Detalle.CantidadPedida = 1;
                        ListaAux.Add(Detalle);
                        CalcularImporteTotal(ListaAux);
                        Session.Add("ListaCarrito", ListaAux);
                        //Session["ListaCarrito"] = ListCarritoaux; esto es lo mismo que Session["ListaAux"] = ListaAux;
                    }
                }
            }
            catch (Exception ex)
            {
                //HAY QUE REDIRECCIONARLO A UNA PAG DE ERROR
                Response.Redirect("error.aspx");
            }
        }
示例#26
0
文件: Carrito.cs 项目: Albertopf/test
    public void SetCantidad(int isbn, int cantidad, string titulo, decimal precio)
    {
        if (cantidad == 0)
        {
            EliminarItem(isbn, titulo, precio);
            return;
        }

        ItemCarrito itemActualizado = new ItemCarrito(isbn, titulo, precio);

        foreach (ItemCarrito item in Items)
        {
            if (item.Equals(itemActualizado))
            {
                item.Cantidad = cantidad;
                return;
            }
        }
    }
示例#27
0
文件: Carrito.cs 项目: Albertopf/test
 public void EliminarItem(int isbn, string titulo, decimal precio)
 {
     ItemCarrito itemEliminado = new ItemCarrito(isbn, titulo, precio);
     Items.Remove(itemEliminado);
 }
示例#28
0
文件: Carrito.cs 项目: Albertopf/test
    public void AnyadirItem(int libroId, string titulo, decimal precio)
    {
        ItemCarrito nuevoItem = new ItemCarrito(libroId, titulo, precio);

        if (Items.Contains(nuevoItem))
        {
            foreach (ItemCarrito item in Items)
            {
                if (item.Equals(nuevoItem))
                {
                    item.Cantidad++;
                    return;
                }
            }
        }
        else
        {
            nuevoItem.Cantidad = 1;
            Items.Add(nuevoItem);
        }
    }
示例#29
0
        //public DetalleVenta detalle { get; set; }
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                carrito.listaItem = (List <ItemCarrito>)Session["carrito"];
                if (carrito.listaItem == null)
                {
                    carrito.listaItem = new List <ItemCarrito>();
                }

                if (Request.QueryString["idProducto"] != null)
                {
                    producto = new Produ();
                    ProduNegocio negocio = new ProduNegocio();
                    int          idProd  = Convert.ToInt32(Request.QueryString["idProducto"]);

                    producto = negocio.listar().Find(X => X.idProdu == idProd);
                    ItemCarrito item = carrito.listaItem.Find(H => H.producto.idProdu == producto.idProdu);

                    if (item == null)
                    {
                        itemCarrito.producto = producto;
                        itemCarrito.cantidad++;
                        carrito.total += itemCarrito.producto.precio;
                        carrito.listaItem.Add(itemCarrito);
                        Session["carrito"] = carrito.listaItem;
                    }
                    Response.Redirect("Carrito.aspx");
                }
                var sumar = Request.QueryString["idSumar"];
                if (sumar != null)
                {
                    ItemCarrito itemSumar = carrito.listaItem.Find(X => X.producto.idProdu == int.Parse(sumar));
                    itemSumar.cantidad += 1;
                    Session["carrito"]  = carrito.listaItem;
                    Response.Redirect("Carrito.aspx");
                }
                var restar = Request.QueryString["idBajar"];
                if (restar != null)
                {
                    ItemCarrito item = carrito.listaItem.Find(K => K.producto.idProdu == int.Parse(restar));
                    if (item.cantidad > 1)
                    {
                        item.cantidad--;
                    }
                    Session["carrito"] = carrito.listaItem;
                    Response.Redirect("Carrito.aspx");
                }

                if (Request.QueryString["idCancelar"] != null)
                {
                    int cancelar = Convert.ToInt32(Request.QueryString["idCancelar"]);

                    ItemCarrito item = carrito.listaItem.Find(F => F.producto.idProdu == cancelar);
                    if (item != null)
                    {
                        carrito.listaItem.Remove(item);
                        Session["carrito"] = carrito.listaItem;
                        Response.Redirect("Carrito.aspx");
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
            lbtotal.Text = carrito.SubTotal().ToString();
        }