Módulo Notifications
Notificações in-app e canais centralizados. Polling para unread, marcação de leitura e envio em massa pelo Admin.
Propósito
O módulo Notifications centraliza o sistema de notificações da aplicação. Utiliza o Laravel Notification com canal Database para armazenar notificações. Oferece API para buscar não lidas, marcar como lidas e, no painel Admin, envio em massa para usuários.
Principais Recursos
- Notificações in-app via canal Database
- Endpoint de fetch de não lidas (AJAX/JSON) — últimas 5 com contagem
- Marcação de notificação individual como lida
- Centro de notificações no Admin com envio em massa
- Dados estruturados: title, message, type, icon, color, action_url
Controllers
| Controller | Descrição |
|---|---|
| NotificationController | fetchUnread, markAsRead — usado por polling no layout |
| AdminNotificationController | CRUD de notificações, envio em massa, busca de usuário (admin/notifications) |
Integrações
- Todos os módulos — Qualquer módulo pode disparar notificações via
$user->notify(new AlgumaNotificacao($data)) - PanelUser, PanelAdmin, PanelSuporte — Exibem sino de notificações e redirecionam conforme role