示例#1
0
        private void btnGuardarComprobante_Click(object sender, EventArgs e)
        {
            if (String.IsNullOrEmpty(txtNombreCliente.Text))
            {
                txtNombreCliente.Text = " ";
            }
            if (String.IsNullOrEmpty(txtxDniCliente.Text))
            {
                txtxDniCliente.Text = "1";
            }
            if (String.IsNullOrEmpty(txtDireccionCliente.Text))
            {
                txtDireccionCliente.Text = " ";
            }
            if (txtCorreo.Text.Equals("@") || String.IsNullOrEmpty(txtCorreo.Text))
            {
                txtCorreo.Text = " ";
            }
            if (lineasDeVenta.Count == 0)
            {
                MessageBox.Show("No hay productos seleccionados", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                DialogResult dialogResult = MessageBox.Show("¿Desea registrar la Venta?", "Guardar Comprobante", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

                if (dialogResult == DialogResult.Yes)
                {
                    comprobanteDePago.Nombre    = txtNombreCliente.Text;
                    comprobanteDePago.Direccion = txtDireccionCliente.Text;
                    comprobanteDePago.Dni       = long.Parse(txtxDniCliente.Text);
                    comprobanteDePago.Fecha     = dtpFecha.Value;

                    administracionDatos.guardarComprobanteDePago(comprobanteDePago);

                    ComprobanteDePago comprobanteDePagoGuardado = administracionDatos.obtenerComprobanteDePagoGuardado();

                    foreach (LineaDeVenta lineaDeVenta in comprobanteDePago.LineasDeVenta)
                    {
                        lineaDeVenta.ComprobanteDePago = comprobanteDePagoGuardado;
                        administracionDatos.guardarLineaDeVenta(lineaDeVenta);
                        lineaDeVenta.Producto.Stock = lineaDeVenta.Producto.Stock - lineaDeVenta.Cantidad;
                        Console.WriteLine("El nuevo stock es : " + lineaDeVenta.Producto.Stock);
                        administracionDatos.disminuirStock(lineaDeVenta.Producto);
                    }
                    MessageBox.Show("El Comprobante ha sido guardado correctamente", "Guardar Comprobante", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    comprobanteDePago = new ComprobanteDePago();
                    lineasDeVenta     = new List <LineaDeVenta>();
                    listarLineasDeVenta();
                    txtDireccionCliente.Text = "";
                    txtNombreCliente.Text    = "";
                    txtxDniCliente.Text      = "";
                    txtCorreo.Text           = "@";
                    lblIgv.Text         = "0.0";
                    lblPrecioNeto.Text  = "0.0";
                    lblPrecioTotal.Text = "0.0";
                    lblVuelto.Text      = "0.0";
                }
            }
        }