public void Validate(PassagemPendenteArtesp passagemPendenteArtesp)
        {
            if (passagemPendenteArtesp.NumeroReenvio > 0)
            {
                passagemPendenteArtesp.TransacaoPassagemIdAnterior = DataBaseConnection.HandleExecution(_transacaoPassagemIdAnteriorValidaQuery.Execute, passagemPendenteArtesp);

                if (passagemPendenteArtesp.TransacaoPassagemIdAnterior > 0)
                {
                    var transacaoOriginal = DataBaseConnection.HandleExecution(_transacaoPassagemPorTransacaoIdQuery.Execute, passagemPendenteArtesp.TransacaoPassagemIdAnterior);

                    var passagemAnteriorFilter = new ObterPassagemAnteriorValidaCompletaFilter(passagemPendenteArtesp.Conveniado.Id ?? 0,
                                                                                               passagemPendenteArtesp.NumeroReenvio,
                                                                                               passagemPendenteArtesp.ConveniadoPassagemId,
                                                                                               passagemPendenteArtesp.Conveniado.CodigoProtocoloArtesp);

                    var passagemOriginal = DataBaseConnection.HandleExecution(_passagemAnteriorValidaQuery.Execute, passagemAnteriorFilter);

                    if (passagemOriginal != null && passagemPendenteArtesp.NumeroReenvio > passagemOriginal.Reenvio &&
                        PassagemJaProcessadaAnteriormente(passagemOriginal, passagemPendenteArtesp) && transacaoOriginal != null)
                    {
                        throw new PassagemInvalidaNoSysException(
                                  ResultadoPassagem.CompensadoPreviamente,
                                  passagemPendenteArtesp,
                                  MotivoNaoCompensado.SemMotivoNaoCompensado,
                                  transacaoOriginal.Id ?? 0,
                                  passagemOriginal.Valor,
                                  transacaoOriginal.DataRepasse,
                                  passagemOriginal.PassagemId);
                    }
                }
            }
        }
        public void Init(PassagemPendenteArtesp passagem)
        {
            var filter = new ObterPassagemAnteriorValidaCompletaFilter(passagem);

            _passagemAnteriorValidaDto = DataBaseConnection.HandleExecution(_passagemAnteriorValidaQuery.Execute, filter);
        }