示例#1
0
        private void btn_facturar_Click(object sender, EventArgs e)
        {
            ControlReparaciones b = new ControlReparaciones();

            Modelo.Venta venta = new Modelo.Venta();
            venta.medio_de_pago = Convert.ToInt32(combo_medio_de_pago.SelectedValue);
            venta.tipo_factura  = Convert.ToString(combo_comprobante.SelectedValue);

            ControlVenta facturar = new ControlVenta();

            Modelo.Reparacion reparacion = new Modelo.Reparacion();

            reparacion.tipo_factura  = combo_comprobante.SelectedValue.ToString();
            reparacion.vencimiento   = llenarVencimiento();
            reparacion.medio_de_pago = Convert.ToInt32(combo_medio_de_pago.SelectedValue);

            if (txt_remito.Text.Trim() != "" || !string.IsNullOrEmpty(txt_remito.Text))
            {
                reparacion.remito = long.Parse(txt_remito.Text);
            }
            if (txt_ordenDeCompra.Text.Trim() != "" || !string.IsNullOrEmpty(txt_ordenDeCompra.Text))
            {
                reparacion.ordenDeCompra = txt_ordenDeCompra.Text;
            }


            reparacion.cobrada = llenarCobrada();



            try
            {
                Cursor.Current       = Cursors.WaitCursor;
                reparacion.documento = cliente.Documento;
                if (ControlReparaciones.FinalizarReparacion(id_reparacion, reparacion) == 1)
                {
                    venta.remito        = 0;
                    venta.ordendeCompra = "0";

                    if (txt_remito.Text.Trim() != "" || !string.IsNullOrEmpty(txt_remito.Text))
                    {
                        venta.remito = long.Parse(txt_remito.Text);
                    }
                    if (txt_ordenDeCompra.Text.Trim() != "" || !string.IsNullOrEmpty(txt_ordenDeCompra.Text))
                    {
                        venta.ordendeCompra = txt_ordenDeCompra.Text;
                    }

                    id_comprobante = facturar.FacturarReparacion(venta, cliente, dgv_tabla);

                    var task = Task.Factory.StartNew(() => b.ActualizarFacturaYUrl(id_comprobante, id_reparacion));
                    MessageBox.Show("Se realizó la venta correctamente, en unos instantes podrá acceder a la factura desde Listar Reparaciones.");
                    a.Close();
                    this.Close();
                }
            }
            catch (Exception ex) { Console.WriteLine(ex); }
            finally {
                Cursor.Current = Cursors.Default;
                a.Close();
                this.Close();
            }
        }