Pular para o conteúdo principal

Relacionamento com Tutores

O sistema de Tutores permite que um pet tenha multiplos responsaveis (clientes), refletindo situacoes reais onde familias ou parceiros compartilham a responsabilidade por um animal.

Conceito de Tutor

Um tutor e um cliente que e responsavel por um pet. No Onepet2:

  • Um pet pode ter multiplos tutores
  • Um tutor (cliente) pode ter multiplos pets
  • Relacao e bidirecional e sincronizada

Cenarios de Uso

Cenario 1: Casal com Pet

Ambos podem:

  • Trazer o pet para servicos
  • Receber notificacoes
  • Acompanhar historico

Cenario 2: Familia com Varios Pets

Cenario 3: Pet Compartilhado

Gerenciamento de Tutores

No Cadastro do Pet

Ao criar ou editar um pet:

  1. Campo "Tutores" (customers) e obrigatorio
  2. Permite selecionar multiplos clientes existentes
  3. Permite criar novos clientes inline

Campo de Selecao

PropriedadeValor
TipoSelect multiplo
ObrigatorioSim (pelo menos 1)
BuscaPor nome, telefone
Criacao inlineSim

Criacao Inline de Cliente

Ao cadastrar pet, e possivel criar novo cliente:

  1. Clique em "Adicionar novo tutor"
  2. Preencha dados basicos (nome, whatsapp)
  3. Ao salvar o pet, cliente e criado automaticamente
  4. Vinculo e estabelecido

Sincronizacao Automatica

Como Funciona

O sistema mantem a relacao sincronizada automaticamente:

Ao adicionar tutor ao pet:

Pet.customer_ids << customer_id
→ Customer.pet_ids << pet_id

Ao remover tutor do pet:

Pet.customer_ids.delete(customer_id)
→ Customer.pet_ids.delete(pet_id)

Fluxo Detalhado

Callbacks Envolvidos

MomentoMetodoAcao
Antes de validarset_account_and_current_userHerda conta do cliente
Apos criarset_customer_pet_idsSincroniza pet_ids nos clientes
Antes de atualizarset_old_customer_idsGuarda estado anterior
Apos atualizarupdate_customer_pet_idsSincroniza adicoes e remocoes

Visualizacao

No Perfil do Pet

Aba "Tutores" exibe:

  • Lista de todos os tutores
  • Nome e contato de cada um
  • Link para perfil do cliente

No Perfil do Cliente

Aba "Pets" exibe:

  • Lista de todos os pets do cliente
  • Link para perfil de cada pet
  • Contador de pets

Impacto em Outros Modulos

Beauty Center

  • Qualquer tutor pode agendar servicos para o pet
  • Notificacoes enviadas para todos os tutores
  • Historico compartilhado

PDV

  • Venda pode ser vinculada a qualquer tutor
  • Produtos do pet aparecem para todos

Clinical

  • Qualquer tutor pode autorizar procedimentos
  • Historico medico acessivel por todos

Regras de Negocio

Validacoes

RegraDescricao
Minimo 1 tutorPet deve ter pelo menos um tutor
Tutores validosClientes devem existir na mesma Account
PermissaoUsuario deve ter acesso aos clientes

Restricoes

  1. Mesma Account: Tutores devem ser da mesma Account do pet
  2. Nao duplicar: Mesmo cliente nao pode ser tutor duas vezes
  3. Sincronizacao obrigatoria: Sistema mantem consistencia

Cenarios Especiais

Transferencia de Tutor

Se um pet muda de dono:

  1. Adicione o novo tutor
  2. Remova o tutor anterior (se desejado)
  3. Historico permanece com o pet

Tutor Falecido/Inativo

Se um tutor nao esta mais disponivel:

  1. Mantenha outros tutores ativos
  2. Opcional: remova o tutor inativo
  3. Historico de atendimentos e preservado

Pets sem Tutor

Situacao nao permitida:

  • Sistema exige pelo menos 1 tutor
  • Ao remover ultimo tutor, operacao e bloqueada

Notificacoes

Quem Recebe

Por padrao, notificacoes sao enviadas para:

SituacaoDestinatarios
AgendamentoTodos os tutores
LembreteTodos os tutores
FinalizacaoTodos os tutores
PromocoesTodos os tutores

Configuracao

Futuras implementacoes podem permitir:

  • Definir tutor principal
  • Escolher quem recebe notificacoes
  • Preferencias por tipo de notificacao

Permissoes

AcaoPermissao Necessaria
Ver tutores do petpet.view_all ou pet.view_own
Adicionar tutorpet.edit_all ou pet.edit_own
Remover tutorpet.edit_all ou pet.edit_own
Criar tutor inlinecustomer.create

Boas Praticas

Cadastro Inicial

  1. Sempre pergunte se ha mais tutores
  2. Cadastre todos os responsaveis
  3. Confirme dados de contato de cada um

Manutencao

  1. Atualize quando houver mudancas
  2. Verifique periodicamente dados de contato
  3. Mantenha historico mesmo ao remover tutores

Comunicacao

  1. Notifique todos os tutores sobre servicos
  2. Confirme com qualquer tutor presente
  3. Registre qual tutor trouxe/buscou o pet