public ActionResult GenerarGastoPorCategoria(ReporteGastoPorCategoriaFiltrosModel model) { DateTime?hasta = model.Hasta == null ? (DateTime?)null : model.Hasta.GetValueOrDefault().AddDays(1); var reporteFactory = new ReporteFactory(); var categoria = Uow.CategoriasCostos.Obtener(r => r.CategoriaCostoId == model.CategoriaId); var categoriaDescripcion = categoria != null ? categoria.Descripcion : TodosText; var subcategoria = Uow.CategoriasCostos.Obtener(r => r.CategoriaCostoId == model.SubCategoriaId); var subcategoriaDescripcion = subcategoria != null ? subcategoria.Descripcion : TodosText; var maxikiosco = Uow.MaxiKioscos.Obtener(r => r.MaxiKioscoId == model.MaxikioscoId); var maxikioscoDescripcion = maxikiosco != null ? maxikiosco.Nombre : TodosText; var parameters = new Dictionary <string, string> { { "MaxikioscoId", model.MaxikioscoId.GetValueOrDefault().ToString() }, { "CategoriaCostoId", model.CategoriaId.GetValueOrDefault().ToString() }, { "SubCategoriaCostoId", model.SubCategoriaId.GetValueOrDefault().ToString() }, { "Categoria", categoriaDescripcion }, { "SubCategoria", subcategoriaDescripcion }, { "Maxikiosco", maxikioscoDescripcion }, { "Desde", model.Desde == null ? "-" : model.Desde.GetValueOrDefault().ToShortDateString() }, { "Hasta", model.Hasta == null ? "-" : model.Hasta.GetValueOrDefault().ToShortDateString() } }; if (model.MostrarTotalGeneral) { var gastosPorCategoriaTotalGeneralDataSource = Uow.Reportes.GastosPorCategoriaTotalGeneral(model.Desde, hasta, model.MaxikioscoId, model.CategoriaId, model.SubCategoriaId); reporteFactory.SetPathCompleto(Server.MapPath("~/Reportes/GastosPorCategoriaTotalGeneral.rdl")) .SetDataSource("DataSet1", gastosPorCategoriaTotalGeneralDataSource); } else { var gastosPorCategoriaDataSource = Uow.Reportes.GastosPorCategoria(model.Desde, hasta, model.MaxikioscoId, model.CategoriaId, model.SubCategoriaId); reporteFactory.SetPathCompleto(Server.MapPath("~/Reportes/GastosPorCategoria.rdl")) .SetDataSource("DataSet1", gastosPorCategoriaDataSource); } reporteFactory.SetParametro(parameters); byte[] archivo = reporteFactory.Renderizar(model.ReporteTipo); return(File(archivo, reporteFactory.MimeType)); }
public ActionResult GastosPorCategoria(ReporteGastoPorCategoriaFiltrosModel gastoPorCategoriaFiltrosModel) { return(PartialOrView(gastoPorCategoriaFiltrosModel)); }