Beispiel #1
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            string rutaPdf = ConfigurationManager.AppSettings.Get("nota");

            if (validarCajas())
            {
                if (lblNombre.Text.Trim() == string.Empty)
                {
                    MessageBox.Show("¡Algo anda mal!, Indicanos quien es tu cliente", "Ventas", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                else
                {
                    if (dgvFactura.Rows.Count < 1)
                    {
                        MessageBox.Show("¡Espera!, aún no has agregado productos", "Ventas", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else
                    {
                        eliminarCotizaciones();
                        txtFolio.Text = serie.seleccionarFOLIO(Convert.ToInt32(txtSerie.SelectedValue)).ToString();
                        metodos_VENTA.insertarVENTA(0, idCliente, DateTime.Now, Convert.ToDouble(lblSubTotal.Text), Convert.ToDouble(lblIVA.Text), Convert.ToDouble(lblTotDesc.Text), Convert.ToDouble(lblTotal.Text), tipoVenta, txtMetodoPago.Text, cmbCondPago.Text, txtFormaPago.Text, lblRFC.Text.Trim(), txtSerie.SelectedValue.ToString(), txtFolio.Text, metodos_PRODUCTOS.seleccionarTipoCambio(), txtComentarios.Text);
                        guardarDetalle();
                        serie.actualizarFOLIO(Convert.ToInt32(txtSerie.SelectedValue), Convert.ToInt32(txtFolio.Text));

                        if (rdbFactura.Checked)
                        {
                            if (generarFactura())
                            {
                                Int32 folioUltimo = metodos_VENTA.ultimoIdVenta();
                                rutaPdf = ConfigurationManager.AppSettings.Get("rutafactura");
                                System.Diagnostics.Process.Start(rutaPdf + folioUltimo);

                                frmMail mail = new frmMail(ConfigurationManager.AppSettings["rutaXML"] + lblNombre.Text.Trim() + "\\" + txtSerie.Text + txtFolio.Text + ".xml", lblRFC.Text.Trim() + "_" + txtSerie.Text + "_" + folioUltimo, e_mail);
                                mail.ShowDialog();
                            }
                            reiniciarControles();
                        }
                        else
                        {
                            if (rdbNota.Checked)
                            {
                                rutaPdf = ConfigurationManager.AppSettings.Get("nota");
                            }
                            else if (rdbPresupuesto.Checked)
                            {
                                rutaPdf = ConfigurationManager.AppSettings.Get("presupuesto");
                            }
                            System.Diagnostics.Process.Start(rutaPdf + metodos_VENTA.ultimoIdVenta());
                            serie.actualizarFOLIO(Convert.ToInt32(txtSerie.SelectedValue), Convert.ToInt32(txtFolio.Text));
                            txtFolio.Text = serie.seleccionarFOLIO(Convert.ToInt32(txtSerie.SelectedValue)).ToString();
                            reiniciarControles();
                        }
                        txtFolio.Text = serie.seleccionarFOLIO(Convert.ToInt32(txtSerie.SelectedValue)).ToString();
                    }
                }
            }
        }
        private void dgvFactura_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            var senderGrid = (DataGridView)sender;

            if (senderGrid.Columns[e.ColumnIndex] is DataGridViewButtonColumn &&
                e.RowIndex >= 0)
            {
                if (dgvFactura[e.ColumnIndex, e.RowIndex].Value == "PDF")
                {
                    System.Diagnostics.Process.Start(ConfigurationManager.AppSettings.Get("rutafactura") + dgvFactura[0, e.RowIndex].Value.ToString());
                }
                if (dgvFactura[e.ColumnIndex, e.RowIndex].Value == "Facturar")
                {
                    if (MessageBox.Show("Facturar " + dgvFactura[0, e.RowIndex].Value, "Confirmación", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        factura factura = new factura();
                        string  msg     = factura.Nueva(dgvFactura[0, e.RowIndex].Value.ToString());
                        MessageBox.Show(msg, "Generar Factura", MessageBoxButtons.OK, MessageBoxIcon.Information);

                        if (!msg.Contains("Error"))
                        {
                            System.Diagnostics.Process.Start(ConfigurationManager.AppSettings.Get("rutafactura") + dgvFactura[0, e.RowIndex].Value.ToString());
                        }
                        getFacturas(dateDesde.Value, dateHasta.Value, txtRFC.Text.Trim());
                    }
                }
                else if (dgvFactura[e.ColumnIndex, e.RowIndex].Value == "Cancelar")
                {
                    if (MessageBox.Show("¿Esta seguro de cancelar La factura  " + dgvFactura[0, e.RowIndex].Value + " con folio fiscal " + dgvFactura[9, e.RowIndex].Value + "?", "Cancelar Factura", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        cancelar(dgvFactura[11, e.RowIndex].Value.ToString());
                        MessageBox.Show("La factura  " + dgvFactura[0, e.RowIndex].Value + " con folio fiscal " + dgvFactura[11, e.RowIndex].Value + " fue cancelada con éxito", "Exito", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        getFacturas(dateDesde.Value, dateHasta.Value, txtRFC.Text.Trim());
                    }
                }
                else if (dgvFactura[e.ColumnIndex, e.RowIndex].Value == "Enviar")
                {
                    string folioConsultar = dgvFactura[0, e.RowIndex].Value.ToString();
                    VENTA  v = metodos_VENTA.seleccionarVENTA(folioConsultar);

                    List <CLIENTES> clientes = metodos_CLIENTES.seleccionarCLIENTES(dgvFactura[3, e.RowIndex].Value.ToString());
                    if (!Directory.Exists(ConfigurationManager.AppSettings["rutaXML"] + "\\temporal\\"))
                    {
                        Directory.CreateDirectory(ConfigurationManager.AppSettings["rutaXML"] + "\\temporal\\");
                    }
                    string ruta_xml = ConfigurationManager.AppSettings["rutaXML"] + "temporal\\" + clientes[0].rfc + "_" + v.uuid + ".xml";
                    File.WriteAllText(ruta_xml, v.xml);
                    frmMail mail = new frmMail(ruta_xml, dgvFactura[3, e.RowIndex].Value.ToString() + "_" + dgvFactura[1, e.RowIndex].Value.ToString() + "_" + dgvFactura[0, e.RowIndex].Value.ToString(), clientes[0].email);
                    mail.ShowDialog();
                }
            }
        }