Beschreibung des Projekts und der Daten

This commit is contained in:
Tom Irgang 2023-04-16 11:18:44 +02:00
parent 87ee9e5c07
commit abf0a3c078
7 changed files with 180 additions and 0 deletions

5
.vscode/settings.json vendored Normal file
View file

@ -0,0 +1,5 @@
{
"cSpell.words": [
"Reparateur"
]
}

14
RepApp.code-workspace Normal file
View file

@ -0,0 +1,14 @@
{
"folders": [
{
"path": "."
}
],
"settings": {
"cSpell.words": [
"Reparateur",
"Reparateure",
"Reparateurs"
]
}
}

1
arch/.$RepAppDaten.bkp Normal file
View file

@ -0,0 +1 @@
<mxfile host="Electron" modified="2023-04-16T09:14:55.311Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/20.3.0 Chrome/104.0.5112.114 Electron/20.1.3 Safari/537.36" etag="VdVlU14mRpVT0U7eWAhG" version="20.3.0" type="device"><diagram id="C5RBs43oDa-KdzZeNtuy" name="Page-1">7Zzbcto6FIafhstmsGUOuQwmSbtL0u6SlLR3Kha2dmSLyiIcnr4SyBhHDDiJXZHZmmEGtCwba32S1q8lQwP48eKawWl0QwNEGm4zWDRAv+G6DvC64k1alhtLt6MMIcOBqpQbhniFlLGprDMcoLRQkVNKOJ4WjWOaJGjMCzbIGJ0Xq00oKX7rFIZIMwzHkOjWEQ54pFrhdnL7R4TDKPtmp32+ORLDrLJqSRrBgM53TOCyAXxGKd98ihc+ItJ5mV9Gn5YjMnhsX//zb/ob3vc+391+/7C52NVLTtk2gaGEv/rSn+fzqffFxYvhz0XQSm7juDP64KrGpnyZOQwFwn+qSBmPaEgTSC5za4/RWRIgedmmKOV1BpROhdERxv8Q50vVGeCMU2GKeEzUUdEMtnzYLfyQFztrZcX+Ql18U1qqUkk/KH+ldMbG6EDjFVcOWYj4gXpOa1NRemanUyk3XyMaI3GXogJDBHL8VOx5UHXgcFsvhyQ+KE4vYOa5ltlRZuC0mKnbfoJkpr7pGxI+gRzNmEYzneOYwERim9CEZ2ClN8cRJsEALulMNj7lcPyYlXoRZXgl6sMMmTjMuAIKmoUaQ3mmuiZDqajzNSPkPDPdwEWh4gCmPLsbSgicpvjX+v7kibHggpMe5ZzGr+oAT4hxtDhITB1tN5VTVWDysvI8n+YdT9mi3Sk+m9Arp+xolG9hjDS+ooF8jYfRR+RTQpmwJ3QDHBPyzAQJDhNRJGgiT5MewiK+XShzjINgPcTTKRzjJBysq/W93PJNtV2aqDh9QtZhLBInInGF3pTihK990eqJl/COL8d1S9yrL8pOXhYvWZ1xnybi9iFeI0WiR8yR7BVimuGQw1/b/qrDPzg8jsNXsEFJ1qAu1K6G+gZiYlFXj7ptGjXQUH8KLOjqQZ8bB901Kqy22smIsPLep7DytMH5hYUwwSnk1Cqr1ymrblFYuc2WaWHVssLqdZOwV5r9qQirthVWfwm1cWHVscLqr4A2LqxcI8KqYoHULSmQHPekBFJXG2Q+nOih0yqjMsrI84rS6ARyTuca3z7ks9jOo0fn0W5p+qeijbI9tcJqh1vU1aM2ro0cPZdsxVEdpI2Lo0wv7JC+QyzGiY3RlcTodtkYvX1k4U2IwX168XvidlajQf9h+HA5nMd7dv/sWN6DtMTw3gyWE47Q+maBlNsWd2m27ytK6+nnfF/fQq8FuvmArWejrxFr+KBx4XELvRbo2/WzuRyWnpi+j9gKYbv+qgV4yzhwPT3dk07YjHMcWu61cO+a5g4cDez/5ykAR81y7+6ZWMPQzlrNzi4456wJwBF069JXxLBwAWKGeXrgpHg6erTNNZaG2iZGDiJTR58/11F686KaxMhezHtjLOYrwdpG16PRtV26C5xMfkTfjrSPd9QE23x2RN+bPDCJW+RvR248N+LqCbErFBE7ndeC+wSyInq++4qSUArafTtYFnoF0M1nRvQEqE171sPaeDbEdS3Y6pdiHfBsKWZ8IgdZpm5nJ0sqtZ4/fpww+Rt7u+iuYtHtlFXl9S26gR6z7f7Viyby7WB5PwtvcPCHUpZ6LdSNr8CBrtTs8wk1Qze+Bgd67vxqbwS3tN9O2/wSHOg59IuEz6l9MLwe4MaX356u3+xPPmrDXeMKXBTzfw9bH9v5DzZw+Qc=</diagram></mxfile>

1
arch/RepAppDaten Normal file
View file

@ -0,0 +1 @@
<mxfile host="Electron" modified="2023-04-16T09:15:28.352Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/20.3.0 Chrome/104.0.5112.114 Electron/20.1.3 Safari/537.36" etag="XfqMA80unN0asv9zuIrR" version="20.3.0" type="device"><diagram id="C5RBs43oDa-KdzZeNtuy" name="Page-1">7Zzbcto6FIafhstmsGUOuQwmSbtL0u6SlLR3Kha2dmSLyiIcnr4SyBhHDDiJXZHZmmEGtCwba32S1q8lQwP48eKawWl0QwNEGm4zWDRAv+G6DvC64k1alhtLt6MMIcOBqpQbhniFlLGprDMcoLRQkVNKOJ4WjWOaJGjMCzbIGJ0Xq00oKX7rFIZIMwzHkOjWEQ54pFrhdnL7R4TDKPtmp32+ORLDrLJqSRrBgM53TOCyAXxGKd98ihc+ItJ5mV9Gn5YjMnhsX//zb/ob3vc+391+/7C52NVLTtk2gaGEv/rSn+fzqffFxYvhz0XQSm7juDP64KrGpnyZOQwFwn+qSBmPaEgTSC5za4/RWRIgedmmKOV1BpROhdERxv8Q50vVGeCMU2GKeEzUUdEMtnzYLfyQFztrZcX+Ql18U1qqUkk/KH+ldMbG6EDjFVcOWYj4gXpOa1NRemanUyk3XyMaI3GXogJDBHL8VOx5UHXgcFsvhyQ+KE4vYOa5ltlRZuC0mKnbfoJkpr7pGxI+gRzNmEYzneOYwERim9CEZ2ClN8cRJsEALulMNj7lcPyYlXoRZXgl6sMMmTjMuAIKmoUaQ3mmuiZDqajzNSPkPDPdwEWh4gCmPLsbSgicpvjX+v7kibHggpMe5ZzGr+oAT4hxtDhITB1tN5VTVWDysvI8n+YdT9mi3Sk+m9Arp+xolG9hjDS+ooF8jYfRR+RTQpmwJ3QDHBPyzAQJDhNRJGgiT5MewiK+XShzjINgPcTTKRzjJBysq/W93PJNtV2aqDh9QtZhLBInInGF3pTihK990eqJl/COL8d1S9yrL8pOXhYvWZ1xnybi9iFeI0WiR8yR7BVimuGQw1/b/qrDPzg8jsNXsEFJ1qAu1K6G+gZiYlFXj7ptGjXQUH8KLOjqQZ8bB901Kqy22smIsPLep7DytMH5hYUwwSnk1Cqr1ymrblFYuc2WaWHVssLqdZOwV5r9qQirthVWfwm1cWHVscLqr4A2LqxcI8KqYoHULSmQHPekBFJXG2Q+nOih0yqjMsrI84rS6ARyTuca3z7ks9jOo0fn0W5p+qeijbI9tcJqh1vU1aM2ro0cPZdsxVEdpI2Lo0wv7JC+QyzGiY3RlcTodtkYvX1k4U2IwX168XvidlajQf9h+HA5nMd7dv/sWN6DtMTw3gyWE47Q+maBlNsWd2m27ytK6+nnfF/fQq8FuvmArWejrxFr+KBx4XELvRbo2/WzuRyWnpi+j9gKYbv+qgV4yzhwPT3dk07YjHMcWu61cO+a5g4cDez/5ykAR81y7+6ZWMPQzlrNzi4456wJwBF069JXxLBwAWKGeXrgpHg6erTNNZaG2iZGDiJTR58/11F686KaxMhezHtjLOYrwdpG16PRtV26C5xMfkTfjrSPd9QE23x2RN+bPDCJW+RvR248N+LqCbErFBE7ndeC+wSyInq++4qSUArafTtYFnoF0M1nRvQEqE171sPaeDbEdS3Y6pdiHfBsKWZ8IgdZpm5nJ0sqtZ4/fpww+Rt7u+iuYtHtlFXl9S26gR6z7f7Viyby7WB5PwtvcPCHUpZ6LdSNr8CBrtTs8wk1Qze+Bgd67vxqbwS3tN9O2/wSHOg59IuEz6l9MLwe4MaX356u3+xPPmrDXeMKXBTzfw9bH9v5DzZw+Qc=</diagram></mxfile>

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 14 KiB

145
docs/index.md Normal file
View file

@ -0,0 +1,145 @@
# Projekt RepApp
RepApp ist eine Web App um Reparaturen im Rahmen eines Repair-Cafés zu organisieren.
## Benutzer
### Gast
Ein Gast ist ein Gerätebesitzer der ein oder mehrere Geräte zur Reparatur anmelden möchte.
### Reparateur
Ein Reparateur ist ein Mitglied des Repair-Cafés der die Gerätebesitzer bei der Reparatur ihrer Geräte unterstützt.
### Organisator
Ein Organisator ist Mitglied des Repair-Cafés der die Termine mit den Gästen organisiert und die Reparateure zu den Geräten zuordnet.
## Use-Cases
### Gast
- Als Gast möchte ich einen Termin für eine Reparatur vereinbaren. Dafür Stelle ich Informationen zum Gerät und eine Fehlerbeschreibung zur Verfügung.
- Als Gast möchte ich eine Bestätigung für eine Reparaturanfrage bekommen.
- Als Gast möchte ich eine Terminbenachrichtigung oder eine Absage bekommen.
- Als Gast möchte ich mein angemeldetes Gerät und dessen Status einsehen können.
- Als Gast möchte ich Rückfragen zum Gerät empfangen und diese beantworten können.
- Als Gast möchte ich ein Gerät für eine Folgereparatur anmelden können
### Reparateur
- Als Reparateur möchte ich die angemeldeten Geräte ansehen können.
- Als Reparateur möchte ich mir ein angemeldetes Gerät zuordnen können.
- Als Reparateur möchte ich ein angemeldetes Gerät ablehnen können.
- Als Reparateur möchte ich Rückfragen zum Gerät stellen können.
- Als Reparateur möchte ich eine Benachrichtigung bekommen wenn eine Rückfrage beantwortet wird.
- Als Reparateur möchte ich eine Benachrichtigung bekommen wenn mir ein Gerät zugeordnet wird.
- Als Reparateur möchte ich mich für ein Repair-Café anmelden können.
- Als Reparateur möchte ich mich für ein Repair-Café abmelden können.
### Organisator
- Als Organisator möchte ich ein Café anmelden können.
- Als Organisator möchte ich die Terminanfragen einsehen können.
- Als Organisator möchte ich eine Rückfrage zu einer Terminanfrage stellen können.
- Als Organisator möchte ich eine Terminanfrage ablehnen können.
- Als Organisator möchte ich eine Terminanfrage zu einem Termin zuordnen können.
- Als Organisator möchte ich einen Terminanfrage zu einem Reparateur zuordnen können.
## Daten
![Datenmodell](RepAppDaten.drawio.svg "Datenmodell")
### Cafe
Ein Cafe ist ein Repair-Café Termin.
Attribute:
- Datum: Datum der Veranstaltung
- Ort: Beschreibung wo das Repair-Café stattfindet
Technische Attribute:
- Id: Aufsteigende Nummer des Repair-Café
Annahmen:
- Ein Repair-Café beginnt um 13:00 Uhr.
- Ein Repair-Café hat drei aufeinanderfolgende Slots mit je einer Stunde
### Reparateur
Ein Reparateur ist ein Mitglied des Repair-Cafés das Gäste bei der Reparatur ihrer Geräte unterstützt.
Attribute:
- Name: Name des Reparateurs
- Mail: eMail-Adresse für Benachrichtigungen
Technische Attribute:
- Id: Aufsteigende Nummer des Reparateurs
Annahmen:
- Reparatuere sind immmer verfügbar, d.h. jeder Reparatuer wird zu einem neuen Repair-Café Termin automatisch hinzugefügt.
- Reparatuere können alles reparieren. Greäte Kategorien, Skills, ... können später hinzugefügt werden.
### Organisator
Ein Organisator ist ein Mitglied des Repair-Cafés das Reparaturtermine mit den Gästen vereinbart.
Attribute:
- Name: Name des Organisators
- Mail: eMail-Adresse für Benachrichtigungen
Technische Attribute:
- Id: Aufsteigende Nummer des Organisators
### Gerät
Ein Gerät ist ein defekter Gegenstand der im Rahmen eines Repair-Cafés repariert werden soll.
Attribute:
- Besitzer: Name des Besitzers
- Mail: eMail-Adresse des Besitzers für Benachrichtigungen
- Gerät: Bezeichnung des Geräts
- Fehler: Beschreibung des Defekts
- Folgetermin: Boolesches Flag das anzeigt ob es sich um einen Folgetermin handelt.
Technische Attribute:
- Id: SHA256 Hash aus Gerät + Besitzer + Timestamp
Annahmen:
- Es gibt nur eine Geräteanmeldung pro Besitzer. Mehrere Geräte pro Besitzer kann später hinzugefügt werden.
- Für einen Folgetermin werden alle Daten neu eingegeben. Eine Folgereparatur auf Basis der ersten Anmeldung kann später hinzugefügt werden.
### Termin
Ein Termin ist eine Zuordnung von einem Gerät zu einem Zeitslot der Repair-Café Veranstaltung und einem Reparateur. Ein Termin ist bestätigt, wenn eine Organisator eine Termineinladung gesendet hat und er Gast diese bestätigt hat.
Attribute:
- Uhrzeit: Uhrzeit des Termins
- Betätigt: Boolesches Flag. True wenn eine Einladung gesendet und bestätigt wurde.
Technische Attribute:
- Id: Aufsteigende Nummer des Termins
- CafeId: Referenz zum Cafe
- ReparateurId: Referenz um Reparateur oder NULL
- GerätId: Referenz zum Gerät
### Rückfrage
Eine Rückfrage ist eine Zuordnung von einem Gerät zu einem Organisator oder einem Reparateur.
Attribute:
- Frage: Frage zum Gerät oder Defekt
- Antwort: Antwort des Gastes
- Datum: Datum der Erstellung der Rückfrage
Technische Attribute:
- OrganisatorId: Referenz zum Organisator oder NULL
- ReparateurId: Referenz zum Reparateur oder NULL
- GerätId: Referenz zum Gerät
## Abläufe
## Ansichten

10
mkdocs.yml Normal file
View file

@ -0,0 +1,10 @@
site_name: RepApp - Makespace Repair-Café Hilpoltstein
site_url: https://makes-hacks-hip.github.io/RepApp/
nav:
- 'Repair-Café & Makespace':
- Repair-Café: https://www.repaircafe-hilpoltstein.de
- Makespace: https://makes-hacks-hip.de
- Makerspace@Github: https://makes-hacks-hip.github.io
theme: readthedocs
repo_url: https://github.com/makes-hacks-hip/RepApp/
edit_uri: edit/main/docs/