esdrasrenan
9c6f19f9a5
Fix chat permission for machine-linked users
...
Allow COLLABORATOR users who are linked to the ticket's machine
(via assignedUserId or linkedUserIds) to access the chat, not
just the ticket requester.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-07 03:49:09 -03:00
esdrasrenan
f45ee91804
Fix chat widget UI and allow attachment-only messages
...
- Allow sending messages with only attachments (no text required)
- Change "Chat Ativo" header to just "Chat"
- Replace Headphones icon with MessageCircle for own messages
- Replace PhoneOff icon with XCircle for end chat button
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-07 03:09:51 -03:00
esdrasrenan
ba91c1e0f5
Implementa sistema de chat em tempo real entre agente e cliente
...
- Adiciona tabela liveChatSessions no schema Convex
- Cria convex/liveChat.ts com mutations e queries para chat
- Adiciona API routes para maquinas (sessions, messages, poll)
- Cria modulo chat.rs no Tauri com ChatRuntime e polling
- Adiciona comandos de chat no lib.rs (start/stop polling, open/close window)
- Cria componentes React do chat widget (ChatWidget, types)
- Adiciona botao "Iniciar Chat" no dashboard (ticket-chat-panel)
- Implementa menu de chat no system tray
- Polling de 2 segundos para maior responsividade
- Janela de chat flutuante, frameless, always-on-top
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-07 01:00:27 -03:00
Esdras Renan
bd1bd4bef1
Expose visit status and performedAt in ticket list
2025-11-26 16:54:25 -03:00
Esdras Renan
66559eafbf
feat(visits): concluir/reabrir visita sem poluir agenda
2025-11-26 14:21:31 -03:00
Esdras Renan
c79ba4638c
Allow reassigning during active sessions
2025-11-19 09:57:04 -03:00
Esdras Renan
ff9d95746e
Align report filters and update work session flows
2025-11-19 09:24:30 -03:00
Esdras Renan
72a4748a81
feat: enforce visit scheduling ux
2025-11-18 19:59:27 -03:00
Esdras Renan
6473e8d40f
feat: enhance visit scheduling and closing flow
2025-11-18 17:42:38 -03:00
Esdras Renan
b721348e19
feat: improve custom fields admin and date filters
2025-11-15 01:51:55 -03:00
Esdras Renan
52c03ff1cf
feat: portal reopen, reports, templates and remote access
2025-11-13 23:22:17 -03:00
Esdras Renan
3e4943f79c
Optimize Convex queries and stack config
2025-11-12 22:13:50 -03:00
Esdras Renan
ff41a8bd4e
Auto-pause internal work during lunch
2025-11-12 17:48:12 -03:00
Esdras Renan
c5ddd54a3e
chore: prep platform improvements
2025-11-09 21:09:38 -03:00
Esdras Renan
6ab8a6ce89
feat: agenda polish, SLA sync, filters
2025-11-08 02:34:43 -03:00
Esdras Renan
7fb6c65d9a
Fix form template labels and guard admin auth tables
2025-11-08 00:40:32 -03:00
Esdras Renan
a2f9d4bd1a
Improve custom field timeline and toasts
2025-11-07 23:59:16 -03:00
Esdras Renan
b94cea2f9a
Ajusta placeholders, formulários e widgets
2025-11-06 23:13:41 -03:00
Esdras Renan
0f0f367b3a
feat: custom fields improvements
2025-11-06 14:05:51 -03:00
Esdras Renan
9495b54a28
feat: melhorias no vínculo de tickets e exportação
2025-11-06 13:07:01 -03:00
Esdras Renan
fa9efdb5af
fix: resolver avisos de build e tipagem
2025-11-04 21:02:53 -03:00
codex-bot
c2c5707a97
feat(devices,custom-fields,csat,portal):\n- Editor de campos personalizados (inclui multiselect) e exibição no detalhe\n- Campos personalizados disponíveis nas colunas/templates de exportação\n- Move cópia de e-mail para ícone inline abaixo do nome do dispositivo\n- Portal: banner para avaliar último chamado e CSAT no detalhe\n- Tickets list inclui campos de CSAT para detectar pendências
2025-11-04 14:12:21 -03:00
codex-bot
06deb99bcd
feat(export,tickets,forms,emails):\n- Corrige scroll de Dialogs e melhora UI de seleção de colunas (ícones e separador)\n- Ajusta rota/params da exportação em massa e adiciona modal de exportação individual\n- Renomeia 'Chamado padrão' para 'Chamado' e garante visibilidade total para admin/agente\n- Adiciona toggles por empresa/usuário para habilitar Admissão/Desligamento\n- Exibe badge do tipo de solicitação na listagem e no cabeçalho do ticket\n- Prepara notificações por e-mail (comentário público e encerramento) via SMTP\n
2025-11-04 13:41:32 -03:00
codex-bot
a8333c010f
fix(reports): remove truncation cap in range collectors to avoid dropped records
...
feat(calendar): migrate to react-day-picker v9 and polish UI
- Update classNames and CSS import (style.css)
- Custom Dropdown via shadcn Select
- Nav arrows aligned with caption (around)
- Today highlight with cyan tone, weekdays in sentence case
- Wider layout to avoid overflow; remove inner wrapper
chore(tickets): make 'Patrimônio do computador (se houver)' optional
- Backend hotfix to enforce optional + label on existing tenants
- Hide required asterisk for this field in portal/new-ticket
refactor(new-ticket): remove channel dropdown from admin/agent flow
- Keep default channel as MANUAL
feat(ux): simplify requester section and enlarge combobox trigger
- Remove RequesterPreview redundancy; show company badge in trigger
2025-11-04 11:51:08 -03:00
codex-bot
e0ef66555d
feat: dispositivos e ajustes de csat e relatórios
2025-11-03 19:29:50 -03:00
Esdras Renan
714b199879
feat: export reports as xlsx and add machine inventory
2025-10-27 18:00:28 -03:00
Esdras Renan
f3a7045691
feat: cadastro manual de acesso remoto e ajustes de horas
2025-10-24 23:52:58 -03:00
codex-bot
296e02cf0c
Normalize ticket mentions in editor and server
2025-10-24 16:35:55 -03:00
Esdras Renan
37c32149a6
feat: improve requester combobox and admin cleanup flows
2025-10-24 00:45:41 -03:00
codex-bot
4aee7d7719
Permite selecionar solicitante e empresa nos tickets
2025-10-23 17:47:23 -03:00
Esdras Renan
b0f57009ac
feat: link tickets in comments and align admin sidebars
2025-10-23 00:46:50 -03:00
Esdras Renan
3972f66c92
feat: enforce ticket ownership during work sessions
2025-10-20 19:46:20 -03:00
codex-bot
0dd0e67458
feat(filters): usar filtro por responsável no servidor (assigneeId)\n\nci: tocar convex/tickets para forçar deploy das funções
2025-10-20 16:07:54 -03:00
codex-bot
5535ba81e6
feat: status + queue updates, filters e UI
...
- Status renomeados e cores (Em andamento azul, Pausado amarelo)
- Transições automáticas: iniciar=Em andamento, pausar=Pausado
- Fila padrão: Chamados ao criar ticket
- Admin/Empresas: renomeia ‘Slug’ → ‘Apelido’ + mensagens
- Dashboard: últimos tickets priorizam sem responsável (mais antigos)
- Tickets: filtro por responsável + salvar filtro por usuário
- Encerrar ticket: adiciona botão ‘Cancelar’
- Strings atualizadas (PDF, relatórios, badges)
2025-10-20 14:57:22 -03:00
Esdras Renan
216feca971
feat(tickets): preserve requester/assignee/company snapshots + timeline fallbacks; chore: add requester index\n\n- Add requesterSnapshot, assigneeSnapshot, companySnapshot to tickets\n- Use snapshots as fallback in list/get/play\n- Update snapshots on assignee changes/startWork\n- Preserve snapshots before deleting users/companies\n- Add index tickets.by_tenant_requester\n- Add migrations.backfillTicketSnapshots\n\nchore(convex): upgrade to ^1.28.0 and run codegen\nchore(next): upgrade Next.js to 15.5.6 and update React/eslint-config-next\nfix: remove any and lint warnings; tighten types across API routes and components\ndocs: add docs/ticket-snapshots.md
2025-10-20 10:13:37 -03:00
Esdras Renan
090ebb9607
fix: align ticket timers to server clock
2025-10-19 20:27:11 -03:00
Esdras Renan
63d6a65334
chore: snapshot comment authors before user deletion
2025-10-19 14:30:59 -03:00
Esdras Renan
846e575637
fix: harden machine session fallback and clean lint
2025-10-19 03:16:50 -03:00
Esdras Renan
7c025a0398
Allow managers to comment without assignee; keep assignee requirement for admin/agent; reflect in UI
2025-10-19 02:45:53 -03:00
Esdras Renan
b468c6c9e7
Enforce assignee-required commenting for staff; UI disables commenting until responsible is set; poll machine session for live deactivation; desktop deactivation screen update
2025-10-19 02:34:05 -03:00
Esdras Renan
68ace0a858
refactor: quality workflow, docs, tests
2025-10-16 19:14:46 -03:00
Esdras Renan
c90e99820f
feat: aprimora upload/anexos e regras de atendimento no portal
2025-10-16 03:01:27 -03:00
Esdras Renan
2cba553efa
Implement company provisioning codes and session tweaks
2025-10-15 20:45:25 -03:00
Esdras Renan
6df49ba956
Portal polishing: hide queue/priority for customers; use RTE + attachments in detail; filter list to requester only for collaborators
2025-10-14 22:29:38 -03:00
Esdras Renan
d1871ba232
Allow requester (collaborator) to add PUBLIC comments to own tickets; fix 'Autor não possui permissão'
2025-10-14 22:10:07 -03:00
Esdras Renan
7d6f3bea01
feat: improve ticket export and navigation
2025-10-13 00:08:18 -03:00
Esdras Renan
b5fd920efd
docs: registrar fluxo do updater e atualizar chaves
2025-10-12 04:06:29 -03:00
Esdras Renan
ef25cbe799
Ajusta timeline, comentários internos e contadores de trabalho
2025-10-07 22:12:18 -03:00
Esdras Renan
5b14ecbe0f
convex: mover action de envio de alertas para arquivo Node ('alerts_actions.ts' com 'use node'); remover import de 'tls' do módulo de queries/mutations; ajustar cron para usar api.alerts_actions; remover tentativa de envio de e-mail no mutation addComment (evitar Node API em isolate).
2025-10-07 17:04:38 -03:00
Esdras Renan
d2c1913221
dashboard: substituir 'Abrir ticket' por botão 'Novo ticket' com modal (mesmo layout e funcionalidade da tela de tickets)
2025-10-07 16:53:24 -03:00