Documentação

Atualizações no Banco – Gestão de Visitantes e Acompanhantes

Este documento descreve as mudanças realizadas no banco de dados (Supabase) e no back-end do projeto do cachorro-robô do Inteli, com foco na criação da entidade de acompanhantes e na expansão do cadastro de visitantes, viabilizando que o gestor do Inteli tenha acesso completo às informações de visitantes principais e seus acompanhantes para controle, segurança e gestão institucional.

Atualizações no Banco de Dados

Gestão de Visitantes e Acompanhantes

1. Introdução

 Durante a evolução do aplicativo de controle de acesso do projeto do cachorro-robô do Inteli, foi identificada a necessidade de oferecer ao gestor do Inteli uma visão mais completa e precisa sobre as pessoas que circulam nas dependências da instituição.

 No fluxo real de visitas, um visitante principal pode comparecer acompanhado de outras pessoas (familiares, colegas, convidados ou equipe), e essas informações precisam estar disponíveis para:

  • Controle de acesso e segurança
  • Registro histórico de visitas
  • Auditoria e rastreabilidade
  • Tomada de decisão pelo gestor

 A estrutura anterior do banco de dados não permitia representar esse cenário de forma adequada, pois todos os indivíduos precisariam ser cadastrados como visitantes independentes. Para resolver essa limitação, foi realizada uma reorganização do modelo de dados no Supabase, acompanhada de ajustes no back-end, possibilitando o vínculo explícito entre um visitante principal e seus acompanhantes.

2. Alterações no Modelo de Dados (Supabase)

2.1 Criação da Tabela acompanhante

 Foi criada a nova tabela acompanhante, responsável por armazenar as informações das pessoas que acompanham um visitante principal.

Estrutura lógica da tabela:

  • id: identificador único do acompanhante (chave primária)
  • nome: nome do acompanhante (opcional)
  • cpf: CPF do acompanhante (opcional)
  • visitante_id: identificador do visitante principal ao qual o acompanhante está vinculado

 Esse relacionamento estabelece uma relação de um-para-muitos, onde:

  • Um visitante pode ter zero, um ou vários acompanhantes
  • Um acompanhante pertence sempre a um único visitante

 Essa modelagem reflete fielmente o cenário real de visitas no Inteli e evita duplicação indevida de visitantes principais.

2.2 Expansão da Tabela visitantes

 A tabela visitantes foi estendida para armazenar informações adicionais necessárias ao aplicativo e à gestão institucional.

Novos campos adicionados:

  • cidade
  • estado
  • cpf
  • perfil

 O campo perfil permite classificar o visitante conforme seu contexto, sendo representado no back-end por um enum e armazenado no banco como texto (student ou executive).

 Essas informações ampliam a capacidade de identificação, segmentação e análise dos visitantes pelo gestor do Inteli.

3. Alterações no Back-end

3.1 Novo Model Acompanhante

 Foi criado o model Acompanhante no back-end, permitindo:

  • Mapeamento direto da tabela acompanhante
  • Integração com o SQLx para queries tipadas
  • Serialização e desserialização via serde
  • Documentação automática via OpenAPI (Utoipa)

 Esse model garante consistência entre o banco de dados e a API.

3.2 Atualização do Model Visitante

 O model Visitante foi atualizado para refletir os novos campos do banco e passou a incluir:

  • Dados geográficos (cidade, estado)
  • Documento (cpf)
  • Classificação (perfil)

 O enum Perfil foi implementado com conversões explícitas entre:

  • Representação interna no Rust
  • Representação textual no banco de dados

 Isso assegura tipagem forte no back-end sem comprometer a flexibilidade do armazenamento no Supabase.

3.3 Criação das Rotas de Acompanhante

 Foram implementadas rotas REST completas para a entidade acompanhante, permitindo:

  • Listagem de acompanhantes
  • Consulta individual
  • Criação de novos registros
  • Atualização
  • Remoção

 Essas rotas possibilitam que o aplicativo registre e gerencie acompanhantes de forma independente, sempre mantendo o vínculo com o visitante principal.

3.4 Ajustes nas Rotas de Visitante

 As rotas de criação e atualização de visitantes foram adaptadas para:

  • Inserir os novos campos no banco
  • Atualizar corretamente todas as informações do visitante
  • Persistir o campo perfil de forma padronizada

 Com isso, o cadastro do visitante principal passa a ser mais completo e alinhado às necessidades do sistema.

4. Impacto Funcional no Aplicativo

 Com as alterações realizadas, o aplicativo do gestor do Inteli passa a oferecer:

  • Visualização clara de visitantes principais e seus acompanhantes
  • Melhor controle de acesso às dependências
  • Maior confiabilidade nos registros de visita
  • Base de dados mais rica para relatórios e auditorias
  • Estrutura escalável para futuros requisitos (ex.: limites de acompanhantes, regras por perfil, estatísticas)

5. Conclusão

 As mudanças implementadas no banco de dados e no back-end representam um avanço significativo na aderência do sistema à realidade operacional do Inteli. A introdução da entidade acompanhante, aliada à expansão do cadastro de visitantes, permite que o gestor tenha acesso a informações completas, organizadas e confiáveis sobre todos os indivíduos presentes no ambiente institucional.

 Essa evolução torna o sistema mais robusto, seguro e preparado para crescimento, garantindo que o aplicativo do projeto do cachorro-robô atenda não apenas às necessidades técnicas, mas também às exigências práticas de gestão e controle do Inteli.