예제 #1
0
        //funcion cuando se hace clic en el boton guardar
        private void btnAceptar_Click(object sender, EventArgs e)
        {
            // verifica si tiene descripcion
            if (txt_codigo.Text != "" || txt_descripcion.Text != "")
            {
                //verifica si no es una alta
                if (alta == false)
                {
                    //verifica si el precio es mayor a 0
                    if (Convert.ToDecimal(txt_total.Text) > 0)
                    {
                        //verifica si no es una modificacion
                        if (modificar == false)
                        {
                            Categoria cate = new Categoria(((Categoria)cbox_categoria.SelectedItem).Nombre, ((Categoria)cbox_categoria.SelectedItem).Id_categoria, ((Categoria)cbox_categoria.SelectedItem).Imagen);

                            Producto pro = new Producto(0, txt_codigo.Text.ToString(), txt_descripcion.Text.ToString(), Convert.ToDecimal(txt_precio_unidad.Text), Convert.ToDecimal(txt_iva.Text), Convert.ToDecimal(txt_total.Text), Convert.ToDecimal(txt_margen_1.Text), Convert.ToInt32(txt_cantidad.Text), Convert.ToInt32(txt_minimo.Text), cate);
                            if (chk_imagen_categoria.Checked == true)
                            {
                                pro.Imagen_categoria = true;
                                pro.Imagen           = " ";
                            }
                            else
                            {
                                pro.Imagen_categoria = false;
                                pro.Imagen           = txt_ruta_imagen.Text;
                            }
                            DatosProducto.NuevoProducto(pro);
                        }
                        //verifica si es una modificacion de un producto ya existente
                        else if (modificar == true && carga == false)
                        {
                            Categoria cate = new Categoria(((Categoria)cbox_categoria.SelectedItem).Nombre, ((Categoria)cbox_categoria.SelectedItem).Id_categoria, ((Categoria)cbox_categoria.SelectedItem).Imagen);

                            int      cantidad = Convert.ToInt32(txt_cantidad.Text) + Convert.ToInt32(txt_stock.Text);
                            Producto prod     = new Producto(pro.Id_producto, txt_codigo.Text.ToString(), txt_descripcion.Text.ToString(), Convert.ToDecimal(txt_precio_unidad.Text), Convert.ToDecimal(txt_iva.Text), Convert.ToDecimal(txt_total.Text), Convert.ToDecimal(txt_margen_1.Text), cantidad, Convert.ToInt32(txt_minimo.Text), cate);


                            if (chk_imagen_categoria.Checked == true)
                            {
                                prod.Imagen_categoria = true;
                                prod.Imagen           = " ";
                            }
                            else
                            {
                                prod.Imagen_categoria = false;
                                prod.Imagen           = txt_ruta_imagen.Text;
                            }
                            DatosProducto.ModificarProducto(prod);
                        }
                        // agrega al carrito de alta de un producto un producto ya existente
                        else if (modificar == true && carga == true)
                        {
                            Categoria cate = new Categoria(((Categoria)cbox_categoria.SelectedItem).Nombre, ((Categoria)cbox_categoria.SelectedItem).Id_categoria, ((Categoria)cbox_categoria.SelectedItem).Imagen);

                            Producto prod = new Producto(pro.Id_producto, txt_codigo.Text.ToString(), txt_descripcion.Text.ToString(), Convert.ToDecimal(Math.Round(Convert.ToDecimal(txt_precio_unidad.Text), 2)), Convert.ToDecimal(txt_iva.Text), Convert.ToDecimal(txt_total.Text), Convert.ToDecimal(txt_margen_1.Text), Convert.ToInt32(txt_cantidad.Text), Convert.ToInt32(txt_minimo.Text), cate);
                            if (chk_imagen_categoria.Checked == true)
                            {
                                prod.Imagen_categoria = true;
                                prod.Imagen           = " ";
                            }
                            else
                            {
                                prod.Imagen_categoria = false;
                                prod.Imagen           = txt_ruta_imagen.Text;
                            }
                            Producto_Alta.producto_agregar.Add(prod);
                        }
                    }
                }
                else
                {
                    Categoria cate = new Categoria(((Categoria)cbox_categoria.SelectedItem).Nombre, ((Categoria)cbox_categoria.SelectedItem).Id_categoria, ((Categoria)cbox_categoria.SelectedItem).Imagen);

                    Producto prod = new Producto(0, txt_codigo.Text.ToString(), txt_descripcion.Text.ToString(), Convert.ToDecimal(Math.Round(Convert.ToDecimal(txt_precio_unidad.Text), 2)), Convert.ToDecimal(txt_iva.Text), Convert.ToDecimal(txt_total.Text), Convert.ToDecimal(txt_margen_1.Text), Convert.ToInt32(txt_cantidad.Text), Convert.ToInt32(txt_minimo.Text), cate);
                    if (chk_imagen_categoria.Checked == true)
                    {
                        prod.Imagen_categoria = true;
                        prod.Imagen           = " ";
                    }
                    else
                    {
                        prod.Imagen_categoria = false;
                        prod.Imagen           = txt_ruta_imagen.Text;
                    }
                    Producto_Alta.producto_agregar_nuevo.Add(prod);
                }
                this.Close();
            }
            else
            {
                MessageBox.Show(this, "Debe ingresar un código y una descripción válida", "¡Aviso!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                if (txt_codigo.Text == "")
                {
                    txt_codigo.Focus();
                }
                else
                {
                    txt_descripcion.Focus();
                }
            }
        }
예제 #2
0
        //inicia cuando se aprenta el botón guardar
        private void btn_no_imprimir_Click(object sender, EventArgs e)
        {
            bool continuar = true;

            //verifica si la facura esta vacia
            if (txt_num_factura.Text == "" || txt_num_factura.Text == " ")
            {
                DialogResult dr = MessageBox.Show(this, "No se ha introducido un número de factura, ¿desea continuar?", "Atención", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (dr == DialogResult.Yes)
                {
                    continuar = true;
                }
                if (dr == DialogResult.No)
                {
                    continuar = false;
                }
            }
            //continua si se habilita por el usuarui
            if (continuar == true)
            {
                if (listacarrito.Count > 0 || listacarrito_nuevo.Count > 0)
                {
                    // verifico si el cliente es nuevo
                    if (cbox_proveedor.SelectedItem == null)
                    {
                        Pais pa = new Pais();

                        Proveedor pro = new Proveedor(cbox_proveedor.Text, " ", " ", " ", " ", DatosPais.obtener_id_pais_maximo(), 0, " ", pa);
                        DatosProveedor.NuevoProveedor(pro);
                        id_proveedor = DatosProveedor.obtener_id_proveedor_maximo();
                    }
                    //verifico si hay un cliente seleccionado en el cbox_cliente
                    else
                    {
                        id_proveedor = ((Proveedor)cbox_proveedor.SelectedItem).Id_proveedor;
                    }

                    Int64  id_compra;
                    string tipo;
                    string estado;
                    if (cbox_tipo_factura.SelectedIndex == 0)
                    {
                        tipo   = "Contado";
                        estado = "Pago";
                    }
                    else
                    {
                        tipo   = "Credito";
                        estado = "Debe";
                    }
                    Compra c = new Compra(0, id_proveedor, DateTime.Today, date_fecha.Value, date_vencimiento.Value, tipo, txt_num_factura.Text, estado, Convert.ToDecimal(txt_pesos.Text));
                    DatosCompra.NuevaCompra(c);


                    // obtengo el id max de venta
                    try
                    {
                        id_compra = DatosCompra.obtener_id_compra();
                    }
                    catch
                    {
                        id_compra = 0;
                    }


                    //recorre el array de carrito para registrar la compra en la base de datos, también modifica el stock del  producto
                    for (int i = 0; i < listacarrito.Count; i++)
                    {
                        Compra_Producto cp = new Compra_Producto(0, id_compra, ((Producto)listacarrito[i]).Id_producto, ((Producto)listacarrito[i]).Precio_unidad, ((Producto)listacarrito[i]).Stock);
                        DatosCompra_Producto.NuevaCompraProducto(cp);

                        for (Int32 h = 0; h < listaInicial.Count; h++)
                        {
                            if (((Producto)listacarrito[i]).Id_producto == ((Producto)listainicial2[h]).Id_producto)
                            {
                                ((Producto)listacarrito[i]).Stock = ((Producto)listainicial2[h]).Stock + ((Producto)listacarrito[i]).Stock;
                                DatosProducto.ModificarProducto((Producto)listacarrito[i]);
                            }
                        }
                    }
                    for (int i = 0; i < listacarrito_nuevo.Count; i++)
                    {
                        DatosProducto.NuevoProducto((Producto)listacarrito_nuevo[i]);
                        Int64           id_producto = DatosProducto.obtener_idMax_producto();
                        Compra_Producto cp          = new Compra_Producto(0, id_compra, id_producto, ((Producto)listacarrito_nuevo[i]).Precio_unidad, ((Producto)listacarrito_nuevo[i]).Stock);
                        DatosCompra_Producto.NuevaCompraProducto(cp);
                    }
                    this.Close();
                }
                else
                {
                    MessageBox.Show(this, "No hay items para dar de alta", "¡Aviso!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    txt_codigo2.Focus();
                }
            }

            /*else {
             *  txt_num_factura.Focus();
             *
             * }*/
        }