5.5 KiB
5.5 KiB
Roadmap de Próximos Passos
Redeploy: atualização do segredo de provisionamento de máquinas aplicada na VPS. Este commit dispara o pipeline para atualizar a stack com o novo .env.
Lista priorizada de evoluções propostas para o Sistema de Chamados. Confira agents.md para visão geral, escopo atual e diretrizes de uso.
🧩 Permissões e acessos
- Criar perfil Gestor da Empresa (cliente) com permissões específicas
- Ver todos os chamados da sua empresa
- Acessar relatórios e dashboards resumidos
- Exportar relatórios em PDF ou CSV
- Manter perfis: Administrador, Gestor, Agente e Colaborador
🧾 Tickets e atendimentos
- Adicionar opção Exportar histórico completo em PDF (conversa, logs, movimentações)
- Implementar justificativa obrigatória ao pausar o chamado
- Categorias: Falta de contato / Aguardando terceiro / Em procedimento
- Ajustar status padrão dos tickets
- Pendentes
- Aguardando atendimento
- Pausados
- (Remover “Aguardando resposta” e “Violados”)
- Remover automaticamente da listagem ao finalizar o chamado
📊 Dashboards e relatórios
- Criar dashboard inicial com fila de atendimento
- Exibir chamados em: atendimento, laboratório, visitas
- Indicadores: abertos, resolvidos, tempo médio, SLA
- Criar relatório de horas por cliente (CSV/Dashboard)
- Separar por atendimento interno e externo
- Filtrar por período (dia, semana, mês)
- Permitir exportar relatórios completos (CSV ou PDF)
⏱️ Controle de tempo e contratos
- Adicionar botão Play interno (atendimento remoto)
- Adicionar botão Play externo (atendimento presencial)
- Separar contagem de horas por tipo (interno/externo)
- Exibir e somar horas gastas por cliente (com base no tipo)
- Incluir no cadastro:
- Horas contratadas por mês (Convex pronto; falta migração Prisma)
- Tipo de cliente: mensalista ou avulso
- Enviar alerta automático por e-mail quando atingir limite de horas
💬 Comunicação e notificações
- Diferenciar comentários públicos e privados
- Público → envia e-mail ao cliente
- Privado → visível apenas internamente
- Enviar e-mail automático quando houver comentário público
- Incluir trecho da mensagem e link direto para o chamado
- Criar biblioteca de templates de comentário prontos
- Exemplo: “Agradecemos seu contato”, “Seu chamado foi atualizado”, etc.
⚙️ Extras e automações (futuro)
- Enviar alertas automáticos para gestores quando:
- Chamado estiver pausado há mais de 48h
- Horas contratadas atingirem 90% do limite
Arestas e observações (implantado)
-
Alerta de horas por cliente (≥ 90%)
- SMTP precisa estar configurado no Next e no Convex (envs SMTP_ e MAILER_SENDER_EMAIL) — sem isso o envio é pulado.
- Cron executa de hora em hora e só dispara às 08:00 America/Sao_Paulo (config
ALERTS_LOCAL_HOUR). Hoje o cálculo do “início do dia” usa-03:00fixo; revisar se houver mudança de offset/DST. - Prevenção de duplicados por empresa/dia é feita via consulta por intervalo. Podemos otimizar com índice específico (
by_tenant_company_created). - Divergência de fonte de gestores: rota Next usa Prisma (role MANAGER), cron usa Convex. Ideal unificar a origem ou sincronizar regularmente.
- Cliente SMTP atual usa AUTH LOGIN e
rejectUnauthorized: false. Melhorar: validar certificado, timeout/retry e suporte a múltiplos destinatários.
-
Painel de alertas enviados (Admin)
- Filtros atuais (empresa/período) aplicados no client; quando o Convex estiver atualizado, mover filtros para a query para melhor desempenho.
- Adicionar paginação/limite configurável e ordenação por colunas.
-
Admin > Empresas — “Último alerta”
- Endpoint agrega por slug em loop (N chamadas ao Convex). Melhorar com query em lote (por IDs/empresa) no Convex.
- Exibir também percentual do uso e threshold para contexto.
-
Relatórios com filtro de empresa (Backlog/SLA/CSAT)
- CSVs já aceitam
companyId. Garantir que o Convex esteja na versão comcompanyIdopcional nos relatórios. - Considerar persistir seleção global de empresa (ex.: por sessão) para consistência entre páginas.
- CSVs já aceitam
-
Entrada de tickets por canal (dashboard)
- Seletor de empresa com busca dentro do dropdown. Melhorias: limpar busca ao fechar o menu; paginar/virtualizar se lista for grande.
- CSV acompanha
companyIde período.
-
Horas por cliente
- Busca por nome e filtro por empresa aplicados no UI; CSV aceita
qecompanyIdpara exportar filtrado. - Considerar paginação e indicadores agregados (soma total por período; top N clientes).
- Busca por nome e filtro por empresa aplicados no UI; CSV aceita
-
PDF do ticket
- Usa Inter de
public/fontsquando disponível; fallback para Helvetica. Em ambientes serverless, garantir acesso aos arquivos de fonte. - Melhorias possíveis: incorporar logo/cores por tenant e fontes customizadas por cliente.
- Usa Inter de
-
Tipos e testes
- Removidos
anynas áreas alteradas. Ainda háanyem módulos antigos (tickets/mappers/admin). Plano: tipificar por módulo gradualmente. - Testes adicionados (CSV/TZ). Próximos: snapshots de CSVs de relatórios, validação de formatação de data/hora, e2e dos endpoints principais (modo mockado).
- Removidos
-
Implementar trilha de auditoria (quem pausou, finalizou, comentou)
-
Permitir exportar logs de auditoria (CSV/PDF)