private void CargarServiciosCuotasViewModel( ServiciosCuotasViewModel viewModel, int p = 1, bool exp = false) { var items = ServicioCliente.ObtenerServiciosCuotas(Socio.NroCuenta); viewModel.CuotasPendientes = viewModel.CuotasImpagas = viewModel.CuotasPagas = 0; viewModel.TotalPagado = 0; if (items.Any()) { foreach (var item in items) { if (item.FechaPago.HasValue) { viewModel.CuotasPagas++; viewModel.TotalPagado += item.Total; } else { viewModel.CuotasImpagas++; } } var ultimaCuota = items.Last(); viewModel.CuotasPendientes = ultimaCuota.Plan - ultimaCuota.Cuota; } if (viewModel.Desde.HasValue) { items = items.Where(e => e.Fecha.Date >= viewModel.Desde.Value.Date); } if (viewModel.Hasta.HasValue) { items = items.Where(e => e.Fecha.Date <= viewModel.Hasta.Value.Date); } if (exp) { viewModel.Items = items.ToList(); } else { viewModel.CargarItemsYPaginacionDesdeListaCompletaDeItems(items.ToList(), p, CANT_ITEMS_POR_PAGINA); } }
public ActionResult ServiciosCuotas( string desde = null, string hasta = null, int p = 1, bool exp = false, string f = null) { var rangoFechas = new RangoFechas(desde, hasta); var viewModel = new ServiciosCuotasViewModel { Desde = rangoFechas.Desde, Hasta = rangoFechas.Hasta, }; if (ValidarRangoFechas(rangoFechas)) { CargarServiciosCuotasViewModel(viewModel, p, exp); } if (exp) { switch (f) { case Formato.ARCHIVO_FORMATO_PDF: return(ReportesPdfHelper.GenerarReporteServiciosCuotasPdfFileResult(viewModel.Items, viewModel.CuotasPendientes, viewModel.CuotasImpagas, viewModel.CuotasPagas, viewModel.TotalPagado)); case Formato.ARCHIVO_FORMATO_EXCEL: default: return(ReportesExcelHelper.GenerarActionResultExcelServiciosCuotas(viewModel.Items, viewModel.CuotasPendientes, viewModel.CuotasImpagas, viewModel.CuotasPagas, viewModel.TotalPagado)); } } else { return(View(viewModel)); } }