public async Task <bool> Handle(GerarRelatorioAssincronoCommand request, CancellationToken cancellationToken) { try { ParametrosRelatorioDto parametrosDoDto = ObterParametrosRelatorio(request.Dados); var post = new ExecucaoRelatorioRequisicaoDto() { UnidadeRelatorioUri = request.CaminhoRelatorio, Async = false, SalvarSnapshot = false, FormatoSaida = request.Formato.Name(), Interativo = false, IgnorarPaginacao = false, Paginas = null, Parametros = parametrosDoDto }; SentrySdk.CaptureMessage("6.1 - Obtendo jSessionId..."); var jsessionId = await loginService.ObterTokenAutenticacao(configuration.GetSection("ConfiguracaoJasper:Username").Value, configuration.GetSection("ConfiguracaoJasper:Password").Value); SentrySdk.CaptureMessage($"6.2 - jSessionId = {jsessionId}"); SentrySdk.CaptureMessage("6.3 - Solicitando relatório..."); var retorno = await execucaoRelatorioService.SolicitarRelatorio(post, jsessionId); var exportacaoId = retorno?.Exports?.FirstOrDefault()?.Id; SentrySdk.CaptureMessage($"6.4 - Exportação Id = {exportacaoId}"); if (exportacaoId != null) { var dadosRelatorio = new DadosRelatorioDto(retorno.RequestId, exportacaoId.Value, request.CodigoCorrelacao, jsessionId); var publicacaoFila = new PublicaFilaDto(dadosRelatorio, RotasRabbit.RotaRelatoriosProcessando, null, request.CodigoCorrelacao); servicoFila.PublicaFila(publicacaoFila); var jsonPublicaFila = UtilJson.ConverterApenasCamposNaoNulos(publicacaoFila); Console.WriteLine(jsonPublicaFila); SentrySdk.CaptureMessage("6.5 - Sucesso na publicação da fila: " + publicacaoFila.Rota); return(true); } SentrySdk.CaptureMessage("6.6 - Erro na geração"); return(false); } catch (Exception ex) { SentrySdk.CaptureException(ex); throw ex; } }
private static byte[] FormataBodyWorker(PublicaFilaDto adicionaFilaDto) { var request = new MensagemRabbit(adicionaFilaDto.Rota, adicionaFilaDto.Dados, adicionaFilaDto.CodigoCorrelacao, adicionaFilaDto.UsuarioLogadoRF); var mensagem = JsonConvert.SerializeObject(request); var body = Encoding.UTF8.GetBytes(mensagem); return(body); }
public InserirFilaRabbitCommand(PublicaFilaDto adicionarFilaDto) { AdicionarFilaDto = adicionarFilaDto; }