public void Definir(PassagemPendenteArtesp passagemPendenteArtesp)
        {
            var codigoCategoria = passagemPendenteArtesp.CategoriaCobrada?.Codigo ?? passagemPendenteArtesp.CategoriaDetectada.Codigo;
            var categorias      = CategoriaVeiculoCacheRepository.Listar();
            var categoria       = categorias.FirstOrDefault(c => c.Codigo == codigoCategoria);

            passagemPendenteArtesp.CategoriaUtilizada =
                new CategoriaVeiculo {
                Id     = categoria?.CategoriaVeiculoId,
                Codigo = categoria?.Codigo ?? 0
            };

            var listaDeParaCategoriaVeiculo =
                DataBaseConnection.HandleExecution(_listaDeParaCategoriaVeiculoPorIdQuery.Execute, passagemPendenteArtesp.Conveniado.ListaDeParaCategoriaVeiculoId);


            if (listaDeParaCategoriaVeiculo != null && listaDeParaCategoriaVeiculo.ValidarLista())
            {
                var itemListaDePara = DataBaseConnection.HandleExecution(_itemListaDeParaPorCodigoEntradaQuery.Execute, codigoCategoria);

                if (itemListaDePara != null && itemListaDePara.ValidarLista()) //  definição por itemDeParaUtilizado
                {
                    categoria = categorias.FirstOrDefault(
                        c => c.CategoriaVeiculoId == itemListaDePara.CategoriaVeiculoId);

                    passagemPendenteArtesp.CategoriaUtilizada =
                        new CategoriaVeiculo {
                        Id     = categoria?.CategoriaVeiculoId,
                        Codigo = categoria?.Codigo ?? 0
                    };
                    passagemPendenteArtesp.ItemListaDeParaUtilizado = itemListaDePara.ItemListaDeParaId;
                }
            }
        }
        private void PreencherCategoriaVeiculo()
        {
            var categorias = CategoriaVeiculoCacheRepository.Listar();

            if (_passagemPendenteArtesp.CategoriaTag.Codigo > 0)
            {
                _passagemPendenteArtesp.CategoriaTag.Id = categorias
                                                          .FirstOrDefault(c => c.Codigo == _passagemPendenteArtesp.CategoriaTag.Codigo)?.CategoriaVeiculoId;
            }

            if (_passagemPendenteArtesp.CategoriaCobrada.Codigo > 0)
            {
                _passagemPendenteArtesp.CategoriaCobrada.Id = categorias
                                                              .FirstOrDefault(c => c.Codigo == _passagemPendenteArtesp.CategoriaCobrada.Codigo)?.CategoriaVeiculoId;
            }

            if (_passagemPendenteArtesp.CategoriaDetectada.Codigo > 0)
            {
                _passagemPendenteArtesp.CategoriaDetectada.Id = categorias
                                                                .FirstOrDefault(c => c.Codigo == _passagemPendenteArtesp.CategoriaDetectada.Codigo)?.CategoriaVeiculoId;
            }
        }