private void btnGuardarProducto_Click(object sender, RoutedEventArgs e)
        {

            if (!string.IsNullOrWhiteSpace(txtnombreproducto.Text))
            {
                if (!string.IsNullOrWhiteSpace(txtstock.Text))
                {
                    if (!string.IsNullOrWhiteSpace(txtprecioReal.Text))
                    {
                        if (!string.IsNullOrWhiteSpace(txtprecio.Text))
                        {
                            int compra = ToEntero(txtprecioReal.Text, NumberStyles.Float | NumberStyles.AllowThousands, new CultureInfo("en-GB"));
                            int venta = ToEntero(txtprecio.Text, NumberStyles.Float | NumberStyles.AllowThousands, new CultureInfo("en-GB"));
                            if (compra < venta)
                            {


                                if (cbTipoCodigo.SelectedIndex == 1)
                                {
                                    if (!string.IsNullOrWhiteSpace(txtcodprod.Text))
                                    {
                                        //ingresar producto con id ingresado por usuario


                                        if (cbCategoria.Items.Count > 0)
                                        {
                                            ProductoFacade prodF = new ProductoFacade();

                                            string codProd = txtcodprod.Text;
                                            string nombreProd = txtnombreproducto.Text;
                                            string nombreCat = cbCategoria.SelectedValue.ToString();
                                            
                                            int st = ToEntero(txtstock.Text, NumberStyles.Float | NumberStyles.AllowThousands, new CultureInfo("en-GB"));
                                            string stock = st.ToString();

                                            int pR = ToEntero(txtprecioReal.Text, NumberStyles.Float | NumberStyles.AllowThousands, new CultureInfo("en-GB"));
                                            string precioReal = pR.ToString();
                                            int p = ToEntero(txtprecio.Text, NumberStyles.Float | NumberStyles.AllowThousands, new CultureInfo("en-GB"));
                                            string precio = p.ToString();
                                            //string res=prodF.GuardarProducto()

                                            //Agregar idCategoria al idProducto + el numItem
                                            ProductoFacade prodFCod = new ProductoFacade();
                                            categoriaFacade catFCod = new categoriaFacade();
                                            List<Producto> listProducto = prodFCod.getProductosBynombreCategoria(nombreCat);

                                            //Verificar si producto con nombre y categoria existe
                                            ProductoFacade prodFExiste = new ProductoFacade();
                                            bool existeProd = prodFExiste.getExisteProductoBynombreYidCat(nombreProd, nombreCat);
                                            if (existeProd)
                                            {
                                                MessageBox.Show("Producto con nombre:\"" + nombreProd + "\" ya existe para categoria:\"" + nombreCat + "\"" + "", "Magnolia", MessageBoxButton.OK, MessageBoxImage.Warning);
                                            }
                                            else
                                            {

                                                DateTime fechaactual = DateTime.Now.Date;
                                                string res = prodF.GuardarProducto(txtcodprod.Text, nombreProd, stock, precioReal, precio, nombreCat, fechaactual, 1);
                                                if (res.Equals(""))
                                                {
                                                    MessageBox.Show("Producto guardado correctamente!", "Magnolia", MessageBoxButton.OK, MessageBoxImage.Information);
                                                    limpiarTxtProducto();
                                                    llenarTablaProductoBynombreCat(nombreCat);
                                                    cbTipoCodigo.SelectedIndex = 0;
                                                    tabCodigos.actualizarArbolyTablaProductos();
                                                }
                                                else
                                                {
                                                    MessageBox.Show("Error al guardar producto:" + res + "", "Magnolia", MessageBoxButton.OK, MessageBoxImage.Error);

                                                }






                                            }


                                        }
                                        else
                                        {
                                            MessageBox.Show("Ingresar al menos 1 categoria!", "Magnolia", MessageBoxButton.OK, MessageBoxImage.Warning);


                                        }
                                    }
                                    else
                                    {
                                        MessageBox.Show("Ingresar idproducto a producto", "Magnolia", MessageBoxButton.OK, MessageBoxImage.Warning);


                                    }
                                }
                                else
                                {
                                    //ingresar idproductogenerado

                                    Guid guid = Guid.NewGuid();
                                    string a = guid.ToString();

                                    string idPnuevo = string.Empty;
                                    long val = 0;

                                    for (int i = 0; i < a.Length; i++)
                                    {
                                        if (Char.IsDigit(a[i]))
                                            if (idPnuevo.Length < 8)
                                            {
                                                idPnuevo += a[i];
                                            }
                                            else
                                            {
                                                break;
                                            }
                                    }
                                    if (cbCategoria.Items.Count > 0)
                                    {
                                        ProductoFacade prodF = new ProductoFacade();


                                        string nombreProd = txtnombreproducto.Text;
                                        string nombreCat = cbCategoria.SelectedValue.ToString();
                                        int st = ToEntero(txtstock.Text, NumberStyles.Float | NumberStyles.AllowThousands, new CultureInfo("en-GB"));
                                        string stock = st.ToString();
                                        int pR = ToEntero(txtprecioReal.Text, NumberStyles.Float | NumberStyles.AllowThousands, new CultureInfo("en-GB"));
                                        string precioReal = pR.ToString();
                                        int p = ToEntero(txtprecio.Text, NumberStyles.Float | NumberStyles.AllowThousands, new CultureInfo("en-GB"));
                                        string precio = p.ToString();
                                        //string res=prodF.GuardarProducto()

                                        //Agregar idCategoria al idProducto + el numItem
                                        ProductoFacade prodFCod = new ProductoFacade();
                                        categoriaFacade catFCod = new categoriaFacade();
                                        List<Producto> listProducto = prodFCod.getProductosBynombreCategoria(nombreCat);

                                        //Verificar si producto con nombre y categoria existe
                                        ProductoFacade prodFExiste = new ProductoFacade();
                                        bool existeProd = prodFExiste.getExisteProductoBynombreYidCat(nombreProd, nombreCat);
                                        if (existeProd)
                                        {
                                            MessageBox.Show("Producto con nombre:\"" + nombreProd + "\" ya existe para categoria:\"" + nombreCat + "\"" + "", "Magnolia", MessageBoxButton.OK, MessageBoxImage.Warning);
                                        }
                                        else
                                        {
                                            //Producto ya tiene productos asociados a categoria agregar en la ultima posicion


                                            //Guardar producto con idproducto 
                                            DateTime fechaactual = DateTime.Now.Date;
                                            string res = prodF.GuardarProducto(idPnuevo, nombreProd, stock, precioReal, precio, nombreCat, fechaactual, 0);
                                            if (res.Equals(""))
                                            {
                                                MessageBox.Show("Producto guardado correctamente!", "Magnolia", MessageBoxButton.OK, MessageBoxImage.Information);
                                                limpiarTxtProducto();
                                                llenarTablaProductoBynombreCat(nombreCat);
                                                tabCodigos.actualizarArbolyTablaProductos();
                                                //llenarTablaProductoCodBarra();
                                                //CantidadTotalRubrosyProductos();
                                            }
                                            else
                                            {
                                                MessageBox.Show("Error al guardar producto:" + res + "", "Magnolia", MessageBoxButton.OK, MessageBoxImage.Error);

                                            }


                                        }


                                    }
                                    else
                                    {
                                        MessageBox.Show("Ingresar al menos 1 categoria!", "Magnolia", MessageBoxButton.OK, MessageBoxImage.Warning);


                                    }
                                }

                            }
                            else
                            {
                                MessageBox.Show("Precio de venta debe ser mayor a precio de compra(?!)", "Magnolia", MessageBoxButton.OK, MessageBoxImage.Warning);

                            }
                        }
                        else
                        {
                            MessageBox.Show("Ingresar Precio Venta a producto", "Magnolia", MessageBoxButton.OK, MessageBoxImage.Warning);

                        }
                    }
                    else
                    {
                        MessageBox.Show("Ingresar Precio Compra a producto", "Magnolia", MessageBoxButton.OK, MessageBoxImage.Warning);

                    }
                }
                else
                {
                    MessageBox.Show("Ingresar Stock!", "Magnolia", MessageBoxButton.OK, MessageBoxImage.Warning);

                }
            }
            else
            {
                MessageBox.Show("Ingresar nombre a producto", "Magnolia", MessageBoxButton.OK, MessageBoxImage.Warning);

            }
        }