private void btnConsultarLogistica_Click(object sender, EventArgs e)
        {
            string codigologistica = Microsoft.VisualBasic.Interaction.InputBox("COLOQUE EL NUMERO DE LA LOGISTICA QUE DESEA CONTINUAR", "BUSCAR LOGISTICA");

            var logistica = db.logisticainversa.Where(x => x.Folio.Equals(codigologistica.ToUpper().Trim())).FirstOrDefault();

            if (logistica == null)
            {
                MessageBox.Show("NO SE EXISTE ESTA LOGISTICA INVERSA INTENTE OTRA VEZ");
            }
            else
            {
                if (logistica.statuslogisticasinversas_Id == 2)
                {
                    MessageBox.Show("ESTA LOGISTICA SE ENCUENTRA CERRADA INTENTE CON OTRA");
                }
                else
                {
                    bool valor = false;

                    cbOrigen.SelectedValue  = logistica.origenlogistica_id;
                    dtpFechaAlta.Value      = (DateTime)logistica.FechaAlta;
                    cbOrigen.Enabled        = false;
                    dtpFechaAlta.Enabled    = false;
                    lblTipoLogistica.Text   = "CONTINUACION";
                    lblStatusLogistica.Text = logistica.Folio;
                    txtSKU.Enabled          = true;

                    do
                    {
                        string codigotarima = Microsoft.VisualBasic.Interaction.InputBox("COLOQUE EL NUMERO DE LA TARIMA QUE DESEA CONTINUAR \n\n (N) -> SALIR", "BUSCAR TARIMA");

                        if (codigotarima.ToUpper().Trim().Equals("N"))
                        {
                            valor = false;
                        }
                        else
                        {
                            var tarima = db.tarimas.Where(x => x.Folio.Equals(codigotarima)).FirstOrDefault();

                            if (tarima == null)
                            {
                                MessageBox.Show("ESTA TARIMA NO EXISTE");
                                valor = false;
                            }
                            else
                            {
                                lblStatusTarima.Text = codigotarima;
                                listaGrid            = new List <CantidadesTarima>();
                                int folio = 1;

                                var dettarimassku = db.dettarimasskus.Where(x => x.tarimas_Id.Equals(tarima.id)).ToList();

                                foreach (var item in dettarimassku)
                                {
                                    CantidadesTarima cantidadSKU = new CantidadesTarima();

                                    cantidadSKU.folio       += folio++;
                                    cantidadSKU.sku          = item.skus.codigobarras;
                                    cantidadSKU.cantidad     = (int)item.Cantidad;
                                    cantidadSKU.codigotarima = codigotarima;

                                    listaGrid.Add(cantidadSKU);
                                }

                                var listafinal = listaGrid.OrderByDescending(x => x.folio);
                                dgvItems.DataSource          = null;
                                dgvItems.AutoGenerateColumns = false;
                                dgvItems.DataSource          = listafinal.ToList();
                                txtSKU.Focus();
                                valor = true;
                            }
                        }
                    } while (valor.Equals(false));
                }
            }
        }
        public bool AgregarItem(string sku)
        {
            try
            {
                var skutemp      = db.skus.Where(x => x.codigobarras.Equals(sku)).FirstOrDefault();
                var skubenavides = db.skusbenavides.Where(x => x.codigobarras.Equals(sku)).FirstOrDefault();

                if (skutemp == null && skubenavides == null)
                {
                    Error("SKU NO EXISTE \n\n CONTINUAR -> (OK)", "ERROR SKU");
                    txtSKU.Text = string.Empty;
                    txtSKU.Focus();
                }
                else
                {
                    if (skutemp != null)
                    {
                        var skuinventarios = db.skusinventarios.Where(x => x.skus_Id == skutemp.id).FirstOrDefault();

                        int cantidad = 0;
                        if (skuinventarios.qtymanual.Equals("N"))
                        {
                            cantidad = 1;
                        }
                        else
                        {
                            cantidad = int.Parse(Microsoft.VisualBasic.Interaction.InputBox("TECLEA LA CANTIDAD DE ESTE SKU", "CANTIDAD MANUAL"));
                        }

                        CantidadesTarima cantidadSKU = new CantidadesTarima();
                        var skuexistente             = listaGrid.Where(x => x.sku.Equals(sku)).FirstOrDefault();

                        if (skuexistente != null)
                        {
                            skuexistente.cantidad += cantidad;
                        }
                        else
                        {
                            cantidadSKU.folio        = listaGrid.Count() + 1;
                            cantidadSKU.sku          = skutemp.SKU.Trim();
                            cantidadSKU.cantidad     = cantidad;
                            cantidadSKU.codigotarima = this.lblTarima.Text;
                            listaGrid.Add(cantidadSKU);
                        }
                    }
                    else
                    {
                        var skuinventarios = db.skusinventarios.Where(x => x.skus_Id.Equals(skubenavides.skus_Id)).FirstOrDefault();

                        int cantidad = 0;
                        if (skuinventarios.qtymanual.Equals("N"))
                        {
                            cantidad = 1;
                        }
                        else
                        {
                            cantidad = int.Parse(Microsoft.VisualBasic.Interaction.InputBox("TECLEA LA CANTIDAD DE ESTE SKU", "CANTIDAD MANUAL"));
                        }

                        CantidadesTarima cantidadSKU = new CantidadesTarima();
                        string           skuben      = skubenavides.skus.SKU.Trim();
                        var skuexistente             = listaGrid.Where(x => x.sku.Equals(skuben)).FirstOrDefault();

                        if (skuexistente != null)
                        {
                            skuexistente.cantidad += cantidad;
                        }
                        else
                        {
                            cantidadSKU.folio        = listaGrid.Count() + 1;
                            cantidadSKU.sku          = skubenavides.skus.SKU.Trim();
                            cantidadSKU.cantidad     = cantidad;
                            cantidadSKU.codigotarima = this.lblTarima.Text;
                            listaGrid.Add(cantidadSKU);
                        }
                    }
                }

                var listafinal = listaGrid.OrderByDescending(x => x.folio);
                dgvItems.DataSource          = null;
                dgvItems.AutoGenerateColumns = false;
                dgvItems.DataSource          = listafinal.ToList();
                txtSKU.Text = string.Empty;
                txtSKU.Focus();

                return(true);
            }
            catch (Exception ex)
            {
                Error("Error: " + ex.Message.ToString() + " \n\n CONTINUAR -> (OK)", "ERROR SKU");
                return(false);
            }
        }