fix: correzioni critiche e checklist test manuali
CORREZIONI:
- Badge confrontato ESATTAMENTE come stringa (rimosso .lstrip("0"))
- Success modal si chiude quando arriva nuovo badge (fix dipendenze useCallback)
- Polling ogni 30s per invalidare sessione se server riparte
- Area carosello allargata per testi lunghi (es. russo)
DOCUMENTAZIONE:
- API_SPECIFICATION.md aggiornata: badge come stringa esatta
- Creata TEST_CHECKLIST.md con 22 test manuali
- Aggiornati piani backend e frontend
Badge sono STRINGHE, non numeri:
- "0008988288" != "8988288" (zeri iniziali significativi)
This commit is contained in:
@@ -39,6 +39,7 @@ VotoFocolari/
|
||||
├── backend-mock/
|
||||
│ ├── main.py # Entry point con argparse
|
||||
│ ├── Pipfile # Dipendenze Python
|
||||
│ ├── API_SPECIFICATION.md # Specifiche per backend reale
|
||||
│ ├── api/routes.py # Endpoint API
|
||||
│ ├── schemas/models.py # Modelli Pydantic
|
||||
│ └── data/
|
||||
@@ -65,14 +66,15 @@ VotoFocolari/
|
||||
1. **Login Validatore**: Passa badge + inserisci password → Sessione 30 min
|
||||
2. **Attesa Partecipante**: Schermata grande "Passa il badge"
|
||||
3. **Visualizzazione Utente**: Card con foto, nome, ruolo, stato ammissione
|
||||
4. **Conferma Ingresso**: Validatore ripassa il badge → Carosello benvenuto multilingua
|
||||
4. **Conferma Ingresso**: Validatore ripassa il badge → Carosello benvenuto multilingua (8s)
|
||||
|
||||
### Gestione RFID
|
||||
|
||||
- **Multi-pattern**: Supporta layout tastiera US (`;?`) e IT (`ò_`)
|
||||
- **Multi-pattern**: Supporta layout tastiera US (`;?`) e IT (`ò_`), con `\n` dopo fine sequenza
|
||||
- **Timeout 2.5s**: Per scansioni accidentali
|
||||
- **ESC annulla**: Scansione in corso
|
||||
- **Enter handling**: Gestito automaticamente
|
||||
- **Stesso badge ignorato**: Se passato più volte di seguito
|
||||
|
||||
### Sicurezza Sessioni
|
||||
|
||||
@@ -125,6 +127,7 @@ VotoFocolari/
|
||||
| Chiamate API | `frontend/src/services/api.ts` |
|
||||
| Endpoint backend | `backend-mock/api/routes.py` |
|
||||
| Dati mock utenti | `backend-mock/data/users_default.json` |
|
||||
| Specifiche API produzione | `backend-mock/API_SPECIFICATION.md` |
|
||||
| Configurazione Vite | `frontend/vite.config.ts` |
|
||||
|
||||
---
|
||||
@@ -142,6 +145,10 @@ VotoFocolari/
|
||||
|
||||
4. **NumLock**: Su desktop, viene mostrato un banner per ricordare di attivare NumLock.
|
||||
|
||||
5. **Badge Duplicati**: Se lo stesso badge viene passato più volte di seguito, viene ignorato (no ricaricamento).
|
||||
|
||||
6. **Success Modal Interrompibile**: Se durante il carosello di benvenuto si passa un nuovo badge, la modal si chiude e viene caricato subito il nuovo utente.
|
||||
|
||||
---
|
||||
|
||||
## TODO (da concordare con committenti)
|
||||
|
||||
Reference in New Issue
Block a user