示例#1
0
        private void metroButtonConfirmar_Click(object sender, EventArgs e)
        {
            try
            {
                ProveedorManager prov = new ProveedorManager();

                //textBoxImportePago.Text.Replace(".",".");
                //textBoxIIBB.Text.Replace(",",".");
                //textBoxRetenciones.Text.Replace(".",",");
                if (string.IsNullOrEmpty(metroTextBoxPuntoV.Text) || string.IsNullOrEmpty(metroTextBoxNoFactura.Text) || metroGridProductosServicios.Rows.Count == 0)
                {
                    MessageBox.Show("Error, No posee ningun comprobante para Confirmar", "Sistema de Gestion de Compras", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    if ((int)metroComboBoxCondicionCompra.SelectedValue == 1)
                    {
                        ComprobantesManager c = new ComprobantesManager();
                        PagosManager        p = new PagosManager();

                        double iibb        = Convert.ToDouble(metroTextBoxIIBB.Text.Replace(".", ","));
                        double retenciones = Convert.ToDouble(metroTextBoxRetenciones.Text.Replace(".", ","));
                        double otrosgastos = Convert.ToDouble(metroTextBoxOtrosGastos.Text.Replace(".", ","));
                        double roundednum  = Convert.ToDouble(metroTextBoxImporte.Text.Replace(".", ","));
                        double retiva1     = Convert.ToDouble(metroTextBoxPercepcion.Text.Replace(".", ","));

                        c.ActualizarImporteComprobante(c.DevolverIDporNoFactura(metroTextBoxPuntoV.Text, metroTextBoxNoFactura.Text, prov.DevolverIdPRoveedorporNombre(metroTextBoxProveedor.Text)));
                        c.ActualizarEstado(c.DevolverIDporNoFactura(metroTextBoxPuntoV.Text, metroTextBoxNoFactura.Text, prov.DevolverIdPRoveedorporNombre(metroTextBoxProveedor.Text)), 1);
                        c.ActualizarOtrosGastosComprobante(c.DevolverIDporNoFactura(metroTextBoxPuntoV.Text, metroTextBoxNoFactura.Text, prov.DevolverIdPRoveedorporNombre(metroTextBoxProveedor.Text)), Math.Round(iibb, 2), Math.Round(retenciones, 2), Math.Round(otrosgastos, 2), Math.Round(retiva1, 2));

                        //insertar un pago en efectivo



                        int idpago = p.InsertarPagoContado(metroDateTimeFecha.Value, metroTextBoxConceptoPago.Text, Math.Round(roundednum, 2));

                        p.InsertarDetallePago(idpago, c.DevolverIDporNoFactura(metroTextBoxPuntoV.Text, metroTextBoxNoFactura.Text, prov.DevolverIdPRoveedorporNombre(metroTextBoxProveedor.Text)));

                        p.InsertarMediosPagoContado(int.Parse(metroComboBoxMedioPago.SelectedValue.ToString()), Math.Round(roundednum, 2), idpago);

                        MessageBox.Show("Se Actualizaron todos los Datos del Comprobante con el pago", "Sistema de Gestion de Compras", MessageBoxButtons.OK, MessageBoxIcon.Information);

                        metroTextBoxPuntoV.Clear();
                        metroTextBoxNoFactura.Clear();
                        metroTextBoxConceptoPago.Clear();
                        metroTextBoxPercepcion.Clear();
                        metroTextBoxIIBB.Clear();
                        metroTextBoxRetenciones.Clear();
                        metroTextBoxImporte.Clear();
                        metroTextBoxIIBB.Text        = "00,00";
                        metroTextBoxRetenciones.Text = "00,00";
                        metroTextBoxOtrosGastos.Text = "00,00";
                        metroTextBoxImporte.Text     = "00,00";
                        metroTextBoxPercepcion.Text  = "00,00";

                        metroGridProductosServicios.DataSource = null;
                        metroTextBoxProveedor.Enabled          = true;
                        metroTextBoxPuntoV.Enabled             = true;
                        metroTextBoxNoFactura.Enabled          = true;
                        metroComboBoxCondicionCompra.Enabled   = true;
                        metroComboBoxTipoComprobante.Enabled   = true;
                        metroComboBoxContable.Enabled          = true;
                        metroComboBoxCentroCosto.Enabled       = true;

                        metroComboBoxTipoFactura.Enabled = true;
                        metroDateTimeFecha.Enabled       = true;
                        metroDateTimeVencimiento.Enabled = true;
                        metroPanelProducto.Enabled       = false;
                        metroPanelPago.Enabled           = false;
                        metroPanelGastos.Enabled         = false;
                    }
                    if ((int)metroComboBoxCondicionCompra.SelectedValue == 2)
                    {
                        ComprobantesManager c = new ComprobantesManager();
                        double iibb           = Convert.ToDouble(metroTextBoxIIBB.Text.Replace(".", ","));
                        double retenciones    = Convert.ToDouble(metroTextBoxRetenciones.Text.Replace(".", ","));
                        double otrosgastos    = Convert.ToDouble(metroTextBoxOtrosGastos.Text.Replace(".", ","));
                        double roundednum     = Convert.ToDouble(metroTextBoxImporte.Text.Replace(".", ","));
                        double retiva1        = Convert.ToDouble(metroTextBoxPercepcion.Text.Replace(".", ","));

                        c.ActualizarImporteComprobante(c.DevolverIDporNoFactura(metroTextBoxPuntoV.Text, metroTextBoxNoFactura.Text, prov.DevolverIdPRoveedorporNombre(metroTextBoxProveedor.Text)));
                        c.ActualizarEstado(c.DevolverIDporNoFactura(metroTextBoxPuntoV.Text, metroTextBoxNoFactura.Text, prov.DevolverIdPRoveedorporNombre(metroTextBoxProveedor.Text)), 2);
                        c.ActualizarOtrosGastosComprobante(c.DevolverIDporNoFactura(metroTextBoxPuntoV.Text, metroTextBoxNoFactura.Text, prov.DevolverIdPRoveedorporNombre(metroTextBoxProveedor.Text)), Math.Round(iibb, 2), Math.Round(retenciones, 2), Math.Round(otrosgastos, 2), Math.Round(retiva1, 2));

                        //Como es condicion de compra cuenta corriente no se ingresa ningun pago
                        MessageBox.Show("Insertado con exito", "Sistema de Gestion de Compras", MessageBoxButtons.OK, MessageBoxIcon.Information);



                        metroTextBoxPuntoV.Clear();
                        metroTextBoxNoFactura.Clear();
                        metroTextBoxPercepcion.Clear();
                        metroTextBoxIIBB.Clear();
                        metroTextBoxRetenciones.Clear();
                        metroTextBoxImporte.Clear();
                        metroTextBoxOtrosGastos.Clear();

                        metroTextBoxIIBB.Text        = "00,00";
                        metroTextBoxRetenciones.Text = "00,00";
                        metroTextBoxOtrosGastos.Text = "00,00";
                        metroTextBoxPercepcion.Text  = "00,00";
                        metroTextBoxImporte.Text     = "00,00";

                        metroGridProductosServicios.DataSource = null;
                        metroTextBoxProveedor.Enabled          = true;
                        metroTextBoxPuntoV.Enabled             = true;
                        metroTextBoxNoFactura.Enabled          = true;
                        metroComboBoxCondicionCompra.Enabled   = true;
                        metroComboBoxTipoComprobante.Enabled   = true;
                        metroComboBoxContable.Enabled          = true;
                        metroComboBoxCentroCosto.Enabled       = true;

                        metroComboBoxTipoFactura.Enabled = true;
                        metroDateTimeFecha.Enabled       = true;
                        metroDateTimeVencimiento.Enabled = true;
                        metroPanelProducto.Enabled       = false;
                        metroPanelPago.Enabled           = false;
                        metroPanelGastos.Enabled         = false;
                    }
                    else
                    {
                        //if (metroComboBoxCondicionCompra.SelectedValue.ToString() == "2")
                        //{
                        //    ComprobantesManager c = new ComprobantesManager();
                        //    Double iibb = Math.Round(Convert.ToDouble(metroTextBoxIIBB.Text.Replace(".", ",")), 2);
                        //    Double retenciones = Math.Round(Convert.ToDouble(metroTextBoxRetenciones.Text.Replace(".", ",")), 2);
                        //    Double otrosgastos = Math.Round(Convert.ToDouble(metroTextBoxOtrosGastos.Text.Replace(".", ",")), 2);
                        //    double ivaRet = Math.Round(Convert.ToDouble(metroTextBoxIva.Text.Replace(".", ",")), 2);

                        //    c.ActualizarImporteComprobante(c.DevolverIDporNoFactura(metroTextBoxPuntoV.Text, metroTextBoxNoFactura.Text, prov.DevolverIdPRoveedorporNombre(metroTextBoxProveedor.Text)));
                        //    c.ActualizarEstado(c.DevolverIDporNoFactura(metroTextBoxPuntoV.Text, metroTextBoxNoFactura.Text, prov.DevolverIdPRoveedorporNombre(metroTextBoxProveedor.Text)), 2);
                        //    c.ActualizarOtrosGastosComprobante(c.DevolverIDporNoFactura(metroTextBoxPuntoV.Text, metroTextBoxNoFactura.Text, prov.DevolverIdPRoveedorporNombre(metroTextBoxProveedor.Text)), iibb, retenciones, otrosgastos, ivaRet);

                        //    //Como es condicion de compra cuenta corriente no se ingresa ningun pago



                        //    metroTextBoxPuntoV.Clear();
                        //    metroTextBoxNoFactura.Clear();
                        //    metroTextBoxPercepcion.Clear();
                        //    metroTextBoxIIBB.Clear();
                        //    metroTextBoxRetenciones.Clear();
                        //    metroTextBoxImporte.Clear();
                        //    metroTextBoxOtrosGastos.Clear();

                        //    metroTextBoxIIBB.Text = "00,00";
                        //    metroTextBoxRetenciones.Text = "00,00";
                        //    metroTextBoxOtrosGastos.Text = "00,00";
                        //    metroTextBoxPercepcion.Text = "00,00";
                        //    metroTextBoxImporte.Text = "00,00";

                        //    metroGridProductosServicios.DataSource = null;
                        //    metroTextBoxProveedor.Enabled = true;
                        //    metroTextBoxPuntoV.Enabled = true;
                        //    metroTextBoxNoFactura.Enabled = true;
                        //    metroComboBoxCondicionCompra.Enabled = true;
                        //    metroComboBoxTipoComprobante.Enabled = true;
                        //    metroComboBoxContable.Enabled = true;
                        //    metroComboBoxCentroCosto.Enabled = true;

                        //    metroComboBoxTipoFactura.Enabled = true;
                        //    metroDateTimeFecha.Enabled = true;
                        //    metroDateTimeVencimiento.Enabled = true;


                        //}
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
        }