Merge pull request #10 from makes-hacks-hip/fixed_workflows_and_confirmations

Fix workflows and extend data model
This commit is contained in:
Thomas Irgang 2023-04-20 20:54:34 +02:00 committed by GitHub
commit 2196ce7b1e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -26,6 +26,9 @@ Ein Organisator ist Mitglied des Repair-Cafés das die Termine mit den Gästen o
- [ ] Als Gast möchte ich mein angemeldetes Gerät und dessen Status einsehen können. (A4)
- [ ] Als Gast möchte ich Rückfragen zum Gerät empfangen und diese beantworten können. (A5)
- [ ] Als Gast möchte ich ein Gerät für eine Folgereparatur anmelden können. (A6)
- [ ] Als Gast möchte ich meine Daten ansehen können. (A21)
- [ ] Als Gast möchte ich meine Daten löschen können. (A22)
- [ ] Als Gast möchte ich eine Geräteanmeldung löschen können. (A23)
### Reparateur
@ -37,6 +40,7 @@ Ein Organisator ist Mitglied des Repair-Cafés das die Termine mit den Gästen o
- [ ] Als Reparateur möchte ich eine Benachrichtigung bekommen wenn mir ein Gerät zugeordnet wird. (A12)
- [ ] Als Reparateur möchte ich mich für ein Repair-Café anmelden können. (A13)
- [ ] Als Reparateur möchte ich mich für ein Repair-Café abmelden können. (A14)
- [ ] Als Reparateur möchte ich benachrichtigt werden wenn ein Gast eine mir zugeordnete Geräteanmeldung löscht. (A25)
### Organisator
@ -46,6 +50,7 @@ Ein Organisator ist Mitglied des Repair-Cafés das die Termine mit den Gästen o
- [ ] Als Organisator möchte ich ein Geräte ablehnen können. (A18)
- [ ] Als Organisator möchte ich ein Geräte zu einem Termin zuordnen können. (A19)
- [ ] Als Organisator möchte ich einen Reparateur zu einem Termin zuordnen können. (A20)
- [ ] Als Organisator möchte ich benachrichtigt werden wenn ein Gast eine Geräteanmeldung löscht. (A24)
## Daten
@ -96,6 +101,7 @@ Attribute:
- Telefon: Festnetz oder Mobilnummer des Gastes
- Wohnort: Wohnort des Gastes
- Mail: eMail-Adresse des Gastes für Benachrichtigungen
- Bestätigt: Ein boolesches Flag das anzeigt ob der Gast seine eMail-Adresse bestätigt hat.
Technische Attribute:
@ -110,16 +116,13 @@ Attribute:
- Gerät: Bezeichnung des Geräts
- Fehler: Beschreibung des Defekts
- Folgetermin: Boolesches Flag das anzeigt ob es sich um einen Folgetermin handelt.
- Bestätigt: Ein boolesches Flag das anzeigt ob der Gast die Greäteanmeldung bestätigt hat.
Technische Attribute:
- Identifier: SHA256 Hash aus Gerät + Gast + Timestamp
- GastId: Referenz zum Gast der das Gerät besitzt
Annahmen:
- Für einen Folgetermin werden alle Daten neu eingegeben. Eine Folgereparatur auf Basis der ersten Anmeldung kann später umgesetzt werden.
### Termin
Ein Termin ist eine Zuordnung von einem Gerät zu einem Zeitslot der Repair-Café Veranstaltung und einem Reparateur.
@ -128,7 +131,7 @@ Ein Termin ist bestätigt, wenn eine Organisator eine Termineinladung gesendet h
Attribute:
- Uhrzeit: Uhrzeit des Termins
- Betätigt: Boolesches Flag. True wenn eine Einladung gesendet und bestätigt wurde.
- Betätigt: Boolesches Flag. True wenn die Einladung vom Gast bestätigt wurde.
Technische Attribute:
@ -151,6 +154,7 @@ Technische Attribute:
- OrganisatorId: Referenz zum Organisator oder NULL
- ReparateurId: Referenz zum Reparateur oder NULL
- GerätId: Referenz zum Gerät
- Beantwortet: Boolesches Flag. True wenn die Einladung vom Gast bestätigt wurde.
### Kandidat
@ -158,7 +162,7 @@ Ein Kandidat ist ein Geräte ohne festen Termin.
Diese Geräte werden von den Gästen zu Beginn des Repair-Café gebracht und am Ende abgeholt.
Falls ein Reparateur Zeit hat kann er eines dieser Geräte reparieren.
- Betätigt: Boolesches Flag. True wenn eine Einladung gesendet und bestätigt wurde.
- Betätigt: Boolesches Flag. True wenn die Einladung vom Gast bestätigt wurde.
Technische Attribute:
@ -170,32 +174,70 @@ Technische Attribute:
### Landing Page: Repair-Cafés (S1)
Liste der Repair-Café Termine
Diese Seite zeigt eine Liste der zukünfigten Repair-Café Termine.
Sie enthält pro Repair-Café einen Knopf um ein Gerät für dieses Repair-Café anzumelden.
#### Sicherheit
Die Seite ist ohne Zugangsbeschränkung oder Anmeldung erreichbar.
### Gerät anmelden (S2)
Das Formular zum anmelden der Geräte hat die Felder `eMail-Adresse`, `Gerätebezeichnung`, `Fehlerbeschreibung`, eine Kontrollkästchen `Folgetermin` und einen Knopf `Absenden` zum senden des Formulars.
Diese Seite zeigt das Formular zum anmelden der Geräte.
Das Formular hat die Felder `eMail-Adresse`, `Gerätebezeichnung`, `Fehlerbeschreibung`, eine Kontrollkästchen `Folgetermin` und einen Knopf `Absenden` zum senden des Formulars.
Das Repair-Café zu dem die Anmeldung gehört ist über eine ID in der URL der Seite festgelegt.
#### Sicherheit
Die Seite ist ohne Zugangsbeschränkung oder Anmeldung erreichbar.
### Gast anmelden (S3)
Das Formular zum anmelden eines neuen Gastes hat die Felder `Name`, `Telefon`, `Wohnort` und einen Knopf `Absenden` zum senden des Formulars.
Diese Seite zeigt das Formular zum anmelden eines neuen Gastes.
Das Formular hat die Felder `Name`, `Telefon`, `Wohnort` und einen Knopf `Absenden` zum senden des Formulars.
### Anmeldebestätigung (S4)
Die eMail-Adresse und das Gerät zu dem die Gast-Kontaktdaten gehören ist über IDs in der URL der Seite festgelegt.
Die Anmeldebestätigung zeigt die Geräte und Gast Daten erneut an, zusammen mit der Information dass das Gerät angelegt.
Weiter enthält die Ansicht einen Link zur Geräte Detailseite und einen Link zur Gast Detailseite.
#### Sicherheit
Die Seite ist ohne Zugangsbeschränkung oder Anmeldung erreichbar.
### Bestätigung gesendet (S4)
Die Seite Bestätigung gesendet zeigt einen Hinweis dass eine eMail gesendet wurde und die Anmeldung des Gerätes durch einen Klick auf einen Link in der eMail bestätigt werden muss.
Die eMail-Bestätigung wird während des Aufrufs dieser Seite gesendet.
Das Repair-Café, der Gast und das Gerät sind über IDs in der URL der Seite festgelegt.
#### Sicherheit
Die Seite ist ohne Zugangsbeschränkung oder Anmeldung erreichbar.
### Geräte Detailseite (S5)
Die Geräte Detailseite hat die Felder `Gerätebezeichnung`, `Fehlerbeschreibung` und eine Kontrollkästchen `Folgetermin` die mit den Angaben des Gastes ausgefüllt sind.
Weiter enthält die Seite einen Knopf `Aktualisieren` der das Formular absendet und die Daten aktualisiert und einen Link zur Detailseite des Gastes.
Das Gerät ist über IDs in der URL der Seite festgelegt.
#### Sicherheit
Die Seite ist ohne Zugangsbeschränkung oder Anmeldung erreichbar.
### Gast Detailseite (S6)
Die Gast Detailseite hat die Felder `Name`, `eMail`, `Telefon` und `Wohnort` die mit den Angaben des Gastes ausgefüllt sind.
Weiter enthält die Seite einen Knopf `Aktualisieren` der das Formular absendet.
Die Ansicht enthält auch eine Liste mit Links zu allen Geräten die der Gast angemeldet hat.
Der Gast ist über IDs in der URL der Seite festgelegt.
#### Sicherheit
Die Seite enthält persönliche Daten und ist nur nach Anmeldung erreichbar.
## Abläufe
### Anmeldung eines defekten Gerätes
@ -204,25 +246,17 @@ Die Ansicht enthält auch eine Liste mit Links zu allen Geräten die der Gast an
Als neuer Gast der ein defekten Geräte anmelden möchte,
- gehe ich auf die Seite (S1) der Repair-Café Termine.
- dort klicke ich auf `Gerät anmelden` bei dem richtigen Repair-Café Termin.
- Der Link bringt mich auf eine neue Seite (S2) mit einem Formular.
- Das Formular hat die Felder `eMail-Adresse`, `Gerätebezeichnung` und `Fehlerbeschreibung` und eine Kontrollkästchen `Folgetermin`.
- Nachdem ich die Felder ausgefüllt habe klicke auf auf `Absenden`.
- Der Klick auf Absenden bringt mich zu einer neuen Seite (S3) mit einem Formular.
- Das Formular hat die Felder `Name`, `Telefon` und `Wohnort`.
- Nachdem ich die Felder ausgefüllt habe klicke auf auf `Absenden`.
- Der Link bringt mich auf eine neue Seite (S4) die bestätigt dass mein Gerät angemeldet wurde, die Geräte Daten und meine Daten zur Bestätigung anzeigt und einen Link zu einer `Geräte Detailseite` (S4) und einen Link zu einer `Gast Detailseite` (S6) hat.
- In meinem eMail Posteingang finde ich eine Bestätigung der Geräteanmeldung die ebenfalls den Link zur `Geräte Detailseite` und den Link zur `Gast Detailseite` enthält.
- gehe ich auf die Seite (S1) der Repair-Café Termine. Dort klicke ich auf `Gerät anmelden` bei dem richtigen Repair-Café Termin. Dieser Klick bringt mich auf die nächste Seite.
- Die nächste Seite (S2) enthält ein Formular mit den Feldern `eMail-Adresse`, `Gerätebezeichnung` und `Fehlerbeschreibung` und eine Kontrollkästchen `Folgetermin`. Nachdem ich die Felder ausgefüllt habe klicke auf auf `Absenden`. Dieser Klick bringt mich auf die nächste Seite.
- Die nächste Seite (S3) enthält ein Formular mit den Feldern `Name`, `Telefon` und `Wohnort`. Nachdem ich die Felder ausgefüllt habe klicke auf auf `Absenden`. Dieser Klick bringt mich auf die nächste Seite.
- Die nächste Seite (S4) weißt mich darauf hin dass eine eMail gesendet wurde und ich die Anmeldung über einen Klick in der eMail bestätigen muss.
- In meinem eMail Posteingang finde ich eine Bestätigung der Geräteanmeldung die ebenfalls einen Link zur `Geräte Detailseite` (S5) und einen Link zu meinen persönlichen Daten (S6) enthält.
#### Variante: Existierender Gast
#### Variante: Bekannter Gast (existierende eMail Adresse)
Als neuer Gast der ein defekten Geräte anmelden möchte,
Als bekannter Gast der ein defekten Geräte anmelden möchte,
- gehe ich auf die Seite (S1) der Repair-Café Termine.
- dort klicke ich auf `Gerät anmelden` bei dem richtigen Repair-Café Termin.
- Der Link bringt mich auf eine neue Seite (S2) mit einem Formular.
- Das Formular hat die Felder `eMail-Adresse`, `Gerätebezeichnung` und `Fehlerbeschreibung` und eine Kontrollkästchen `Folgetermin`.
- Nachdem ich die Felder ausgefüllt habe klicke auf auf `Absenden`.
- Der Link bringt mich auf eine neue Seite (S4) die bestätigt dass mein Gerät angemeldet wurde, die Geräte Daten und meine Daten zur Bestätigung anzeigt und einen Link zu einer `Geräte Detailseite` (S4) und einen Link zu einer `Gast Detailseite` (S6) hat.
- In meinem eMail Posteingang finde ich eine Bestätigung der Geräteanmeldung die ebenfalls den Link zur `Geräte Detailseite` und den Link zur `Gast Detailseite` enthält.
- gehe ich auf die Seite (S1) der Repair-Café Termine. Dort klicke ich auf `Gerät anmelden` bei dem richtigen Repair-Café Termin. Dieser Klick bringt mich auf die nächste Seite.
- Die nächste Seite (S2) enthält ein Formular mit den Feldern `eMail-Adresse`, `Gerätebezeichnung` und `Fehlerbeschreibung` und eine Kontrollkästchen `Folgetermin`. Nachdem ich die Felder ausgefüllt habe klicke auf auf `Absenden`. Dieser Klick bringt mich auf die nächste Seite.
- Die nächste Seite (S4) weißt mich darauf hin dass eine eMail gesendet wurde und ich die Anmeldung über einen Klick in der eMail bestätigen muss.
- In meinem eMail Posteingang finde ich eine Bestätigung der Geräteanmeldung die ebenfalls einen Link zur `Geräte Detailseite` (S5) und einen Link zu meinen persönlichen Daten (S6) enthält.