Pular para conteúdo

R-Collector Web (Suporte)

Aplicação Angular 15 usada por supervisores do Detran-PA e equipe Renova para consultar, auditar e administrar coletas biométricas. É baseada no tema Material Dashboard PRO, mas com fluxos e integrações específicos do programa RCollector.

Stack e Arquitetura

  • Angular 15 + Angular Material + Bootstrap 4, com componentes reaproveitados em src/app/components e módulos dashboard, consulta e gerenciamento.
  • RxJS, SweetAlert2, ngx-mask, DataTables e integrações jQuery herdadas do template.
  • Auth0 angular-jwt decodifica tokens e o RequestInterceptorAuthorization insere o header Bearer em todas as requisições.
  • Services em src/service encapsulam chamadas REST para R-Collector API, Postos, Observações, CNH Sync/Detran e relatórios.
  • APP_INITIALIZER carrega as configurações (assets/config/env*.json) e injeta URLs normalizadas no ConfigService.

Ambientes e Configuração

Target Angular Environment Config JSON Base API (RCOLLECTOR_WEB)
local environment.ts env.json https://localhost:7014/api/
development environment.dev.ts env_dev.json https://rcollector-api-pa.renova.app.br/api/
homologa environment.hmg.ts env_hmg.json https://rcollector-pa-api1-hmg.azurewebsites.net/api/
production environment.prod.ts env_prod.json https://rcollector-api.renova.app.br:446/api/
  • Scripts npm run start_*/build_* já selecionam o environment correto.
  • Tokens ficam em localStorage (environment.TokenName). O AuthGuard só bloqueia rotas quando environment.production = true, permitindo navegação livre para mocks locais.

Perfis de Acesso

Perfil Permissões
Supervisor Detran Visualiza todos os postos, aprova reaproveitamentos/cancelamentos, exporta relatórios oficiais e acompanha lotes CNH Sync.
Gestor de Posto Consulta coletas do próprio posto, solicita reaproveitamento ou cancelamento, baixa pacotes e acompanha incidentes.
Suporte Renova Administra licenças, libera instaladores, monitora incidentes, força reprocessamentos e acessa dashboards detalhados.

Módulos e Fluxos

  • Autenticação: sign.component.ts chama AuthService.signIn → token é salvo e transformado em modelo rico pelo RolePermissionsService. Interceptor injeta Bearer para todos os serviços, exceto /Token.
  • Dashboard (dashboard.component.ts): cards com IQuantitativoColetasPorStatus, tendências e alertas de backlog.
  • Consulta (/consulta):
  • Candidato consulta CPF/RENACH, baixa fotos e vê histórico completo.
  • Profissional administra dados de biometria dos operadores.
  • Validação / Coleta Info / Comparação de Imagem cruzam eventos, logs e imagens exportadas.
  • Gerenciamento (/gerenciamento):
  • Listagem de Cancelamentos e Reaproveitamento aprovam/reprovam solicitações.
  • Relatórios geram CSV/PDF com filtros rígidos (período, posto, operador, status).
  • Coletas com Erro SERPRO e Consulta SERPRO cruzam integrações e permitem reenvio.
  • Cadastros de Posto/Profissional usam components stand-alone (create-posto, create-profissional).
  • Downloads / Suporte: módulo dedicado libera instaladores e drivers usando links assinados e expiração de 24h.

Integrações

  • api-rcollector.service.ts: operações de coleta, cancelamento, relatórios, operadores, métricas.
  • api.service.ts: integra com CNH Sync/Detran para validar condutores (requere VPN quando aplicável).
  • api-posto.service.ts e api-observacoes.service.ts: mantenedores de cadastro e histórico.
  • Logs e auditorias são enviados para a R-Collector API, que registra usuário, IP e payload.

Operação & Troubleshooting

  • Scripts de execução: npm run start_local|dev|hmg|prod e builds correspondentes.
  • npm test, npm run lint e npm run e2e cobrem unitários, TSLint/Codelyzer e Protractor legado.
  • Problemas comuns:
  • Token expira: verificar CONFIG_FILE e sincronismo do relógio.
  • Sem dados nas telas: confirmar que o interceptor adiciona Authorization e que as URLs das APIs (RCOLLECTOR_WEB/CNH Sync) estão acessíveis.
  • Filtros retornando vazio: campos de data limitam a 30 dias e exigem dataFinal >= dataInicial.

Boas Práticas

  • Atualizar contatos do posto na área de configurações para facilitar notificações automatizadas.
  • Usar favoritos/filtros para focar em lotes críticos em vez de acompanhar todo o estado.
  • Revisar semanalmente incidentes em aberto e anexar dashboards/exportações antes de encerrar chamados.

O R-Collector Web concentra suporte de nível 1 e 2 e mantém o Detran-PA com visibilidade completa do ciclo de coletas, validações e integrações externas.