feat: bootstrap project
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
# US03 - Detalhe e Edição de Beneficiário (Admin)
|
||||
|
||||
**Como** Administrador do RefoodOne
|
||||
**Quero** visualizar, criar e editar as informações de um beneficiário específico
|
||||
**Para** manter os dados dos beneficiários atualizados no sistema.
|
||||
|
||||
## Descrição do Fluxo
|
||||
Este ecrã serve dois propósitos:
|
||||
1. **Criação**: Acedido através do botão "Novo Beneficiário" na listagem (US02), abrindo o formulário vazio para preenchimento.
|
||||
2. **Edição/Visualização**: Acedido através do botão de ação "Editar" na listagem (US02), abrindo o formulário pré-preenchido com os dados do beneficiário selecionado.
|
||||
|
||||
## Critérios de Aceitação
|
||||
|
||||
### 1. Interface Gráfica (UI)
|
||||
- **Campos do Formulário**:
|
||||
- **Número** (obrigatório, numérico único - identificador do beneficiário no sistema)
|
||||
- **Nome** (obrigatório, texto)
|
||||
- **Contacto** (obrigatório, número de telefone/telemóvel válido)
|
||||
- **Nº Pessoas do Agregado** (obrigatório, numérico, mínimo 1)
|
||||
- **Observações** (opcional, área de texto livre para notas adicionais)
|
||||
- **Estado** (Ativo / Inativo - apenas na edição)
|
||||
- **Botões de Ação**:
|
||||
- **Guardar** (submete o formulário e guarda os dados)
|
||||
- **Cancelar** (volta para a listagem sem guardar alterações)
|
||||
|
||||
### 2. Comportamento e Regras de Negócio
|
||||
- Apenas utilizadores com a função **Admin** podem aceder/gravar neste ecrã.
|
||||
- **Validações**:
|
||||
- O campo **Número** deve ser único na base de dados. Se o Administrador tentar guardar um número já existente, o sistema deve exibir um aviso claro em PT-PT.
|
||||
- Todos os campos obrigatórios devem ser validados antes de permitir guardar.
|
||||
- **Redirecionamento**:
|
||||
- Após guardar com sucesso (inserir ou atualizar), o sistema deve redirecionar o utilizador de volta para a listagem de beneficiários (US02) com uma mensagem de sucesso (ex: *"Beneficiário guardado com sucesso"*).
|
||||
- Clicar em Cancelar deve redirecionar de volta para a listagem (US02) sem efetuar qualquer alteração.
|
||||
|
||||
### 3. Integração de Dados / Segurança
|
||||
- As operações de escrita (INSERT/UPDATE) devem ser efetuadas de forma segura na base de dados SQLite através do Drizzle ORM.
|
||||
- O processamento do formulário deve ser feito inteiramente no servidor (`+page.server.ts` actions).
|
||||
Reference in New Issue
Block a user