public ActionResult GenerarVentasPorCierreCaja(ReporteVentasCierreCajaFiltrosModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var ventasPorProductoDataSource = Uow.Reportes.VentasPorCierreCaja(model.CierreCajaId).ToList();

                    var ventasPorProductoRankingDataSource = Uow.Reportes.VentasPorProductoRanking(null, null, null, null, null, model.CierreCajaId).ToList();
                    var reporteFactory = new ReporteFactory();

                    var cierreCaja = Uow.CierresDeCaja.Obtener(c => c.CierreCajaId == model.CierreCajaId,
                                                               c => c.Usuario, c => c.MaxiKiosco);
                    var parameters = new Dictionary <string, string>
                    {
                        { "CierreCajaId", model.CierreCajaId.ToString() },
                        { "Desde", cierreCaja.FechaInicioFormateada },
                        { "Hasta", string.IsNullOrEmpty(cierreCaja.FechaFinFormateada) ? "TODAVIA ABIERTA" : cierreCaja.FechaFinFormateada },
                        { "Usuario", cierreCaja.Usuario.NombreUsuario },
                        { "Maxikiosco", cierreCaja.MaxiKiosco.Nombre }
                    };

                    reporteFactory.SetPathCompleto(Server.MapPath("~/Reportes/VentasPorCierreCaja.rdl"))
                    .SetDataSource("VentasPorProductoDataSet", ventasPorProductoDataSource)
                    .SetDataSource("VentasPorProductoRankingDataSet", ventasPorProductoRankingDataSource)
                    .SetParametro(parameters);;

                    byte[] archivo = reporteFactory.Renderizar(model.ReporteTipo);

                    return(File(archivo, reporteFactory.MimeType));
                }
                catch (Exception ex)
                {
                    EventLogger.Log(ex);
                    return(null);
                }
            }
            return(null);
        }
 public ActionResult VentasPorTicket(ReporteVentasCierreCajaFiltrosModel model)
 {
     return(PartialOrView(model));
 }