Widget prenotazioni appuntamenti advanced in Formio
User stories
- Come cittadino voglio poter prenotare un appuntamento tramite un widget Formio invece che tramite un widget statico, in modo da avere un’interfaccia uniforme e integrata.
- Come developer voglio trasformare il widget statico “Prenotazione appuntamento advanced” in un componente Formio custom, così da poterlo gestire e configurare attraverso i form Formio.
- Come admin voglio che la selezione degli orari avvenga tramite un componente dedicato, collegato alle API del core, in modo da garantire coerenza con gli slot effettivamente disponibili.
Criteri di accettazione
- Il widget statico “Prenotazione appuntamento advanced” viene sostituito con un componente Formio custom.
- Creata la logica per la selezione degli orari tramite il nuovo componente.
- Il componente deve utilizzare esclusivamente le API del core per recuperare disponibilità, giorni e slot.
- Verificare che le API siano disponibili e documentate (endpoint orari/slot).
- Il nuovo widget è integrabile in un form Formio tramite configurazione da admin.
- Garantita la retrocompatibilità con le prenotazioni già esistenti.
Casi di test
Test
- autenticarsi sul sito e dal profilo impostare una email per verificare che arrivino le email
- come utente autenticato andare alla pagina.
- Arrivo allo step della scelta dell'ufficio e luogo, se il servizio ha un solo ufficio lo trovo preselezionato altrimenti devo selezionarlo e vado avanti
- Se il sito è configurato con vista calendario vedo il calendario con la settimana della prima disponibilità
- Non seleziono nulla e vado avanti mi da errore
- Seleziono una data e vado avanti
- Vedo il campo servizio pre popolato e readonly, compilo il dettaglio e vado avanti
- Da autenticato vedo i miei dati, se anonimo no e li compilo e vado avanti
- Vedo il riepilogo con tutti i dati precedentemente selezionati ed invio la pratica senza errori
- Dopo l'invio vedo la landing con tutti i miei dati e il codice dell'appuntamento se previsto
- Mi arriva la email
- Come operatore controllo che l'appuntamento sia stato creato
- Ripetere tutti i passaggi da anonimo
Test con servizio preselezionato
- autenticarsi sul sito e dal profilo impostare una email per verificare che arrivino le email
- come utente autenticato andare alla pagina.
- Arrivo allo step della scelta dell'ufficio e luogo, se il servizio ha un solo ufficio lo trovo preselezionato altrimenti devo selezionarlo e vado avanti
- Se il sito è configurato con vista calendario vedo il calendario con la settimana della prima disponibilità
- Non seleziono nulla e vado avanti mi da errore
- Seleziono una data e vado avanti
- Vedo il campo servizio pre popolato e readonly, compilo il dettaglio e vado avanti
- Da autenticato vedo i miei dati, se anonimo no e li compilo e vado avanti
- Vedo il riepilogo con tutti i dati precedentemente selezionati ed invio la pratica senza errori
- Dopo l'invio vedo la landing con tutti i miei dati e il codice dell'appuntamento se previsto
- Mi arriva la email
- Come operatore controllo che l'appuntamento sia stato creato
- Ripetere tutti i passaggi da anonimo
Test SELECT
- Dal sito impostare la visualizzazione come select e rigenerare la cache dei calendari
- Ripetere tutti i passaggi, nello step del calendario vedo le select mese anno, girono d orario
- Completo la pratica ed invio senza errori
- Vedo il riepilogo e mi arriva la email
- Ripetere tutti i passaggi da anonimo
TEST Appuntamento scaduto
- Creare un appuntamento e attendere che scada, riandare sulla pratica e mi da un warning che mi dice che l' appuntamento è scaduto e mi fa selezionare un nuovo slot
Edited by Sabato