Exemplo n.º 1
0
        public void ActualizarCarrito(List <dtoItemCarrito> Items, int nroCarrito)
        {
            var repo = new CarritoRepository();

            repo.QuitarTodosLosProductos(nroCarrito);
            repo.Save();

            foreach (var p in Items)
            {
                var bll      = new dtoProducto();
                var producto = bll.BuscarUnProducto(p.CodProducto);

                var item = new dtoItemCarrito();
                item.CodProducto = p.CodProducto;
                item.Cantidad    = p.Cantidad;
                item.Subtotal    = (p.Cantidad * p.Precio);
                item.Precio      = p.Precio;
                item.IdCarrito   = nroCarrito;

                BLL.Mapeador.AutoMapperBLLConfiguration.Configure();
                var BIZ = Mapper.Map <dtoItemCarrito, bizItemCarrito>(item);

                repo.AgregarProducto(BIZ);
                repo.Save();
            }
        }
Exemplo n.º 2
0
        public void AgregarProducto(int codProducto, int codCarrito, int cant = 1)
        {
            try
            {
                var carrito = TraerCarrito(codCarrito);

                var bllPrd   = new dtoProducto();
                var producto = bllPrd.BuscarUnProducto(codProducto);


                if (carrito == null)
                {
                    CrearCarrito(new dtoCarrito()
                    {
                        UserId = codCarrito, IdCarrito = codCarrito
                    });
                    carrito = TraerCarrito(codCarrito);
                }

                var consultarProducto = carrito.ItemCarrito.Where(x => x.CodProducto == codProducto).FirstOrDefault();

                var repo = new CarritoRepository();

                if (consultarProducto != null)
                {
                    consultarProducto.Cantidad += cant;

                    if (consultarProducto.Cantidad < 10)
                    {
                        consultarProducto.Subtotal = consultarProducto.Cantidad * consultarProducto.Precio;

                        BLL.Mapeador.AutoMapperBLLConfiguration.Configure();
                        var BIZ = Mapper.Map <dtoItemCarrito, bizItemCarrito>(consultarProducto);

                        repo.ActualizarProducto(BIZ);
                    }
                    else
                    {
                        throw new Exception();
                    }
                }
                else
                {
                    var item = new dtoItemCarrito();
                    item.CodProducto = codProducto;
                    item.Cantidad    = cant;
                    item.Subtotal    = (item.Cantidad * producto.PrecioVenta);
                    item.Precio      = producto.PrecioVenta;
                    item.IdCarrito   = carrito.IdCarrito;

                    BLL.Mapeador.AutoMapperBLLConfiguration.Configure();
                    var BIZ = Mapper.Map <dtoItemCarrito, bizItemCarrito>(item);

                    repo.AgregarProducto(BIZ);
                }



                repo.Save();
            }
            catch (Exception)
            {
                throw;
            }
        }