Merge pull request #7 from makes-hacks-hip/2-ansicht-repair-cafés
index view, fix data folder issue
This commit is contained in:
commit
d074818447
7 changed files with 67 additions and 28 deletions
|
|
@ -10,6 +10,7 @@ RUN ln -sf /dev/stdout /var/log/nginx/access.log \
|
||||||
RUN mkdir -p /opt/app
|
RUN mkdir -p /opt/app
|
||||||
RUN mkdir -p /opt/app/pip_cache
|
RUN mkdir -p /opt/app/pip_cache
|
||||||
RUN mkdir -p /opt/app/rc_hip
|
RUN mkdir -p /opt/app/rc_hip
|
||||||
|
RUN mkdir -p /opt/app/rc_hip/data
|
||||||
|
|
||||||
COPY rc_hip /opt/app/rc_hip
|
COPY rc_hip /opt/app/rc_hip
|
||||||
RUN rm -f /opt/app/rc_hip/data/db.sqlite3
|
RUN rm -f /opt/app/rc_hip/data/db.sqlite3
|
||||||
|
|
|
||||||
|
|
@ -20,32 +20,32 @@ Ein Organisator ist Mitglied des Repair-Cafés das die Termine mit den Gästen o
|
||||||
|
|
||||||
### Gast
|
### Gast
|
||||||
|
|
||||||
- [ ] (A1) Als Gast möchte ich einen Termin für eine Reparatur vereinbaren.
|
- [ ] Als Gast möchte ich einen Termin für eine Reparatur vereinbaren. (A1)
|
||||||
- [ ] (A2) Als Gast möchte ich eine Bestätigung für eine Reparaturanfrage bekommen.
|
- [ ] Als Gast möchte ich eine Bestätigung für eine Reparaturanfrage bekommen. (A2)
|
||||||
- [ ] (A3) Als Gast möchte ich eine Terminbenachrichtigung oder eine Absage bekommen.
|
- [ ] Als Gast möchte ich eine Terminbenachrichtigung oder eine Absage bekommen. (A3)
|
||||||
- [ ] (A4) Als Gast möchte ich mein angemeldetes Gerät und dessen Status einsehen können.
|
- [ ] Als Gast möchte ich mein angemeldetes Gerät und dessen Status einsehen können. (A4)
|
||||||
- [ ] (A5) Als Gast möchte ich Rückfragen zum Gerät empfangen und diese beantworten können.
|
- [ ] Als Gast möchte ich Rückfragen zum Gerät empfangen und diese beantworten können. (A5)
|
||||||
- [ ] (A6) Als Gast möchte ich ein Gerät für eine Folgereparatur anmelden können
|
- [ ] Als Gast möchte ich ein Gerät für eine Folgereparatur anmelden können. (A6)
|
||||||
|
|
||||||
### Reparateur
|
### Reparateur
|
||||||
|
|
||||||
- [ ] (A7) Als Reparateur möchte ich die angemeldeten Geräte ansehen können.
|
- [ ] Als Reparateur möchte ich die angemeldeten Geräte ansehen können. (A7)
|
||||||
- [ ] (A8) Als Reparateur möchte ich mir ein angemeldetes Gerät zuordnen können.
|
- [ ] Als Reparateur möchte ich mir ein angemeldetes Gerät zuordnen können. (A8)
|
||||||
- [ ] (A9) Als Reparateur möchte ich ein angemeldetes Gerät ablehnen können.
|
- [ ] Als Reparateur möchte ich ein angemeldetes Gerät ablehnen können. (A9)
|
||||||
- [ ] (A10) Als Reparateur möchte ich Rückfragen zum Gerät stellen können.
|
- [ ] Als Reparateur möchte ich Rückfragen zum Gerät stellen können. (A10)
|
||||||
- [ ] (A11) Als Reparateur möchte ich eine Benachrichtigung bekommen wenn eine Rückfrage beantwortet wird.
|
- [ ] Als Reparateur möchte ich eine Benachrichtigung bekommen wenn eine Rückfrage beantwortet wird. (A11)
|
||||||
- [ ] (A12) Als Reparateur möchte ich eine Benachrichtigung bekommen wenn mir ein Gerät zugeordnet wird.
|
- [ ] Als Reparateur möchte ich eine Benachrichtigung bekommen wenn mir ein Gerät zugeordnet wird. (A12)
|
||||||
- [ ] (A13) 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é anmelden können. (A13)
|
||||||
- [ ] (A14) Als Reparateur möchte ich mich für ein Repair-Café abmelden können.
|
- [ ] Als Reparateur möchte ich mich für ein Repair-Café abmelden können. (A14)
|
||||||
|
|
||||||
### Organisator
|
### Organisator
|
||||||
|
|
||||||
- [ ] (A15) Als Organisator möchte ich ein Repair-Café anlegen können.
|
- [ ] Als Organisator möchte ich ein Repair-Café anlegen können. (A15)
|
||||||
- [ ] (A16) Als Organisator möchte ich die Geräte einsehen können.
|
- [ ] Als Organisator möchte ich die Geräte einsehen können. (A16)
|
||||||
- [ ] (A17) Als Organisator möchte ich eine Rückfrage zu einem Geräte stellen können.
|
- [ ] Als Organisator möchte ich eine Rückfrage zu einem Geräte stellen können. (A17)
|
||||||
- [ ] (A18) Als Organisator möchte ich ein Geräte ablehnen können.
|
- [ ] Als Organisator möchte ich ein Geräte ablehnen können. (A18)
|
||||||
- [ ] (A19) Als Organisator möchte ich ein Geräte zu einem Termin zuordnen können.
|
- [ ] Als Organisator möchte ich ein Geräte zu einem Termin zuordnen können. (A19)
|
||||||
- [ ] (A20) Als Organisator möchte ich einen Reparateur zu einem Termin zuordnen können.
|
- [ ] Als Organisator möchte ich einen Reparateur zu einem Termin zuordnen können. (A20)
|
||||||
|
|
||||||
## Daten
|
## Daten
|
||||||
|
|
||||||
|
|
@ -168,29 +168,29 @@ Technische Attribute:
|
||||||
|
|
||||||
## Ansichten
|
## Ansichten
|
||||||
|
|
||||||
### (S1) Landing Page: Repair-Cafés
|
### Landing Page: Repair-Cafés (S1)
|
||||||
|
|
||||||
Liste der Repair-Café Termine
|
Liste der Repair-Café Termine
|
||||||
|
|
||||||
### (S2) Gerät anmelden
|
### 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.
|
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.
|
||||||
|
|
||||||
### (S3) Gast anmelden
|
### Gast anmelden (S3)
|
||||||
|
|
||||||
Das Formular zum anmelden eines neuen Gastes hat die Felder `Name`, `Telefon`, `Wohnort` und einen Knopf `Absenden` zum senden des Formulars.
|
Das Formular zum anmelden eines neuen Gastes hat die Felder `Name`, `Telefon`, `Wohnort` und einen Knopf `Absenden` zum senden des Formulars.
|
||||||
|
|
||||||
### (S4) Anmeldebestätigung
|
### Anmeldebestätigung (S4)
|
||||||
|
|
||||||
Die Anmeldebestätigung zeigt die Geräte und Gast Daten erneut an, zusammen mit der Information dass das Gerät angelegt.
|
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.
|
Weiter enthält die Ansicht einen Link zur Geräte Detailseite und einen Link zur Gast Detailseite.
|
||||||
|
|
||||||
### (S5) Geräte Detailseite
|
### 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.
|
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.
|
Weiter enthält die Seite einen Knopf `Aktualisieren` der das Formular absendet und die Daten aktualisiert und einen Link zur Detailseite des Gastes.
|
||||||
|
|
||||||
### (S6) Gast Detailseite
|
### Gast Detailseite (S6)
|
||||||
|
|
||||||
Die Gast Detailseite hat die Felder `Name`, `eMail`, `Telefon` und `Wohnort` die mit den Angaben des Gastes ausgefüllt sind.
|
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.
|
Weiter enthält die Seite einen Knopf `Aktualisieren` der das Formular absendet.
|
||||||
|
|
|
||||||
0
rc_hip/data/.gitkeep
Normal file
0
rc_hip/data/.gitkeep
Normal file
13
rc_hip/repapp/templates/repapp/base.html
Normal file
13
rc_hip/repapp/templates/repapp/base.html
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>RepApp{% block title %}{% endblock title %}</title>
|
||||||
|
|
||||||
|
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KK94CHFLLe+nY2dmCWGMq91rCGa5gtU4mk92HdvYe+M/SXH301p5ILy+dN9+nJOZ" crossorigin="anonymous">
|
||||||
|
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ENjdO4Dr2bkBIFxQpeoTz1HIcje39Wm4jDKdf19U8gI4ddQ3GYNS7NTKfAdVQSZe" crossorigin="anonymous"></script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
{% block content %}{% endblock content %}
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
16
rc_hip/repapp/templates/repapp/index.html
Normal file
16
rc_hip/repapp/templates/repapp/index.html
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
{% extends "repapp/base.html" %}
|
||||||
|
|
||||||
|
{% block title %}- Repair-Cafés{% endblock title %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<h1>Repair-Cafés</h1>
|
||||||
|
<ul class="list-group">
|
||||||
|
{% for cafe in object_list %}
|
||||||
|
<li class="list-group-item">
|
||||||
|
<button type="button" class="btn btn-primary">Repair-Café am {{ cafe.event_date|date }}, {{ cafe.location }}</button>
|
||||||
|
</li>
|
||||||
|
{% empty %}
|
||||||
|
<li class="list-group-item">Es gibt keine geplanten Repair-Cafés.</li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
{% endblock content %}
|
||||||
|
|
@ -3,5 +3,5 @@ from django.urls import path
|
||||||
from . import views
|
from . import views
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path("", views.index, name="index"),
|
path("", views.IndexView.as_view(), name="index"),
|
||||||
]
|
]
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,15 @@
|
||||||
from django.shortcuts import render
|
from django.shortcuts import render
|
||||||
from django.http import HttpResponse
|
from django.http import HttpResponse
|
||||||
|
from django.views import generic
|
||||||
|
from .models import Cafe
|
||||||
|
|
||||||
|
|
||||||
def index(requst):
|
def index(request):
|
||||||
return HttpResponse("Hello from RepApp.")
|
return HttpResponse("Hello from RepApp.")
|
||||||
|
|
||||||
|
|
||||||
|
class IndexView(generic.ListView):
|
||||||
|
template_name = "repapp/index.html"
|
||||||
|
|
||||||
|
def get_queryset(self):
|
||||||
|
return Cafe.objects.all()
|
||||||
|
|
|
||||||
Reference in a new issue