protected void btnRegistrar_Click(object sender, EventArgs e)
        {
            string         condicion = "";
            Producto       nuevo     = new Producto();
            ProductoLogica _Logica   = new ProductoLogica();

            nuevo.ID          = txtID.Text;
            nuevo.Descripcion = txtDescripcion.Text;
            nuevo.Precio      = Convert.ToDouble(txtPrecio.Text);
            nuevo.Tamano      = dropTamano.SelectedItem.Text;
            nuevo.Categoria   = ddlTipo.SelectedItem.Text;
            nuevo.NumVentas   = 0;
            if (fuploadImagen.HasFile)
            {
                _Logica.UpdateProducto(nuevo);
            }
            else
            {
                _Logica.UpdateProductoSinImagen(nuevo);
            }


            if (ddlCategoria.SelectedItem.Text == "Tecnología")
            {
                Response.Redirect("ProductosTecno.aspx");
            }
            if (ddlCategoria.SelectedItem.Text == "Comida")
            {
                Response.Redirect("ProductosComida.aspx");
            }
            if (ddlCategoria.SelectedItem.Text == "Ropa")
            {
                Response.Redirect("ProductosRopa.aspx");
            }
        }
Example #2
0
        protected void btnActualizarProducto_Click(object sender, EventArgs e)
        {
            ProductoLogica logica = new ProductoLogica();

            byte[] imagen = null;
            using (BinaryReader reader = new BinaryReader(fluImagen.PostedFile.InputStream))
            {
                if (fluImagen.PostedFile != null)
                {
                    byte[] image = reader.ReadBytes(fluImagen.PostedFile.ContentLength);
                    imagen = image;
                }
            }
            Producto producto = new Producto()
            {
                IdProducto  = Convert.ToInt32(txtIdProducto.Text),
                Nombre      = txtNombreProducto.Text,
                Descripcion = txtDescripcionProducto.Text,
                Categoria   = new CategoriaLogica().SeleccionarPorID(Convert.ToInt32(cmbCategoria.SelectedItem.Value.ToString())),
                Imagen      = imagen,
                Precio      = Convert.ToDouble(NudPrecio.Text)
            };

            logica.Insertar(producto);
            LLenarGridProductos();
            txtNombreProducto.Text      = "";
            txtDescripcionProducto.Text = "";
            cmbCategoria.SelectedIndex  = 0;
            NudPrecio.Text                = "";
            divIdProducto.Visible         = false;
            btnActualizarProducto.Visible = false;
            btnBorrarProducto.Visible     = false;
            btnAgregarProducto.Visible    = true;
            gridProductos.SelectedIndex   = -1;
        }
Example #3
0
        public ActionResult ContenidoCarritoCompras()
        {
            CarritoComprasVM model = new CarritoComprasVM();
            var cantidad           = HttpContext.Session.GetInt32("CantidadProductos");

            if (cantidad > 0)
            {
                ViewBag.CantidadProductosCarrito = cantidad;

                model.ListaProductosCarrito    = new List <ProductoDTO>();
                model.ListaCantidadPorProducto = new List <int>();
                for (int i = 1; i <= cantidad; i++)
                {
                    var datoProducto = new ProductoLogica().ObtenerProductoPorCodigo(Convert.ToInt32(HttpContext.Session.GetInt32("Producto" + i)));
                    model.ListaProductosCarrito.Add((ProductoDTO)datoProducto);
                    model.ListaCantidadPorProducto.Add(Convert.ToInt32(HttpContext.Session.GetInt32("CantidadProducto" + i)));
                }

                ViewBag.MontoTotal = model.ListaProductosCarrito.Sum(P => P.PrecioUnitario);
            }
            else
            {
                ViewBag.Vacio = "No hay productos que mostrar en el carrito";
            }

            return(View(model));
        }
        private void btnGuardar_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                Producto       prod      = new Producto();
                ProductoLogica logica    = new ProductoLogica();
                ModeloLogica   logModelo = new ModeloLogica();

                if (validaciones() == true)
                {
                    txtTextBlockDialogo.Text = "Debe completar todos los campos solicitados";
                    dialogo.IsOpen           = true;
                    return;
                }
                else
                {
                    prod.IdProducto   = txtCodigo.Text;
                    prod.Nombre       = txtNombre.Text;
                    prod.Modelo       = logModelo.seleccionarModelo(Convert.ToInt32(cboModelos.SelectedValue));
                    prod.PrecioCompra = 0; // Convert.ToDecimal(txtPrecioCompra.Text);
                    prod.PrecioVenta  = Convert.ToDecimal(txtPrecioVenta.Text);

                    logica.InsertarActialiarProducto(prod);
                    Refrescar();
                    txtTextBlockDialogo.Text = "Registro procesado";
                    dialogo.IsOpen           = true;
                    btnVolver_Click(sender, e);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Example #5
0
 private void btnBorrar_Click(object sender, EventArgs e)
 {
     try
     {
         if (dgvProductos.SelectedRows.Count > 0)
         {
             ProductoLogica logica = new ProductoLogica();
             bool           estado = MessageBox.Show("Esta seguro que desea borrar este producto?.", "Esta seguro?", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) == DialogResult.Yes;
             if (estado)
             {
                 int id = Convert.ToInt32(dgvProductos.CurrentRow.Cells[0].Value);
                 logica.Borrar(id);
             }
             dgvProductos.DataSource = logica.SeleccionarTodos();
             lblSuccess.Text         = "*Se eliminó satisfactoriamente.";
             lblSuccess.Visible      = true;
             MessageTimer.Start();
         }
         else
         {
             MessageBox.Show("Debe seleccionar un producto de la tabla.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
     }
     catch (Exception ex)
     {
         lblError.Text    = "*" + ex.Message;
         lblError.Visible = true;
         MessageTimer.Start();
     }
 }
Example #6
0
        private void btnEditar_Click(object sender, EventArgs e)
        {
            if (dgvProductos.SelectedRows.Count > 0)
            {
                int            id       = Convert.ToInt32(dgvProductos.CurrentRow.Cells[0].Value);
                ProductoLogica logica   = new ProductoLogica();
                Producto       producto = logica.SeleccionarPorId(id);
                txtId.Text            = id.ToString();
                txtNombre.Text        = producto.nombre;
                txtMarca.Text         = producto.marca;
                txtCantidad.Text      = producto.cantidad.ToString();
                txtPeso.Text          = producto.peso.ToString();
                txtPrecio.Text        = producto.precio.ToString();
                txtMinCantidad.Text   = producto.minCantidad.ToString();
                cmbArea.SelectedIndex = producto.idCategoria;

                int unidad = producto.unidad == "Kg" ? 0 :
                             producto.unidad == "g" ? 1 :
                             producto.unidad == "mL" ? 2 :
                             producto.unidad == "L" ? 3 :
                             producto.unidad == "oz" ? 4 : 0;

                cmbMedida.SelectedIndex = unidad;
            }
            else
            {
                MessageBox.Show("Debe seleccionar un producto de la tabla.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Example #7
0
        //protected void cargarListaProductos() {
        //    this.dltDatosProductos.DataSource = ProductoLogica.TodosProductosDS();
        //    this.dltDatosProductos.DataBind();
        //}


        protected void cargarListBoxProducto()
        {
            this.lstProductos.DataSource     = ProductoLogica.TodosProductos();
            this.lstProductos.DataTextField  = "textoMostrar";
            this.lstProductos.DataValueField = "ID";
            this.lstProductos.DataBind();
        }
 private void Refrescar()
 {
     try
     {
         ProductoLogica  logica        = new ProductoLogica();
         List <Producto> lista         = new List <Producto>();
         List <Producto> listaAuxiliar = new List <Producto>();
         lista = logica.obtenerProductos();
         dataGridProductos.ItemsSource = lista;
         if (rbCodigo.IsChecked.Value)
         {
             listaAuxiliar = lista.Where(p => p.IdProducto.ToLower().Contains(txtBuscar.Text.ToLower())).ToList();
             dataGridProductos.ItemsSource = listaAuxiliar;
         }
         if (rbNombre.IsChecked.Value)
         {
             listaAuxiliar = lista.Where(p => p.Nombre.ToLower().Contains(txtBuscar.Text.ToLower())).ToList();
             dataGridProductos.ItemsSource = listaAuxiliar;
         }
         if (rbMarca.IsChecked.Value)
         {
             listaAuxiliar = lista.Where(p => p.Modelo.Marca.Descripcion.ToLower().Contains(txtBuscar.Text.ToLower())).ToList();
             dataGridProductos.ItemsSource = listaAuxiliar;
         }
         if (rbModelo.IsChecked.Value)
         {
             listaAuxiliar = lista.Where(p => p.Modelo.NombreCompleto.ToLower().Contains(txtBuscar.Text.ToLower())).ToList();
             dataGridProductos.ItemsSource = listaAuxiliar;
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Example #9
0
        private void llenarComboBox()
        {
            cmbProductos.ValueMember   = "id";
            cmbProductos.DisplayMember = "nombreMarcaPeso";

            ProductoLogica logica = new ProductoLogica();

            foreach (Producto item in logica.SeleccionarTodos())
            {
                cmbProductos.Items.Add(item);
            }



            AutoCompleteStringCollection coleccion = new AutoCompleteStringCollection();

            foreach (Producto item in logica.SeleccionarTodos())
            {
                coleccion.Add(item.nombreMarcaPeso);
            }

            cmbProductos.AutoCompleteCustomSource = coleccion;
            cmbProductos.AutoCompleteMode         = AutoCompleteMode.SuggestAppend;
            cmbProductos.AutoCompleteSource       = AutoCompleteSource.CustomSource;
        }
        private void Refrescar()
        {
            ProductoLogica  logica = new ProductoLogica();
            List <Producto> lista  = new List <Producto>();

            lista = logica.obtenerProductos();
            dataGridProductos.ItemsSource = lista;
        }
Example #11
0
        public IEnumerable <BaseDTO> Get()
        {
            // ProductoLogica productoLogica = new ProductoLogica();
            //var resultado = productoLogica.ListarProductos();
            // var resultadoConvertido = resultado.OfType<ProductoDTO>();
            // return resultadoConvertido;

            // forma rapida
            var resultado = new ProductoLogica().ListarProductos().OfType <ProductoDTO>();

            return(resultado);
        }
 public IActionResult DetalleVenta(string ID)
 {
     try
     {
         productoVenta = new ProductoLogica();
         IEnumerable <Producto> listProducto = productoVenta.ListarProductos(_con);
         ViewBag.Codigo = ID;
         return(View(listProducto));
     }
     catch (Exception)
     {
         return(BadRequest());
     }
 }
 private void Refrescar()
 {
     try
     {
         ProductoLogica  logica = new ProductoLogica();
         List <Producto> lista  = new List <Producto>();
         lista = logica.obtenerProductos();
         dataGridProductos.ItemsSource = lista;
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Example #14
0
        private void MostrarProductos()
        {
            ProductoLogica  Logica    = new ProductoLogica();
            List <Producto> Productos = Logica.SeleccionarConFiltro(txtBusqueda.Value, Convert.ToInt32(ddlCategoria.SelectedValue), Convert.ToDouble(max.Value));

            foreach (Producto pro in Productos)
            {
                string Imagen = "";
                if (pro.Imagen != null)
                {
                    Imagen = "data:image/png;base64," + Convert.ToBase64String(pro.Imagen);
                }
                DivProductos.Controls.Add(ProductoToCard(pro, Imagen));
            }
        }
Example #15
0
        private void frmAgregarProductos_Load(object sender, EventArgs e)
        {
            ProductoLogica logica = new ProductoLogica();

            //configuración del DataGridView Productos
            dgvProductos.AutoGenerateColumns   = false;
            dgvProductos.DefaultCellStyle.Font = new Font("Tahoma", 13);
            dgvProductos.ColumnHeadersDefaultCellStyle.Font = new Font("Tahoma", 13);
            dgvProductos.DataSource = logica.SeleccionarTodos();

            //Reseteo de controles del frame
            cmbArea.SelectedIndex   = 0;
            cmbMedida.SelectedIndex = 0;
            llenarComboBox();
            txtId.Text   = "0";
            txtPeso.Text = "0";
        }
 public IActionResult Producto(string nombre, string precioUnitario)
 {
     try
     {
         pro = new ProductoLogica();
         Producto pr = new Producto
         {
             Nombre         = nombre,
             PrecioUnitario = Convert.ToSingle(precioUnitario)
         };
         pro.RegistrarProducto(_con, pr);
         return(View());
     }
     catch (Exception)
     {
         return(BadRequest());
     }
 }
Example #17
0
        public void LLenarGridProductos()
        {
            ProductoLogica  logica    = new ProductoLogica();
            List <Producto> productos = logica.SeleccionarTodos();
            DataTable       table     = new DataTable();

            table.Columns.Add("Id", typeof(int));
            table.Columns.Add("Nombre", typeof(string));
            foreach (Producto pro in productos)
            {
                DataRow row = table.NewRow();
                row["Id"]     = pro.IdProducto;
                row["Nombre"] = pro.Nombre;
                table.Rows.Add(row);
            }
            gridProductos.DataSource = table;
            gridProductos.DataBind();
            gridProductos.SelectedIndex = -1;
        }
Example #18
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            ProductoLogica pl      = new ProductoLogica();
            DataTable      dt      = pl.ReporteProductos();
            Usuario        usuario = new Usuario();

            usuario = (Usuario)App.Current.Properties["usuarioSesion"];
            DemoReporte.Reset();
            ReportDataSource rd = new ReportDataSource("DataSet1", dt);

            DemoReporte.LocalReport.DataSources.Add(rd);

            ReportParameter ReportParameter1 = new ReportParameter();

            ReportParameter1.Name = "paramUsuario";
            ReportParameter1.Values.Add(usuario.Nombre);

            DemoReporte.LocalReport.ReportEmbeddedResource = "PracticaProfesionalVivarsan.Reportes.ReporteProductos.rdlc";
            DemoReporte.LocalReport.SetParameters(ReportParameter1);
            DemoReporte.RefreshReport();
        }
Example #19
0
        public ActionResult DetailsProducto(int id)
        {
            var resultado = new ProductoLogica().ObtenerProductoPorCodigo(id);

            CarritoComprasVM model = new CarritoComprasVM();

            model.ProductoVista = (ProductoDTO)resultado;

            // Esto para pruebas se ocupa bajar a la BL
            // HttpContext.Session.SetString("ProdRelacionado", "Producto Prueba Relacionado");
            var prodRelacionado = new ProductoLogica().ListarProductoDeSegundaParecidosA(model.ProductoVista.NombreProducto);

            ViewBag.ProdRelacionado = "No Existe producto Relacionado";
            if (prodRelacionado.GetType() != typeof(ErrorDTO))
            {
                ViewBag.ProdRelacionado = "El nombre del producto de segunda relacionado es: " + ((ProductoDTO)prodRelacionado).NombreProducto;;
            }


            return(View(model));
        }
Example #20
0
        public ActionResult Productos()
        {
            SucursalProductoVM model = new SucursalProductoVM();
            var resultado            = new ProductoLogica().ListarProductos();

            if (resultado.ElementAt(0).GetType() == typeof(ErrorDTO))
            {
                // mensaje de erorr
                model.Error = (ErrorDTO)resultado.ElementAt(0);
            }
            else
            {
                model.ListadoProductos = new List <ProductoDTO>();
                foreach (var item in resultado)
                {
                    model.ListadoProductos.Add((ProductoDTO)item);
                }
                // datos correctos
            }
            return(Json(model.ListadoProductos));
        }
Example #21
0
        protected void gridProductos_SelectedIndexChanged(object sender, EventArgs e)
        {
            Producto Producto = new ProductoLogica().SeleccionarPorID(Convert.ToInt32(gridProductos.SelectedRow.Cells[2].Text));

            txtNombreProducto.Text      = Producto.Nombre;
            txtDescripcionProducto.Text = Producto.Descripcion;
            for (int i = 0; i < cmbCategoria.Items.Count; i++)
            {
                if ((new CategoriaLogica().SeleccionarPorID(Convert.ToInt32(cmbCategoria.Items[i].Value)).IdCategoria == Producto.Categoria.IdCategoria))
                {
                    cmbCategoria.SelectedIndex = i;
                    break;
                }
            }
            NudPrecio.Text                = Producto.Precio.ToString();
            divIdProducto.Visible         = true;
            txtIdProducto.Text            = Producto.IdProducto.ToString();
            btnActualizarProducto.Visible = true;
            btnBorrarProducto.Visible     = true;
            btnAgregarProducto.Visible    = false;
        }
Example #22
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            int              id = 0;
            Producto         p;
            ProductoLogica   logica  = new ProductoLogica();
            InventarioLogica logica2 = new InventarioLogica();

            if (dgvProductos.Rows.Count > 0)
            {
                // se crea el encabezado de la salida de productos
                logica2.CrearSalidaProductos(usuario);
                foreach (DataGridViewRow item in dgvProductos.Rows)
                {
                    id          = Convert.ToInt32(item.Cells[0].Value.ToString());
                    p           = logica.SeleccionarPorId(id);
                    p.cantidad -= Convert.ToInt32(item.Cells[6].Value.ToString());
                    logica.Actualizar(p);
                    Inventario inventario = new Inventario();
                    inventario.producto = p;
                    inventario.cantidad = Convert.ToInt32(item.Cells[6].Value.ToString());

                    // se crea el detalle de la salida de productos
                    logica2.SalidaProductos(inventario);
                }

                dgvProductos.Rows.Clear();
                count_fila = 0;
                MessageTimer.Start();
                lblError.Visible   = false;
                lblSuccess.Text    = "*Se ha guardado la salida de productos.";
                lblSuccess.Visible = true;
            }
            else
            {
                MessageTimer.Start();
                lblSuccess.Visible = false;
                lblError.Text      = "*Debe agregar productos de salida.";
                lblError.Visible   = true;
            }
        }
Example #23
0
        protected void gridProductos_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            int            IdProducto = Convert.ToInt32(gridProductos.DataKeys[e.RowIndex].Values[0]);
            ProductoLogica logica     = new ProductoLogica();

            try
            {
                logica.Eliminar(IdProducto);
                LLenarGridProductos();
            }
            catch (Exception ex)
            {
                string script = @"<script type='text/javascript'>
                            alert('Este producto no puede ser eliminado');
                        </script>";

                script = string.Format(script, ex.Message);

                ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false);
            }
            gridProductos.SelectedIndex = -1;
        }
 public IActionResult DetalleVenta(string codigoOperacion, string productoSelect, string cantidad)
 {
     try
     {
         productoVenta = new ProductoLogica();
         Producto IDProducto = productoVenta.BuscarProducto(_con, productoSelect);
         ventaOperacion = new VentaLogica();
         DetalleVenta deve = new DetalleVenta
         {
             IdProducto = IDProducto.Id,
             IdVenta    = Convert.ToInt32(codigoOperacion),
             SubTotal   = Convert.ToInt32(cantidad) * IDProducto.PrecioUnitario,
             Cantidad   = Convert.ToInt32(cantidad)
         };
         ventaOperacion.RegistrarDetalleVenta(_con, deve);
         return(RedirectToAction("DetalleVenta", "Transaccion", new { ID = codigoOperacion }));
     }
     catch (Exception)
     {
         return(BadRequest());
     }
 }
        private void btnGuardar_Click(object sender, RoutedEventArgs e)
        {
            Producto       prod   = new Producto();
            ProductoLogica logica = new ProductoLogica();

            //cliente.Id = txtid.Text;
            //if (cliente.Id == "")
            //{
            //    cliente.Id = Guid.NewGuid().ToString();
            //}


            //  cliente.Id = Guid.NewGuid().ToString();
            prod.IdProducto = txtCodigo.Text;
            prod.Nombre     = txtNombre.Text;
            //prod.Marca = txtMarca.Text;
            prod.PrecioCompra = Convert.ToDecimal(txtPrecioCompra.Text);
            prod.PrecioVenta  = Convert.ToDecimal(txtPrecioVenta.Text);

            logica.InsertarActialiarProducto(prod);
            MessageBox.Show("Correcto.", "Advertencia");
            Refrescar();
        }
        /// <summary>
        /// Agrega productos a la base de datos
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnRegistrar_Click(object sender, EventArgs e)
        {
            try
            {
                Producto nuevo = new Producto();
                nuevo.ID          = txtID.Text;
                nuevo.Descripcion = txtDescripcion.Text;
                nuevo.Precio      = Convert.ToDouble(txtPrecio.Text);
                nuevo.Tamano      = dropTamano.SelectedItem.Text;
                nuevo.Categoria   = ddlTipo.SelectedItem.Text;
                nuevo.NumVentas   = 0;

                nuevo.Imagen = fuploadImagen.FileName.ToString();

                ProductoLogica _Logica = new ProductoLogica();
                _Logica.InsertarProducto(nuevo);
                if (ddlCategoria.SelectedItem.Text == "Tecnología")
                {
                    Response.Redirect("ProductosTecno.aspx");
                }
                if (ddlCategoria.SelectedItem.Text == "Comida")
                {
                    Response.Redirect("ProductosComida.aspx");
                }
                if (ddlCategoria.SelectedItem.Text == "Ropa")
                {
                    Response.Redirect("ProductosRopa.aspx");
                }
                if (ddlCategoria.SelectedItem.Text == "LLantas")
                {
                    Response.Redirect("ProductosLlantas.aspx");
                }
            }
            catch (Exception er)
            {
            }
        }
Example #27
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                CategoriaLogica logicaCategoria = new CategoriaLogica();
                ProductoLogica  logicaProducto  = new ProductoLogica();


                Producto producto = new Producto();

                producto.nombre = txtNombre.Text;
                producto.marca  = txtMarca.Text;

                string unidad = cmbMedida.SelectedIndex == 0 ? "Kg" :
                                cmbMedida.SelectedIndex == 1 ? "g" :
                                cmbMedida.SelectedIndex == 2 ? "mL" :
                                cmbMedida.SelectedIndex == 3 ? "L" :
                                cmbMedida.SelectedIndex == 4 ? "oz" : "Kg";

                int     cantidad    = 0;
                int     minCantidad = 0;
                decimal precio      = 0m;
                decimal peso        = 0m;

                if (!int.TryParse(txtMinCantidad.Text, out minCantidad) ||
                    !int.TryParse(txtCantidad.Text, out cantidad) ||
                    !decimal.TryParse(txtPrecio.Text, out precio) ||
                    !decimal.TryParse(txtPeso.Text, out peso))
                {
                    lblError.Text = "*Debe ser un valor numérico."; lblError.Visible = true;
                }

                producto.peso        = peso;
                producto.unidad      = unidad;
                producto.cantidad    = cantidad;
                producto.minCantidad = minCantidad;
                producto.precio      = precio;
                producto.categoria   = logicaCategoria.SeleccionarPorId(cmbArea.SelectedIndex);

                Producto p = logicaProducto.SeleccionarPorId(Convert.ToInt32(txtId.Text));

                if (p != null)
                {
                    producto.id = Convert.ToInt32(txtId.Text);
                    logicaProducto.Actualizar(producto);
                }
                else
                {
                    logicaProducto.Crear(producto);
                }


                dgvProductos.DataSource          = logicaProducto.SeleccionarTodos();
                dgvProductos.CurrentRow.Selected = false;
                MessageTimer.Start();
                lblSuccess.Text    = "*Guardado con éxito.";
                lblSuccess.Visible = true;
                btnLimpiar_Click(this, null);
            }
            catch (Exception ex)
            {
                lblError.Text    = "*" + ex.Message;
                lblError.Visible = true;
                MessageTimer.Start();
            }
        }
Example #28
0
        private void btnAgregar_Click(object sender, EventArgs e)
        {
            bool existe   = false;
            int  num_fila = 0;

            ProductoLogica logica = new ProductoLogica();

            if (cmbProductos.SelectedItem == null)
            {
                lblSuccess.Visible = false;
                MessageTimer.Start();
                lblError.Text    = "*Debe seleccionar un producto.";
                lblError.Visible = true;
            }

            Producto p        = logica.SeleccionarPorId(((Producto)cmbProductos.SelectedItem).id);
            int      cantidad = Convert.ToInt32(nudCantidad.Value);

            if (count_fila == 0)
            {
                dgvProductos.Rows.Add(p.id, p.nombre, p.marca, p.pesoUnidad, p.precio, p.cantidad, cantidad);
                int cantidadFinal = Convert.ToInt32(dgvProductos.Rows[count_fila].Cells[5].Value) + cantidad;
                dgvProductos.Rows[count_fila].Cells[7].Value = cantidadFinal;
                count_fila++;
                MessageTimer.Start();
                lblError.Visible   = false;
                lblSuccess.Text    = "*Agregado con éxito.";
                lblSuccess.Visible = true;
            }
            else
            {
                foreach (DataGridViewRow item in dgvProductos.Rows)
                {
                    if (item.Cells[0].Value.ToString() == (cmbProductos.SelectedIndex + 1).ToString())
                    {
                        existe   = true;
                        num_fila = item.Index;
                    }
                }

                if (existe)
                {
                    MessageTimer.Start();
                    lblSuccess.Visible = false;
                    lblError.Text      = "*Éste producto ya se encuentra agregado.";
                    lblError.Visible   = true;
                }
                else
                {
                    dgvProductos.Rows.Add(p.id, p.nombre, p.marca, p.pesoUnidad, p.precio, p.cantidad, cantidad);
                    int cantidadFinal = Convert.ToInt32(dgvProductos.Rows[count_fila].Cells[5].Value) + cantidad;
                    dgvProductos.Rows[count_fila].Cells[7].Value = cantidadFinal;
                    count_fila++;
                    MessageTimer.Start();
                    lblError.Visible   = false;
                    lblSuccess.Text    = "*Agregado con éxito.";
                    lblSuccess.Visible = true;
                }
            }

            cmbProductos.SelectedItem        = null;
            cmbProductos.Text                = "";
            nudCantidad.Value                = 0;
            dgvProductos.CurrentRow.Selected = false;
        }