Ejemplo n.º 1
0
        private void PuntoVenta_KeyUp(object sender, KeyEventArgs e)
        {
            if (Convert.ToInt32(e.KeyData) == Convert.ToInt32(Keys.Control) + Convert.ToInt32(Keys.D))
            {
                if (listView1.SelectedItems.Count > 0)
                {
                    ListViewItem item      = listView1.SelectedItems[0];
                    int          resultado = Venta.Quitar_Producto_Venta_Proceso(Convert.ToInt64(listView1.SelectedItems[0].Text));
                    if (resultado > 0)
                    {
                        MessageBox.Show("Producto Eliminado Correctamente", "Producto Eliminado", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        double resra = Convert.ToDouble(txtTotal.Text);
                        resra         = resra - Convert.ToDouble(item.SubItems[6].Text);
                        txtTotal.Text = resra.ToString();
                        listView1.Items.Clear();
                        //Cargar productos de tabla de venta temporal
                        MySqlConnection  conexion2 = Conexion.MiConexion();
                        MySqlDataAdapter Consulta  = new MySqlDataAdapter("Select * from Venta_Proceso", conexion2);
                        DataTable        dt        = new DataTable();
                        Consulta.Fill(dt);
                        for (int i = 0; i < dt.Rows.Count; i++)
                        {
                            ListViewItem List;
                            List = listView1.Items.Add(dt.Rows[i][0].ToString());
                            List.SubItems.Add(dt.Rows[i][1].ToString());
                            List.SubItems.Add(dt.Rows[i][2].ToString());
                            List.SubItems.Add(dt.Rows[i][3].ToString());
                            List.SubItems.Add(dt.Rows[i][4].ToString());
                            List.SubItems.Add(dt.Rows[i][5].ToString());
                            List.SubItems.Add(dt.Rows[i][6].ToString());
                        }
                        txtProducto.Focus();
                    }

                    else
                    {
                        MessageBox.Show("No se pudo Eliminar el Producto", "Ocurrio un error!!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    }
                }
                else
                {
                    MessageBox.Show("Error al retirar el producto, verifique que haya seleccionado un producto");
                }
            }
            if (Convert.ToInt32(e.KeyData) == Convert.ToInt32(Keys.Add))
            {
                if (txtPagoCon.Text.Length == 0)
                {
                    MessageBox.Show("Error en campo pagon con", "Campo Obligatorio, verifique", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    txtPagoCon.Focus();
                    return;
                }
                else if (Convert.ToDouble(txtPagoCon.Text) < Convert.ToDouble(txtTotal.Text))
                {
                    MessageBox.Show("El campo de pago con debe ser mayor o igual al total", "Error en campo pago con, verifique", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    txtPagoCon.Focus();
                    return;
                }

                //guardar venta
                Pro_Venta Pro_Venta = new Pro_Venta();
                Pro_Venta.Cliente = txtCliente.Text;
                Pro_Venta.Total   = Convert.ToDouble(txtTotal.Text);
                Pro_Venta.PagoCon = Convert.ToDouble(txtPagoCon.Text);

                //sacar cambio
                double total = double.Parse(txtPagoCon.Text) - double.Parse(txtTotal.Text);
                txtCambio.Text   = total.ToString();
                Pro_Venta.Cambio = Convert.ToDouble(txtCambio.Text);

                int resultado = Venta.AgregarVenta(Pro_Venta);

                if (resultado > 0)
                {
                    //MessageBox.Show("Datos Guardados Correctamente", "Datos Guardado", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    //limpiar();
                }
                else
                {
                    MessageBox.Show("No se pudieron Guardar lo datos", "Error al Guardar", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }

                //guardar detalle de las ventas
                for (int i = 0; i < listView1.Items.Count; i++)
                {
                    Pro_Venta.Codigo   = Convert.ToInt64(listView1.Items[i].SubItems[0].Text);
                    Pro_Venta.Cantidad = Convert.ToDouble(listView1.Items[i].SubItems[5].Text);
                    Pro_Venta.Precio   = Convert.ToDouble(listView1.Items[i].SubItems[4].Text);
                    Venta.AgregarDetalleVenta(Pro_Venta);
                }

                if (checkBox1.Checked)
                {
                    //generar ticket

                    Ticket ticket = new Ticket();
                    //ticket.HeaderImage = "C:\imagen.jpg"; //esta propiedad no es obligatoria
                    ticket.AddHeaderLine("Ferreteria y Materiales");
                    ticket.AddHeaderLine("Del Rio");
                    ticket.AddHeaderLine("Villa Toledo #2719");
                    ticket.AddHeaderLine("Culiacan, Sin");
                    ticket.AddHeaderLine("RFC: VILA-841113-3R4");
                    //ticket.AddSubHeaderLine("Ticket # 1");
                    ticket.AddSubHeaderLine(DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString());

                    for (int i = 0; i < listView1.Items.Count; i++)
                    {
                        //ticket.AddItem(FormPadre.listView1.Items[4].Text, FormPadre.listView1.Items[1].Text, FormPadre.listView1.Items[5].Text);
                        ticket.AddItem(listView1.Items[i].SubItems[5].Text, listView1.Items[i].SubItems[1].Text, listView1.Items[i].SubItems[6].Text);
                    }
                    //ticket.AddTotal("SubTotal", txtSubTotal.Text);
                    //ticket.AddTotal("IVA", txtIVA.Text);
                    //Add total utiliza dos variables para poder funcionar
                    ticket.AddTotal("Total", txtTotal.Text); //Ponemos un total en blanco que sirve de espacio
                    ticket.AddTotal("Pago Con", txtPagoCon.Text);
                    ticket.AddTotal("Cambio", txtCambio.Text);
                    //ticket.AddHeaderLine("Le atendio", tssUsuarioVenta.Text);
                    ticket.AddFooterLine("GRACIAS POR TU VISITA");
                    //ticket.PrintTicket("Printer");
                    ticket.PrintTicket("EPSON TM-U220 Receipt");
                }
            }
        }
Ejemplo n.º 2
0
        private void btnAgregarPago_Click(object sender, EventArgs e)
        {
            if (txtPagoCon.Text.Length == 0)
            {
                MessageBox.Show("Error en campo pagon con", "Campo Obligatorio, verifique", MessageBoxButtons.OK, MessageBoxIcon.Error);
                txtPagoCon.Focus();
                return;
            }
            else if (Convert.ToDouble(txtPagoCon.Text) < Convert.ToDouble(txtTotal.Text))
            {
                MessageBox.Show("El campo de pago con debe ser mayor o igual al total", "Error en campo pago con, verifique", MessageBoxButtons.OK, MessageBoxIcon.Error);
                txtPagoCon.Focus();
                return;
            }

            //guardar venta
            Pro_Venta Pro_Venta = new Pro_Venta();

            Pro_Venta.Cliente = txtCliente.Text;
            Pro_Venta.Total   = Convert.ToDouble(txtTotal.Text);
            Pro_Venta.PagoCon = Convert.ToDouble(txtPagoCon.Text);

            //sacar cambio
            double total = double.Parse(txtPagoCon.Text) - double.Parse(txtTotal.Text);

            txtCambio.Text   = total.ToString();
            Pro_Venta.Cambio = Convert.ToDouble(txtCambio.Text);

            int resultado = Venta.AgregarVenta(Pro_Venta);

            if (resultado > 0)
            {
                //MessageBox.Show("Datos Guardados Correctamente", "Datos Guardado", MessageBoxButtons.OK, MessageBoxIcon.Information);
                //limpiar();
            }
            else
            {
                MessageBox.Show("No se pudieron Guardar lo datos", "Error al Guardar", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }

            //guardar detalle de las ventas
            for (int i = 0; i < listView1.Items.Count; i++)
            {
                Pro_Venta.Codigo   = Convert.ToInt64(listView1.Items[i].SubItems[0].Text);
                Pro_Venta.Cantidad = Convert.ToDouble(listView1.Items[i].SubItems[5].Text);
                Pro_Venta.Precio   = Convert.ToDouble(listView1.Items[i].SubItems[4].Text);
                Venta.AgregarDetalleVenta(Pro_Venta);

                //Modificar Stock
                MySqlConnection conexion = Conexion.MiConexion();
                string          ada      = "Select Stock from Productos where Codigo='" + listView1.Items[i].SubItems[0].Text + "';";
                MySqlCommand    comando  = new MySqlCommand(ada, conexion);
                MySqlDataReader leer     = comando.ExecuteReader();
                if (leer.Read() == true)
                {
                    double        cantidad      = 0;
                    Pro_Productos Pro_Productos = new Pro_Productos();
                    double        stock         = Convert.ToDouble(leer["Stock"].ToString());
                    cantidad = Convert.ToDouble(listView1.Items[i].SubItems[5].Text);
                    double stock_control = double.Parse(stock.ToString()) - cantidad;
                    Pro_Productos.Codigo = Convert.ToInt64(listView1.Items[i].SubItems[0].Text);
                    Pro_Productos.Stock  = Convert.ToDouble(stock_control);
                    Met_Productos.Modificar_Stock(Pro_Productos);
                }
            }

            if (checkBox1.Checked)
            {
                //generar ticket

                Ticket ticket = new Ticket();
                //ticket.HeaderImage = "C:\imagen.jpg"; //esta propiedad no es obligatoria
                ticket.AddHeaderLine("Ferreteria y Materiales");
                ticket.AddHeaderLine("Del Rio");
                ticket.AddHeaderLine("Villa Toledo #2719");
                ticket.AddHeaderLine("Culiacan, Sin");
                ticket.AddHeaderLine("RFC: VILA-841113-3R4");
                //ticket.AddSubHeaderLine("Ticket # 1");
                ticket.AddSubHeaderLine(DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString());

                for (int i = 0; i < listView1.Items.Count; i++)
                {
                    //ticket.AddItem(FormPadre.listView1.Items[4].Text, FormPadre.listView1.Items[1].Text, FormPadre.listView1.Items[5].Text);
                    ticket.AddItem(listView1.Items[i].SubItems[5].Text, listView1.Items[i].SubItems[1].Text, listView1.Items[i].SubItems[6].Text);
                }
                //ticket.AddTotal("SubTotal", txtSubTotal.Text);
                //ticket.AddTotal("IVA", txtIVA.Text);
                //Add total utiliza dos variables para poder funcionar
                ticket.AddTotal("Total", txtTotal.Text); //Ponemos un total en blanco que sirve de espacio
                ticket.AddTotal("Pago Con", txtPagoCon.Text);
                ticket.AddTotal("Cambio", txtCambio.Text);
                //ticket.AddHeaderLine("Le atendio", tssUsuarioVenta.Text);
                ticket.AddFooterLine("GRACIAS POR TU VISITA");
                //ticket.PrintTicket("Printer");
                ticket.PrintTicket("EPSON TM-U220 Receipt");
            }
        }