public IList <PassagemAprovadaParkMessage> Execute(ObterMensagensAprovadasParkRequest args) { try { var nomeQueue = ServiceBusUtil.ObterNome(TypeTransacao.AprovadaPark); var transacoesQuery = new ObterPassagensAprovadasParkQuery(ServiceBusDataSource, true, ServiceBusUtil.BatchSize, nomeQueue); var transacoes = transacoesQuery.Execute(); return(transacoes); } catch (System.Exception ex) { Log.Error(string.Format(LeitorPassagensProcessadasBatchResource.Error, ex.Message)); } return(new List <PassagemAprovadaParkMessage>()); }
/// <summary> /// Cria um handler gerador de passagens pendentes de processamento. /// </summary> public GeradorPassagemPendenteEdiHandler() { try { var dataProvider = new DbConnectionDataSourceProvider(); _readOnlyDataSource = dataProvider.GetDataSource(DbConnectionDataSourceType.ConectSysReadOnly); _dataSource = dataProvider.GetDataSource(DbConnectionDataSourceType.ConectSys); _serviceBusDataSource = new ServiceBusDataSourceBase("TransacoesServiceBus", ServiceBusUtil.FactoriesCount); var topicNamePadrao = ServiceBusUtil.ObterNomeTopicPassagem(); _passagemPendenteTopicCommand = new PassagemPendenteTopicCommand(_serviceBusDataSource, true, topicNamePadrao); } catch (Exception ex) { Log.Error(ex.Message, ex); } }
/// <summary> /// Envia passagens inválidas para o barramento... /// </summary> /// <param name="request"></param> /// <returns></returns> public EndResponse Execute(ProcessadorPassagemInvalidaRequest request) { var topicName = ServiceBusUtil.ObterNomeTopicInvalida(EnumInfra.ProtocolosEnum.PassagensInvalidasArtesp); var passagemCommand = new PassagemInvalidaArtespTopicCommand(_dataSource, true, topicName); var dto = new PassagemInvalidaArtespDto { MensagemItemId = request.PassagemInvalidaArtesp.MensagemItemId, QuantidadeTentativas = request.PassagemInvalidaArtesp.QtdTentativas }; var mensagem = Mapper.Map <PassagemInvalidaMessage>(dto); //Enviando para o barramento... passagemCommand.Execute(new List <PassagemInvalidaMessage> { mensagem }); return(new EndResponse()); }
private void EnviarParaBarramento(PassagemAprovadaArtespDto passagemAprovadaArtespDto, long mensagemItemId) { var topicName = ServiceBusUtil.ObterNomeTopicAprovada(EnumInfra.ProtocolosEnum.PassagensAprovadasArtesp); var passagemCommand = new PassagemAprovadaArtespTopicCommand(_dataSource, true, topicName); var mensagem = Mapper.Map <PassagemAprovadaMessage>(passagemAprovadaArtespDto); Log.Info($"Passagem ID: {mensagemItemId} | Passagem Aprovada."); passagemCommand.Execute(new List <PassagemAprovadaMessage> { mensagem }, (p) => { var properties = new Dictionary <string, object> { { "MensagemItemId", p.PassagemProcessada.MensagemItemId } }; return(properties); }); Log.Info($"Passagem ID: {mensagemItemId} | Passagem Aprovada - Barramento."); }
private bool EnviarDetalhesPassagemPendenteEstacionamentoPendentes(IList <PassagemPendenteParkMessage> detalhesPendentes) { try { var topicName = ServiceBusUtil.ObterNomeTopicPassagem(); Log.Info(string.Format(GeradorPassagemPendenteParkResource.EnviandoPassagem, detalhesPendentes.Count, topicName)); foreach (var passagemPendenteParkMessage in detalhesPendentes) { Log.Info($"Park - RegistroTransacaoId: {passagemPendenteParkMessage.RegistroTransacaoId} - Json: {JsonConvert.SerializeObject(passagemPendenteParkMessage)}"); } _passagemPendenteTopicCommand.Execute(detalhesPendentes, topicName, $"sb_{topicName}"); Log.Info(string.Format(GeradorPassagemPendenteParkResource.SucessoEnvio, topicName, detalhesPendentes.Count)); return(true); } catch (Exception e) { Log.Error(string.Format(GeradorPassagemPendenteParkResource.Error, e.Message), e); return(false); } }