コード例 #1
0
        public static ArrayList getProductos()
        {
            //creo la conexion
            SqlConnection cnn = new SqlConnection(conexion);
            //abro la conexion
            cnn.Open();
            //creo la lista para almacenar los productos
            ArrayList listaproductos = new ArrayList();
            //Creo el comando sql a utlizar
            SqlCommand cmd = new SqlCommand("select p.id_producto, p.codigo, p.detalle, p.precio_unidad, p.iva, p.total, p.margen, p.stock, p.stock_min, p.id_categoria, c.id_categoria, c.categoria_nombre, p.imagen , p.imagen_categoria c.imagen from producto p,  Categoria c where c.id_categoria=p.id_categoria order by p.detalle ");

            //asigno la conexion al comando
            cmd.Connection = cnn;
            //creo el datareader
            SqlDataReader obdr = cmd.ExecuteReader();
            //recorro el datareader
            while (obdr.Read())
            {

                Categoria cate = new Categoria(obdr.GetString(10), obdr.GetInt32(11), obdr.GetString(14));
                Producto p = new Producto(obdr.GetInt64(0), obdr.GetString(1), obdr.GetString(2), Convert.ToDecimal(Math.Round(obdr.GetDecimal(3), 2)), obdr.GetDecimal(4), obdr.GetDecimal(5), obdr.GetDecimal(6), obdr.GetInt32(7), obdr.GetInt32(8), cate);
                p.Imagen = obdr.GetString(12);

                p.Imagen_categoria = obdr.GetBoolean(13);
                listaproductos.Add(p);
            }
            //Cierro la conexion
            cnn.Close();
            //retorno la lsita
            return listaproductos;
        }
コード例 #2
0
 public Venta_Producto(Int64 id_venta_producto, Int64 id_venta, Int64 id_producto, decimal precio, Int32 cantidad, Producto pro)
 {
     this.id_venta_producto = id_venta_producto;
     this.id_venta = id_venta;
     this.id_producto = id_producto;
     this.precio = precio;
     this.cantidad = cantidad;
     this.pro = pro;
 }
コード例 #3
0
 public Compra_Producto(Int64 id_compra_producto, Int64 id_compra, Int64 id_producto, decimal precio, Int32 cantidad, Producto pro)
 {
     this.id_compra_producto = id_compra_producto;
     this.id_compra = id_compra;
     this.id_producto = id_producto;
     this.precio = precio;
     this.cantidad = cantidad;
     this.pro = pro;
 }
コード例 #4
0
        private void btn_borrar_producto_Click(object sender, EventArgs e)
        {
            pro = DatosProducto.getProducto_por_id(txt_codigo.Text);
            if (pro.Detalle != null)
            {
                DialogResult dr = MessageBox.Show(this, "¿Desea dar de baja ´ " + pro.Detalle + " ´ ?", "Atención", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (dr == DialogResult.Yes)
                {

                    DatosProducto.setBajaProducto(txt_codigo.Text);
                }
            }
        }
コード例 #5
0
        //incializa carga cuando le pasan el objeto producto
        public Producto_Datos(object prod)
        {
            InitializeComponent();
            Cargarcategorias();

            cbox_categoria.SelectedIndex = 0;
            this.pro = (Producto)prod;
            txt_codigo.Text = pro.Codigo;

            alta = true;
            txt_codigo.ReadOnly = true;
            if (Principal.test_mode == true)
            {
                txt_stock.Visible = true;
                label6.Visible = true;
                txt_cantidad.ReadOnly = false;
            }
            txt_cantidad.Focus();
        }
コード例 #6
0
        public void agregar(string codigo)
        {
            bool existe = false;

            for (int x = 0; x < listacarrito.Count; x++)
            {
                if (codigo == ((Producto)listacarrito[x]).Codigo)
                {

                    existe = true;
                    ((Producto)listacarrito[x]).Stock = Convert.ToInt32(txt_cantidad.Text) + ((Producto)listacarrito[x]).Stock;
                    bdd_carrito[2, x].Value = ((Producto)listacarrito[x]).Stock;
                    // bdd_print[0, x].Value = ((Producto)listacarrito[x]).Stock;
                    txt_cantidad.Text = "1";
                }
            }

            if (existe == false)
            {
                for (int i = 0; i < listaInicial.Count; i++)
                {
                    if (codigo == ((Producto)listaInicial[i]).Codigo)
                    {
                        Producto p = new Producto();
                        p = (Producto)listaInicial[i];
                        p.Stock = Convert.ToInt32(txt_cantidad.Text);
                        bdd_carrito.Rows.Add(p.Codigo, p.Detalle, p.Stock, p.Total);
                        //bdd_print.Rows.Add(p.Stock, p.Detalle, p.Total);
                        listacarrito.Add(p);
                        txt_cantidad.Text = "1";
                    }
                }
            }
            existe = false;
            txt_codigo2.Text = "";

            txt_codigo2.Focus();
            calcular();
        }
コード例 #7
0
        private void btn_caja_buscar_Click(object sender, EventArgs e)
        {
            if (txt_codigo_caja.Text != "")
            {
                caja = DatosProducto.getProducto_por_id(txt_codigo_caja.Text);

                    txt_caja_descripcion.Text = caja.Detalle;
                    if (txt_caja_descripcion.Text == "")
                    {

                        MessageBox.Show(this, "Código incorrecto, intente con un nuevo código", "¡Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        caja_listo = false;
                        txt_codigo_caja.SelectAll();
                        txt_codigo_caja.Focus();
                        this.AcceptButton = btn_caja_buscar;
                    }
                    else
                    {
                        caja_listo = true;

                    }
                    validar();
            }
        }
コード例 #8
0
        //funcion del boton agregar
        public void agregar(string codigo)
        {
            decimal abonar = 0;
            bool existe = false;

            //verifica si el producto ya existe en el carrito
            for (int x = 0; x < listacarrito.Count; x++)
            {
                if (codigo == ((Producto)listacarrito[x]).Codigo)
                {

                    MessageBox.Show(this, "Ya se agregó un producto similar", "¡Aviso!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    existe = true;
                }
            }

            //incia si no ya se agrego al carrito
            if (existe == false)
            {
                for (int i = 0; i < listaInicial.Count; i++)
                {
                    //verifica si el producto existe, lo agrega al array de carrito y se muestra en el datagrid
                    if (codigo == ((Producto)listaInicial[i]).Codigo)
                    {
                        Producto p = new Producto();
                        p = (Producto)listaInicial[i];

                        Producto_Datos pd = new Producto_Datos(p, true);
                        pd.ShowDialog();

                        if (producto_agregar.Count == 1)
                        {
                            p = (Producto)producto_agregar[0];

                            bdd_carrito.Rows.Add(p.Codigo, p.Detalle, p.Stock, p.Precio_unidad, p.Total);

                            listacarrito.Add(p);

                            producto_agregar.Clear();

                            //calcula el abono
                            abonar = p.Precio_unidad * p.Stock;

                            decimal total = abonar + Convert.ToDecimal(txt_pesos.Text);
                            txt_pesos.Text = (Convert.ToDecimal(Math.Round(total, 2))).ToString();

                            bdd_carrito[4, bdd_carrito.Rows.Count - 2].Value = abonar;
                        }
                        existe_producto = true;
                    }

                }
               //es un nuevo producto, lo agrga al array de productos, también lo agrega al array de carrito y se muestra en el datagrid
                if (existe_producto == false)
                {

                    DialogResult dr = MessageBox.Show(this, "¿Este producto no está en el stock, desea dar de alta?", "Atención", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                    if (dr == DialogResult.Yes)
                    {
                        Producto p = new Producto();
                        p.Codigo = txt_codigo2.Text;
                        Producto_Datos pd = new Producto_Datos(p);
                        pd.ShowDialog();
                        if (producto_agregar_nuevo.Count == 1)
                        {
                            p = (Producto)producto_agregar_nuevo[0];
                            //   p.Stock = Convert.ToInt32(txt_cantidad.Text);
                            bdd_carrito.Rows.Add(p.Codigo, p.Detalle, p.Stock, p.Precio_unidad, p.Total);
                            //bdd_print.Rows.Add(p.Stock, p.Detalle, p.Total);
                            listacarrito_nuevo.Add(p);
                            producto_agregar_nuevo.Clear();
                            abonar = p.Precio_unidad * p.Stock;

                            decimal total = abonar + Convert.ToDecimal(txt_pesos.Text);
                            txt_pesos.Text = (Convert.ToDecimal(Math.Round(total, 2))).ToString();

                            bdd_carrito[4, bdd_carrito.Rows.Count - 2].Value = abonar;

                        }
                    }
                    else
                    {

                    }

                }
            }
            existe = false;
            txt_codigo2.Text = "";

            txt_codigo2.Focus();
            //calcular();
            existe_producto = false;
            //calcular();
        }
コード例 #9
0
        public static void NuevoProducto2(Producto p)
        {
            //creo la conexion
            SqlConnection cnn = new SqlConnection(conexion);
            //abro la conexion
            cnn.Open();
            //Creo el comando sql a utlizar
            SqlCommand cmd = new SqlCommand("insert into producto(codigo, detalle, precio_unidad, iva, total,  stock,  stock_min,  margen, id_categoria, imagen, imagen_categoria) Values (@codigo, @detalle, @precio_unidad, @iva, @total,  @stock,  @stock_min, @margen, @id_categoria, @imagen, @imagen_categoria)");
            cmd.Parameters.Add(new SqlParameter("@codigo", p.Codigo));
            cmd.Parameters.Add(new SqlParameter("@detalle", p.Detalle));
            //   cmd.Parameters.Add(new SqlParameter("@cod_barra", p.Cod_barra));
            cmd.Parameters.Add(new SqlParameter("@precio_unidad", p.Precio_unidad));
            cmd.Parameters.Add(new SqlParameter("@iva", p.Iva));
            cmd.Parameters.Add(new SqlParameter("@total", p.Total));
            cmd.Parameters.Add(new SqlParameter("@stock", p.Stock));
            //   cmd.Parameters.Add(new SqlParameter("@n_serie", p.N_serie));
            cmd.Parameters.Add(new SqlParameter("@stock_min", p.Stock_min));
            cmd.Parameters.Add(new SqlParameter("@margen", p.Margen));
            cmd.Parameters.Add(new SqlParameter("@id_categoria", p.Cate.Id_categoria));
            cmd.Parameters.Add(new SqlParameter("@imagen", p.Imagen));
            cmd.Parameters.Add(new SqlParameter("@imagen_categoria", p.Imagen_categoria));
            //asigno la conexion al comando
            cmd.Connection = cnn;

            cmd.ExecuteNonQuery();
        }
コード例 #10
0
        public static void ModificarProducto(Producto p)
        {
            //creo la conexion
            SqlConnection cnn = new SqlConnection(conexion);
            //abro la conexion
            cnn.Open();
            //Creo el comando sql a utlizar
            SqlCommand cmd = new SqlCommand("update producto set codigo=@codigo, detalle=@detalle,  precio_unidad=@precio_unidad, iva=@iva, total=@total, margen=@margen, stock=@stock, stock_min=@stock_min, id_categoria=@id_categoria, imagen=@imagen, imagen_categoria=@imagen_categoria where id_producto = @id_producto");
            cmd.Parameters.Add(new SqlParameter("@codigo", p.Codigo));
            cmd.Parameters.Add(new SqlParameter("@detalle", p.Detalle));
            //   cmd.Parameters.Add(new SqlParameter("@cod_barra", p.Cod_barra));
            cmd.Parameters.Add(new SqlParameter("@precio_unidad", p.Precio_unidad));
            cmd.Parameters.Add(new SqlParameter("@iva", p.Iva));
            cmd.Parameters.Add(new SqlParameter("@total", p.Total));
            cmd.Parameters.Add(new SqlParameter("@stock", p.Stock));
            //   cmd.Parameters.Add(new SqlParameter("@n_serie", p.N_serie));
            cmd.Parameters.Add(new SqlParameter("@stock_min", p.Stock_min));
            cmd.Parameters.Add(new SqlParameter("@margen", p.Margen));
            cmd.Parameters.Add(new SqlParameter("@id_categoria", p.Cate.Id_categoria));
            cmd.Parameters.Add(new SqlParameter("@id_producto", p.Id_producto));
            cmd.Parameters.Add(new SqlParameter("@imagen", p.Imagen));
            cmd.Parameters.Add(new SqlParameter("@imagen_categoria", p.Imagen_categoria));
            cmd.Connection = cnn;

            cmd.ExecuteNonQuery();
        }
コード例 #11
0
        public static Producto getProducto_por_id(string codigo)
        {
            Producto p = new Producto();
            //creo la conexion
            SqlConnection cnn = new SqlConnection(conexion);
            //abro la conexion
            cnn.Open();
            //creo la lista para almacenar los productos
            ArrayList listaproductos = new ArrayList();
            //Creo el comando sql a utlizar
            SqlCommand cmd = new SqlCommand("select detalle, id_producto, stock from producto where codigo = @codigo ");

                cmd.Parameters.Add(new SqlParameter("@codigo", codigo));//asigno la conexion al comando
            cmd.Connection = cnn;
            //creo el datareader
            SqlDataReader obdr = cmd.ExecuteReader();
            //recorro el datareader
            while (obdr.Read())
            {

                p.Detalle = obdr.GetString(0);
                p.Id_producto = obdr.GetInt64(1);
                p.Stock = obdr.GetInt32(2);
            }
            //Cierro la conexion
            cnn.Close();
            //retorno la lsita
            return p;
        }
コード例 #12
0
        public void agregar(string codigo)
        {
            bool existe = false;

            for (int x = 0; x < listacarrito.Count; x++)
            {
                if (codigo == ((Producto)listacarrito[x]).Codigo)
                {

                    existe = true;
                    ((Producto)listacarrito[x]).Stock = Convert.ToInt32(txt_cantidad.Text) + ((Producto)listacarrito[x]).Stock;
                    bdd_carrito[2, x].Value = ((Producto)listacarrito[x]).Stock;
                    // bdd_print[0, x].Value = ((Producto)listacarrito[x]).Stock;
                    txt_cantidad.Text = "1";
                    try
                    {
                        if (((Producto)listacarrito[x]).Imagen_categoria == true)
                        {

                            pbox_imagen.Visible = true;
                            pbox_imagen.Image = Image.FromFile(((Producto)listacarrito[x]).Cate.Imagen);
                            label_imagen_no_disponible.Visible = false;
                        }
                        else
                        {
                            if (((Producto)listacarrito[x]).Imagen != " ")
                            {
                                pbox_imagen.Visible = true;
                                pbox_imagen.Image = Image.FromFile(((Producto)listacarrito[x]).Imagen);
                                label_imagen_no_disponible.Visible = false;
                            }
                            else
                            {
                                pbox_imagen.Visible = false;
                                label_imagen_no_disponible.Visible = true;
                            }

                        }
                    }
                    catch
                    {
                        pbox_imagen.Visible = false;
                        label_imagen_no_disponible.Visible = true;
                    }

                }
            }

            if (existe == false)
            {
                for (int i = 0; i < listaInicial.Count; i++)
                {
                    if (codigo == ((Producto)listaInicial[i]).Codigo)
                    {
                        Producto p = new Producto();
                        p = (Producto)listaInicial[i];
                        p.Stock = Convert.ToInt32(txt_cantidad.Text);
                        bdd_carrito.Rows.Add(p.Codigo, p.Detalle, p.Stock, p.Total);
                        //bdd_print.Rows.Add(p.Stock, p.Detalle, p.Total);
                        listacarrito.Add(p);
                        txt_cantidad.Text = "1";
                        try
                        {
                            if (p.Imagen_categoria == true)
                            {

                                pbox_imagen.Visible = true;
                                pbox_imagen.Image = Image.FromFile(p.Cate.Imagen);
                                label_imagen_no_disponible.Visible = false;
                            }
                            else
                            {
                                if (p.Imagen != " ")
                                {
                                    pbox_imagen.Visible = true;
                                    pbox_imagen.Image = Image.FromFile(p.Imagen);
                                    label_imagen_no_disponible.Visible = false;
                                }
                                else
                                {
                                    pbox_imagen.Visible = false;
                                    label_imagen_no_disponible.Visible = true;
                                }
                            }
                        }
                        catch
                        {
                            pbox_imagen.Visible = false;
                            label_imagen_no_disponible.Visible = true;
                        }
                    }
                }
            }
            existe = false;
            txt_codigo2.Text = "";

            txt_codigo2.Focus();
            bdd_carrito.FirstDisplayedCell = bdd_carrito.Rows[bdd_carrito.Rows.Count - 1].Cells[0];

            calcular();
        }
コード例 #13
0
 public Compra_Producto(Int64 id_compra_producto, Int64 id_compra, Int64 id_producto, decimal precio, Int32 cantidad, Producto pro)
 {
     this.id_compra_producto = id_compra_producto;
     this.id_compra          = id_compra;
     this.id_producto        = id_producto;
     this.precio             = precio;
     this.cantidad           = cantidad;
     this.pro = pro;
 }
コード例 #14
0
        //incializa la carga cuando le pasan el objeto producto y si es carga o no
        public Producto_Datos(object prod, bool carga)
        {
            InitializeComponent();
            //verifica si es no es una carga
            if (carga == false)
            {
                txt_cantidad.Enabled = true;

                //verifica si está es testmode
                if (Principal.test_mode == false)
                {
                    txt_cantidad.Visible = false;
                    label8.Visible = false;
                }

            } if (Principal.test_mode == true)
            {
                txt_stock.Visible = true;
                label6.Visible = true;
                txt_cantidad.ReadOnly = false;
                txt_minimo.Visible = true;
            }
            Cargarcategorias();
            this.pro = (Producto)prod;
            modificar = true;
            txt_codigo.Text = pro.Codigo;
            txt_descripcion.Text = pro.Detalle;
            txt_stock.Text = pro.Stock.ToString();
            txt_minimo.Text = pro.Stock_min.ToString();
            txt_precio_unidad.Text = pro.Precio_unidad.ToString();
            txt_iva.Text = pro.Iva.ToString();
            txt_margen_1.Text = pro.Margen.ToString();
            txt_total.Text = pro.Total.ToString();
            txt_ruta_imagen.Text = pro.Imagen;
            if (pro.Imagen != " ")
            {
                try
                {
                    pbox_imagen.Image = Image.FromFile(txt_ruta_imagen.Text);
                    label_imagen_no_disponible.Visible = false;
                }
                catch
                {
                    label_imagen_no_disponible.Visible = true;
                    pbox_imagen.Visible = false;
                }
            }
            chk_imagen_categoria.Checked = pro.Imagen_categoria;
            this.Text = "Modificar Producto";
            this.carga = carga;
            cbox_categoria.Text = pro.Cate.Nombre;
            txt_codigo.ReadOnly = true;
            txt_cantidad.Focus();
        }
コード例 #15
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();
                }
            }
        }
コード例 #16
0
 public Venta_Producto(Int64 id_venta_producto, Int64 id_venta, Int64 id_producto, decimal precio, Int32 cantidad, Producto pro)
 {
     this.id_venta_producto = id_venta_producto;
     this.id_venta          = id_venta;
     this.id_producto       = id_producto;
     this.precio            = precio;
     this.cantidad          = cantidad;
     this.pro = pro;
 }