Exemplo n.º 1
0
        private void button1_Click(object sender, EventArgs e)
        {
            decimal total = decimal.Parse(txtpago.Text);
            FCobro  f     = new FCobro(total);

            f.ShowDialog();

            if (f.DialogResult == DialogResult.OK)
            {
                int      documento = 1, correlativo = ObtenerCorrelativo();
                DateTime fecha = DateTime.Now;

                CCuota cCuota = new CCuota();
                Cuotas cuota  = this.cuota;

                if (soloACapital)
                {
                    //averiguando la cuota anterior
                    Cuotas c1 = new Cuotas();
                    c1 = cCuota.CuotaAnterior(cuota.IdCuota);

                    if (c1 != null)
                    {
                        cuota = c1;
                    }
                }



                Pagos pago = new Pagos();
                pago.IdCuota_FK       = cuota.IdCuota;
                pago.FechaPago        = fecha;
                pago.Correlativo      = correlativo;
                pago.IdCorrelativo_FK = 1;
                pago.Recibido         = f.recibe;
                pago.Cambio           = f.cambio;
                pago.Monto            = total;
                pago.AMora            = mora;
                pago.ACapital         = decimal.Parse(txtacapital.Text);
                pago.AIntereses       = decimal.Parse(txtaintereses.Text);
                pago.ACApitalExtra    = decimal.Parse(txtcapitalextra.Text);
                pago.CapitalRestante  = decimal.Parse(txtcapitaldespues.Text);
                if (otrafecha.Checked)
                {
                    pago.FechaPago = dateTimePickerFechaPago.Value;
                }

                cuota.CapitalPendiente = pago.CapitalRestante;

                if (pago.Monto >= cuota.Monto && soloACapital == false)
                {
                    cuota.FechaDePago = pago.FechaPago;
                    cuota.Cancelada   = 1;
                }


                if (soloACapital == false)
                {
                    cuota.mora             = pago.AMora;
                    cuota.AIntereses       = pago.AIntereses;
                    cuota.ACapital         = pago.ACapital;
                    cuota.ACapitalExtra    = pago.ACApitalExtra;
                    cuota.CapitalPendiente = pago.CapitalRestante;
                    cuota.Intereses        = cuota.Intereses - cuota.AIntereses;
                    cuota.Capital          = cuota.Capital - cuota.ACapital;
                    cuota.Monto            = cuota.Intereses + cuota.Capital;
                }
                else
                {
                    cuota.ACapitalExtra = pago.ACApitalExtra;
                }



                CPagos cPagos = new CPagos();
                cPagos.Insertar(pago);
                int        si         = cCuota.Insertar(cuota);
                CContratos cContratos = new CContratos();
                con        contrato   = new con();
                contrato          = cContratos.uno(cuota.IdContrato_FK);
                contrato.Restante = pago.CapitalRestante;
                cContratos.ActualizarRestante(contrato);

                MessageBox.Show("Pago realizado con éxito");
                try
                {
                    if (!checkBoxNoTicket.Checked)
                    {
                        imprimirTicket(pago);
                    }
                }
                catch (Exception)
                {
                }

                this.Close();
            }
        }