public void GenerarCuotas( ) { var importeTotalItems = ImporteTotal; Cuotas.Empty( ); var primerVto = Vencimiento ?? Fecha; for (var c = 0; c < CantidadCuotas; c++) { Cuotas.Add(new ComprobanteCuota(Session) { Numero = c + 1, Importe = 0, Fecha = primerVto.AddMonths(c) }); } if (Cuotas.Count == 0) { return; } for (var c = 0; c < Cuotas.Count; c++) { var cuota = Cuotas[c]; cuota.Importe = c == 0 ? importeTotalItems : 0; } }
/// <summary> /// Vaciar el plan de plagos actual, y recrearlo, calculando las fechas e importes /// Depende de la Fecha de Emision y de CantidadCuotas /// </summary> public void GenerarCuotas() { if (EmitidaFecha == null) { return; } var importeTotalItems = ImporteTotal; Cuotas.Empty(); if (CantidadCuotas != 0) { var importeCuota = Math.Round(importeTotalItems / CantidadCuotas, 2); for (var c = 0; c < CantidadCuotas; c++) { Cuotas.Add(new DocumentoCuota(Session) { Numero = c + 1, Importe = importeCuota, Fecha = EmitidaFecha.Value.AddMonths(c) }); } //Agregar a la primer cuota, la diferencia con el total, por redondeo a dos decimales Cuotas[0].Importe += ImporteTotal - importeCuota * CantidadCuotas; } }