27 lines
2.0 KiB
Markdown
27 lines
2.0 KiB
Markdown
# US11 - Ajustes de Navegação (Menu Entregas e Gestão)
|
|
|
|
**Como** Utilizador do RefoodOne
|
|
**Quero** que o menu "Entregas" seja exibido diretamente na barra de navegação principal e que o menu "Gestão" (dropdown) seja visível apenas para Administradores (role `admin`)
|
|
**Para** otimizar o acesso rápido dos voluntários e gestores de turno à funcionalidade de entregas, mantendo os painéis administrativos visíveis apenas para os administradores.
|
|
|
|
## Descrição do Fluxo
|
|
Ao fazer login na aplicação:
|
|
- Um utilizador com o perfil **Administrador (Admin)** visualiza a opção **Gestão** (que contém os submenus **Beneficiários** e **Turnos**) e, ao lado desta, a opção **Entregas** exposta diretamente.
|
|
- Um utilizador com o perfil **Gestor de Turno** ou **Voluntário** visualiza apenas a opção **Entregas** diretamente exposta no cabeçalho principal. O menu **Gestão** fica ocultado para estes utilizadores.
|
|
|
|
## Critérios de Aceitação
|
|
|
|
### 1. Interface Gráfica (UI)
|
|
- **Menu Entregas**: Deve ser um link principal exposto diretamente no cabeçalho de navegação (navbar), posicionado ao lado do menu Gestão para administradores.
|
|
- **Menu Gestão (Dropdown)**:
|
|
- Fica visível **apenas** para utilizadores com o perfil de administrador (`role === 'admin'`).
|
|
- Passa a conter no seu submenu dropdown apenas as opções **Beneficiários** e **Turnos**.
|
|
- **Idioma**: Toda a barra de navegação deve continuar a utilizar termos em PT-PT.
|
|
|
|
### 2. Comportamento e Regras de Negócio
|
|
- Utilizadores com perfil `shift_manager` e `volunteer` não devem ter acesso visual ao menu Gestão.
|
|
- A proteção de rotas no servidor (`hooks.server.ts`) deve continuar a garantir que apenas `admin` aceda a `/admin/beneficiarios`, e que apenas `admin` e `shift_manager` acedam a `/admin/turnos`.
|
|
|
|
### 3. Integração de Dados
|
|
- O cabeçalho de navegação (`+layout.svelte`) lê o perfil de utilizador (`data.user.role`) a partir dos dados carregados do servidor para aplicar as regras de visibilidade.
|