# Instalar: Sino de Notificações + Auditoria + Fotos Antes/Depois

## 1. Ficheiros novos

```
app/Livewire/NotificationBell.php
resources/views/livewire/notification-bell.blade.php

app/Livewire/Admin/AuditLogIndex.php
resources/views/livewire/admin/audit-log-index.blade.php

database/migrations/2026_08_28_000001_add_tag_to_media_files_table.php
```

## 2. Ficheiros a substituir

```
app/Notifications/MaintenanceRequestReceivedNotification.php   (+ canal database)
app/Models/MediaFile.php                                          (+ campo tag)
app/Services/FileStorageService.php                                (+ parâmetro tag)
app/Livewire/Admin/WorkOrderShow.php                                 (+ upload fotos)
resources/views/livewire/admin/work-order-show.blade.php
resources/views/layouts/app.blade.php                                 (sino + link auditoria)
routes/web.php
```

## 3. Passos

```bash
cd ~/public_html/app.amimak.co.mz
php artisan migrate
php artisan config:clear
php artisan route:clear
php artisan view:clear
```

## 4. O que ganhaste

### Sino de notificações 🔔
No canto superior direito (desktop) ou dentro do menu (mobile) — tanto
para a equipa interna como para o portal do cliente. Mostra contagem de
não-lidas, lista as últimas 10, marca como lida ao clicar (ou todas de
uma vez), e liga directamente ao pedido relevante. Actualiza sozinho a
cada 30 segundos.

### Auditoria (`/admin/audit-logs`)
Só para quem tem a permissão `audit_logs.view` (por omissão, só `Admin`).
Lista todas as criações/alterações/remoções registadas automaticamente
pelo sistema (Imóveis, Pedidos, Work Orders, Orçamentos, Facturas) —
quem fez, quando, de que IP, com "Ver detalhes" para veres exactamente o
que mudou (antes/depois em JSON). Filtra por tipo de entidade e período.

### Fotos Antes/Depois na Work Order
No ecrã da Work Order (`/admin/work-orders/{id}`), o técnico atribuído (ou
quem tenha permissão `work_orders.execute`) pode agora carregar fotos
separadas em **Antes** e **Depois** — ficam organizadas em duas colunas,
sempre visíveis mesmo depois de a WO estar fechada.

## 5. Testar

1. Cria um pedido novo via portal → confirma que o sino do Admin mostra
   uma notificação nova
2. Aprova o pedido → clica na notificação → confirma que abre no sítio certo
3. `/admin/audit-logs` → confirma que aparece o registo da aprovação →
   "Ver detalhes" → confirma que mostra o `status` antigo e novo
4. Numa Work Order `IN_PROGRESS`, carrega uma foto "Antes" e outra
   "Depois" → confirma que aparecem separadas
