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:
cidadeestadocpfperfil
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
perfilde 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.