public ActionResult GastosPorCategoria(ReporteGastoPorCategoriaFiltrosModel gastoPorCategoriaFiltrosModel) { return PartialOrView(gastoPorCategoriaFiltrosModel); }
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); }