public void PagarAbonoSobrante(double sobrante) { if (sobrante > 0) { Cuota cuota2 = ListaCuota.Find(cuota => cuota.EstadoCuota == false); if (cuota2 != null) { double valor = cuota2.PagarCuota(sobrante); PagarAbonoSobrante(valor); } } }
public string RegistrarAbono(double valorAbonado) { if (CreditoPagado == false) { Cuota cuota = ListaCuota.Find(cuota => cuota.EstadoCuota == false); if (valorAbonado > 0 && valorAbonado <= SaldoAPagar) { if (valorAbonado >= cuota.ValorCuota) { double sobrante = cuota.PagarCuota(valorAbonado); PagarAbonoSobrante(sobrante); SaldoAPagar -= valorAbonado; if (SaldoAPagar == 0) { CreditoPagado = true; } Abono abono = new Abono(valorAbonado); ListaAbonos.Add(abono); return("Valor del abono Correcto Abono registrado"); } else { return("Valor del abono incorrecto"); } } else { return("Valor del abono incorrecto"); } } else { return("Credito Pagado"); } }