public IHttpActionResult ObtenerReporteBeneficiario() { BeneficiarioReporteQuery query = new BeneficiarioReporteQuery(); BeneficiarioReporteQueryResult queryResult = _queryDispatcher.Dispatch <BeneficiarioReporteQuery, BeneficiarioReporteQueryResult>(query); return(Ok(queryResult)); }
public IHttpActionResult GenerarReporteBeneficiarios([FromUri] BeneficiarioReporteQuery query) { if (query.SalaCunaId != null || !String.IsNullOrEmpty(query.Codigo)) { BeneficiarioReporteQueryResult queryResult = _queryDispatcher.Dispatch <BeneficiarioReporteQuery, BeneficiarioReporteQueryResult>(query); ReportDataSource dsBeneficiario = new ReportDataSource("DSBeneficiario", queryResult.Beneficiarios); //String _params = JsonHelper.GetJsonStringFromObject(queryResult); Boolean _ok = false; String _nombreArchivo = String.Empty; ReporteConfigDto _config = ReportesConfiguracion.GetReporteConfig(TiposReporte.Beneficiario.Value); try { byte[] bytes = ReportViewerUtil.GenerateAndPersist(_config, ref _nombreArchivo, queryResult.Beneficiarios, null); GenerateExcelFromReportViewer(bytes, _config.OutputFileName + "." + _config.Format); _ok = true; } catch (Exception e) { Console.Write(e); } finally{ EnviarMail(GetUsuarioLogueado().Cuil.ToString(), _ok, _nombreArchivo, "", _config.AsuntoEmail); } } else { StringBuilder builder = new StringBuilder(); long tickDesde = (query.FechaDesde != null ? query.FechaDesde.Value : DateTimeHelper.GetMinDateTimeNullable(query.FechaDesde)).Ticks; builder.Append(tickDesde); builder.Append(","); long tickHasta = (query.FechaHasta == null && query.FechaDesde != null ? DateTime.Today : DateTimeHelper.GetMinDateTimeNullable(query.FechaHasta)).Ticks; builder.Append(tickHasta); builder.Append(","); builder.Append(query.PersonaJuridicaId != null ? query.PersonaJuridicaId.Value : -1); builder.Append(","); builder.Append(query.SalaCunaId != null ? query.SalaCunaId.Value : -1); builder.Append(","); builder.Append(query.Codigo); builder.Append(","); builder.Append(query.NroDocumento); builder.Append(","); builder.Append(query.DadosBaja ? 'S' : 'N'); builder.Append(","); builder.Append(query.DepartamentoId != null ? query.DepartamentoId.Value : -1); builder.Append(","); builder.Append(query.LocalidadId != null ? query.LocalidadId.Value : -1); builder.Append(","); builder.Append(query.BarrioId != null ? query.BarrioId.Value : -1); builder.Append(","); builder.Append(query.SituacionCritica); builder.Append(","); builder.Append(query.TipoBeneficiario != null ? query.TipoBeneficiario : "0"); builder.Append(","); builder.Append(query.TipoDocumentoId); builder.Append(","); builder.Append(query.PageNumber != null ? query.PaginationFrom.Value : 0); builder.Append(","); builder.Append(query.PageNumber != null ? query.PaginationTo.Value : 10000); ActualizarReporteCommand command = new ActualizarReporteCommand(); command.IdEstado = (int)EstadoReporteEnum.Pendiente; command.StringProceso = builder.ToString(); command.IdUsuario = GetUsuarioLogueado().Id; command.NombreProceso = TiposReporte.Beneficiario.Value; _commandDispatcher.Dispatch <ActualizarReporteCommand>(command); } var respuesta = new { mensaje = _mensaje + GetEmailUsuarioLogueado() }; return(Ok(respuesta)); }
public IHttpActionResult GetReporteBeneficiarios([FromUri] BeneficiarioReporteQuery query) { BeneficiarioConsultaReporteQueryResult queryResult = _queryDispatcher.Dispatch <BeneficiarioReporteQuery, BeneficiarioConsultaReporteQueryResult>(query); return(Ok(queryResult)); }