Example #1
0
        public ItemProducto productoMasUtilizado(List <Tejido> lista)
        {
            List <ItemProducto> hilados = new List <ItemProducto>();

            foreach (var p in lista)
            {
                if (hilados.Exists(x => x.Producto.Id == p.Hilado.Id))
                {
                    ItemProducto item = hilados.Find(x => x.Producto.Id == p.Hilado.Id);
                    item.Cantidad += p.CantidadUtilizada;
                }
                else
                {
                    hilados.Add(new ItemProducto(p.CantidadUtilizada, p.Hilado));
                }
            }
            ItemProducto max = new ItemProducto();

            max.Cantidad = 0;
            foreach (var p in hilados)
            {
                if (p.Cantidad > max.Cantidad)
                {
                    max = p;
                }
            }
            return(max);
        }
Example #2
0
        public ItemProducto productoMasUtilizado(List <Confeccion> lista)
        {
            List <ItemProducto> prendas = new List <ItemProducto>();

            foreach (var p in lista)
            {
                if (prendas.Exists(x => x.Producto.Id == p.Prenda.Id))
                {
                    ItemProducto item = prendas.Find(x => x.Producto.Id == p.Prenda.Id);
                    item.Cantidad += p.Prenda.Cantidad;
                }
                else
                {
                    prendas.Add(new ItemProducto(p.Cantidad, p.Prenda));
                }
            }
            ItemProducto max = new ItemProducto();

            max.Cantidad = 0;
            foreach (var p in prendas)
            {
                if (p.Cantidad > max.Cantidad)
                {
                    max = p;
                }
            }
            return(max);
        }
        public void ValidarEliminacion()
        {
            CarritoDeCompras carrito = new CarritoDeCompras();

            carrito.FechaCompra = DateTime.Now;

            Productos p1 = new Productos();

            p1.Id                          = 1;
            p1.PrecioUnitario              = 50f;
            p1.StockDisponible             = 100;
            p1.EstaEnOferta                = true;
            p1.FechaInicioOferta           = DateTime.Parse("6/11/2021 20:00:00 ");
            p1.FechaFinOferta              = DateTime.Parse("31/12/2021 20:00:00 ");
            p1.PrecioOferta                = 0.10f;
            p1.PorcDescuentoEntreDosYCinco = 0.01f;
            p1.PorcDescuentoEntreSeisYDiez = 0.03f;
            p1.PorcDescuentoMasDeDiez      = 0.06f;


            ItemProducto prod = new ItemProducto();

            prod.Producto = p1;

            carrito.agregarProductos(p1, 1);
            carrito.agregarProductos(p1, 9);

            carrito.eliminarProductos(prod, 10);

            // si los productos se eliminaron, el monto del carrito va a ser 0
            bool esValido = carrito.MontoTotal == 0f;

            Assert.True(esValido);
        }
Example #4
0
        public ItemProducto productoMasUtilizado(List <Corte> lista)
        {
            List <ItemProducto> telas = new List <ItemProducto>();

            foreach (var p in lista)
            {
                if (telas.Exists(x => x.Producto.Id == p.Tela.Id))
                {
                    ItemProducto item = telas.Find(x => x.Producto.Id == p.Tela.Id);
                    item.Cantidad += p.Tela.Cantidad;
                }
                else
                {
                    telas.Add(new ItemProducto(p.CantidadTela, p.Tela));
                }
            }
            ItemProducto max = new ItemProducto();

            max.Cantidad = 0;
            foreach (var p in telas)
            {
                if (p.Cantidad > max.Cantidad)
                {
                    max = p;
                }
            }
            return(max);
        }
Example #5
0
        public void ValidarImporteConOferta()
        {
            CarritoDeCompras carrito = new CarritoDeCompras();

            Productos p1 = new Productos();

            p1.Id                          = 1;
            p1.PrecioUnitario              = 50f;
            p1.StockDisponible             = 100;
            p1.EstaEnOferta                = true;
            p1.FechaInicioOferta           = DateTime.Parse("6/11/2021 20:00:00 ");
            p1.FechaFinOferta              = DateTime.Parse("31/12/2021 20:00:00 ");
            p1.PrecioOferta                = 0.10f;
            p1.PorcDescuentoEntreDosYCinco = 0.01f;
            p1.PorcDescuentoEntreSeisYDiez = 0.03f;
            p1.PorcDescuentoMasDeDiez      = 0.06f;

            Productos p2 = new Productos();

            p2.Id                          = 2;
            p2.PrecioUnitario              = 55f;
            p2.StockDisponible             = 100;
            p2.EstaEnOferta                = false;
            p2.FechaInicioOferta           = DateTime.Parse("6/11/2021 20:00:00 ");
            p2.FechaFinOferta              = DateTime.Parse("31/12/2021 20:00:00 ");
            p2.PrecioOferta                = 0.10f;
            p2.PorcDescuentoEntreDosYCinco = 0.1f;
            p2.PorcDescuentoEntreSeisYDiez = 0.3f;
            p2.PorcDescuentoMasDeDiez      = 0.6f;

            Productos p3 = new Productos();

            p3.Id                          = 3;
            p3.PrecioUnitario              = 10f;
            p3.StockDisponible             = 100;
            p3.EstaEnOferta                = true;
            p3.FechaInicioOferta           = DateTime.Parse("20/12/2021 20:00:00");
            p3.FechaFinOferta              = DateTime.Parse("31/12/2021 20:00:00 ");
            p3.PrecioOferta                = 0.50f;
            p3.PorcDescuentoEntreDosYCinco = 0.01f;
            p3.PorcDescuentoEntreSeisYDiez = 0.03f;
            p3.PorcDescuentoMasDeDiez      = 0.06f;

            ItemProducto prod = new ItemProducto();

            prod.Producto = p1;

            carrito.agregarProductos(p1, 1);
            carrito.agregarProductos(p1, 9);
            carrito.agregarProductos(p2, 6);
            carrito.agregarProductos(p3, 1);
            carrito.eliminarProductos(prod, 1);

            carrito.calcularImporteTotal();

            bool esValido = carrito.MontoTotal == 633.85f;

            Assert.True(esValido);
        }
Example #6
0
        private void dgv_ItemPedidoProduccion_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            ItemProducto selected = dgv_ItemPedidoProduccion.SelectedRows[0].DataBoundItem as ItemProducto;

            txt_Codigo.Text      = selected.Producto.Codigo;
            txt_Descripcion.Text = selected.Producto.Descripcion;
            txt_Cantidad.Text    = selected.Cantidad.ToString();
        }
Example #7
0
 private void BtnAgregar_Click(object sender, EventArgs e)
 {
     if (this.DgwProductos.SelectedRows.Count > 0 && Validaciones.NumMayorACero(this.TxtCantidad.Text))
     {
         int.TryParse(this.TxtCantidad.Text, out int cantidadUnidades);
         productoSeleccionado = (Producto)DgwProductos.CurrentRow.DataBoundItem;
         item = new ItemProducto(productoSeleccionado, cantidadUnidades, productoSeleccionado.precio);
         listaCarrito.Add(item);
         CargaDCompra();
         ConfiguracionDCompra();
     }
 }
Example #8
0
        private void btn_BajaItemProducto_Click(object sender, EventArgs e)
        {
            ItemProducto     selected = dgv_ItemPedidoProduccion.SelectedRows[0].DataBoundItem as ItemProducto;
            PedidoProduccion pedido   = selected.Pedido;

            pedido.ItemProductos.Remove(selected);
            ProductoGestor productoGestor = new ProductoGestor();

            productoGestor.Baja(selected.Producto);
            ItemProductoGestor itemProductoGestor = new ItemProductoGestor();

            itemProductoGestor.Baja(selected);
            dgv_ItemPedidoProduccion.DataSource = null;
            dgv_ItemPedidoProduccion.DataSource = itemProductoGestor.GetList(pedido);
        }
Example #9
0
        public ItemProducto productoMasUtilizado(List <Tenido> lista, string tipo)
        {
            List <ItemProducto> producto = new List <ItemProducto>();

            if (tipo == "Tela")
            {
                foreach (var p in lista)
                {
                    if (producto.Exists(x => x.Producto.Id == p.Tela.Id))
                    {
                        ItemProducto item = producto.Find(x => x.Producto.Id == p.Tela.Id);
                        item.Cantidad += p.CantidadTelaUtilizada;
                    }
                    else
                    {
                        producto.Add(new ItemProducto(p.CantidadTelaUtilizada, p.Tela));
                    }
                }
            }
            else
            {
                foreach (var p in lista)
                {
                    if (producto.Exists(x => x.Producto.Id == p.Tinte.Id))
                    {
                        ItemProducto item = producto.Find(x => x.Producto.Id == p.Tinte.Id);
                        item.Cantidad += p.CantidadTinteUtilizada;
                    }
                    else
                    {
                        producto.Add(new ItemProducto(p.CantidadTinteUtilizada, p.Tinte));
                    }
                }
            }
            ItemProducto max = new ItemProducto();

            max.Cantidad = 0;
            foreach (var p in producto)
            {
                if (p.Cantidad > max.Cantidad)
                {
                    max = p;
                }
            }
            return(max);
        }
Example #10
0
        private double CalcularPrecioDescuento(string nombre)
        {
            double total;
            double costoTotal;

            if (Validaciones.CheckDescuento(nombre))
            {
                costoTotal = ItemProducto.TotalCostoProductos(listaCarrito);
                total      = costoTotal - (costoTotal * 0.13);
            }
            else
            {
                total = ItemProducto.TotalCostoProductos(listaCarrito);
            }

            return(total);
        }
Example #11
0
        private List <ItemProducto> productoMasUtilizado(List <PedidoProduccion> lista)
        {
            List <ItemProducto> producto = new List <ItemProducto>();

            foreach (var pedido in lista)
            {
                foreach (var item in pedido.ItemProductos)
                {
                    if (producto.Exists(x => x.Producto.Id == item.Producto.Id))
                    {
                        ItemProducto prod = producto.Find(x => x.Producto.Id == item.Producto.Id);
                        prod.Cantidad += item.Cantidad;
                    }
                    else
                    {
                        producto.Add(new ItemProducto(item.Cantidad, item.Producto));
                    }
                }
            }
            producto = producto.OrderByDescending(x => x.Cantidad).Take(3).ToList <ItemProducto>();
            return(producto);
        }
        public JsonResult Create(int IdProducto, int IdItem, string Descripcion)
        {
            try
            {
                bool IsOk = false;
                FNegocio = new FachadaNegocio();
                ItemProducto ObjItem = new ItemProducto();
                ObjItem.IdProducto  = IdProducto;
                ObjItem.IdTipoItem  = IdItem;
                ObjItem.Descripcion = Descripcion;

                IsOk = FNegocio.AddItemProducto(ObjItem);
                if (IsOk)
                {
                    return(Json(new
                    {
                        succes = true,
                        message = "Item creado correctamente"
                    }, JsonRequestBehavior.AllowGet));
                }
                else
                {
                    return(Json(new
                    {
                        succes = false,
                        message = "Errror Creando un nuevo item."
                    }, JsonRequestBehavior.AllowGet));
                }
            }

            catch (Exception ex)
            {
                return(Json(new
                {
                    succes = false,
                    message = ex.Message
                }, JsonRequestBehavior.AllowGet));
            }
        }
        /// <summary>
        /// Administra la gondola del DataGridVew que interactua con el cliente.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void dgv_Gondola_DoubleClick(object sender, EventArgs e)
        {
            bool flag = false;

            //this.nud_cantidad.Value = 1;
            auxProducto     = new Producto();
            auxItemProducto = new ItemProducto();


            auxProducto = (Producto)this.dgv_Gondola.CurrentRow.DataBoundItem;
            auxItemProducto.AuxProduto = auxProducto;
            auxItemProducto.Cantidad   = 1;


            //Busco si se encuentra el producto en el carrito.
            foreach (Producto item in auxLista_Productos_carrito)
            {
                if (item != null && auxProducto != null && (item.Id == auxProducto))
                {
                    flag = true;
                    break;
                }
            }


            // De no estar estar el producto en el carrito , lo aƱado al carrito y al cliente.
            if (!flag)
            {
                auxLista_Productos_carrito.Add(auxProducto);
                auxCliente.Lista_Item_Productos.Add(auxItemProducto);


                if (flag_column)
                {
                    this.dgv_Carrito.Columns.Add("Columna_cantidad", "Cantidad");

                    flag_column = false;
                }

                /************************ SIMPLIFICAR *************************/
                foreach (ItemProducto item in auxCliente.Lista_Item_Productos)
                {
                    precio_estimado += (item.AuxProduto.Precio * item.Cantidad);
                }
                this.txt_Precio_estimado.Text = precio_estimado.ToString();
                precio_estimado = 0;
                /**************************************************************/

                this.dgv_Carrito.DataSource = null;
                this.dgv_Carrito.DataSource = auxLista_Productos_carrito;


                int indiceRow = this.dgv_Carrito.Rows.Count - 1;
                this.dgv_Carrito.Rows[indiceRow].Cells[0].Value = 1;
                lista_cantidad.Add((int)this.dgv_Carrito.Rows[indiceRow].Cells[0].Value);



                for (int i = 0; i < lista_cantidad.Count; i++)
                {
                    this.dgv_Carrito.Rows[i].Cells[0].Value = lista_cantidad[i];
                }

                this.dgv_Carrito.RowHeadersWidthSizeMode  = DataGridViewRowHeadersWidthSizeMode.DisableResizing; //Bloquea el encabezado
                this.dgv_Carrito.AutoSizeColumnsMode      = DataGridViewAutoSizeColumnsMode.Fill;                // Rellena el ancho de las filas
                this.dgv_Carrito.AutoSizeRowsMode         = DataGridViewAutoSizeRowsMode.AllCells;
                this.dgv_Carrito.AllowUserToResizeColumns = false;

                this.dgv_Carrito.Columns.Remove("U_stock");
                this.dgv_Carrito.Columns.Remove("U_vendidas");
                this.dgv_Carrito.Columns.Remove("id");


                this.btn_Eliminar_item_carrito.Enabled = true;
                this.nud_cantidad.Enabled = true;
                this.btn_Comprar.Enabled  = true;
            }
            else
            {
                MessageBox.Show("El item ya se encuentra en el carrito");
            }
        }