Aufgabe 4: Restaurantbuchung
Gäste reservieren Plätze im Restaurant.
Erstellen Sie eine Java-Applikation für ein Restaurant.
Beim Programmstart werden einige Gäste erzeugt. Über die
grafische Benutzungsoberfläche des Programms können zwei Aktionen
(z.B. über Druckknöpfe) angestoßen werden: Reservierung
eines Tisches und Stornierung einer Reservierung.
-
Bei der Reservierung wird zunächst der Gast aus einer Liste aller
Gäste ausgewählt. Nun muss er angeben, für welches Datum,
welche Uhrzeit und wie viele Personen er reservieren möchte. Das Programm
prüft dann, ob zum gegebenen Zeitraum (Annahme: Ein Essen dauert zwei
Stunden) noch die gewünschten Plätze frei sind. Ist dies der
Fall, wird die Buchung akzeptiert. Hierzu sind alle Reservierungen zum
gewünschten Datum zu prüfen. Die bereits vorliegenden Reservierungen
in einem überschneidenden Zeitraum werden bezüglich der Sitzplätze
addiert. Die Gesamtzahl der Sitzplätze im Restaurant minus der reservierten
Sitzplätze ist die Anzahl der noch freien Plätze.
-
Bei der Stornierung einer Reservierung wird zunächst der Kunde aus
einer Liste aller Kunden ausgewählt, danach wird eine Liste aller
seiner Reservierungen angezeigt. Nachdem eine Reservierung aus dieser Liste
ausgewählt wurde, wird die Reservierung gelöscht.
Zu jedem Zeitpunkt können alle Daten des Programms gespeichert und
wieder geladen werden. Hierzu zählen auch alle Reservierungen. Technisch
geschieht dies über das Serializable-Interface.
Erweiterungsvorschläge
-
Bei der Auswahl des Gastes (Reservierung / Stornierung) kann sein Name
komplett oder teilweise (z.B. „Me*“) eingegeben werden. In der Auswahlliste
erscheinen dann nur noch die Gäste, deren Name zu dieser Schablone
passt.
-
Bei der Stornierung kann alternativ auch eine Auswahl nach dem Datum angeboten
werden. Dann werden zunächst alle Reservierungen dieses Datums angezeigt.
Nach Auswahl einer Reservierung wird sie gelöscht.
-
Die Essensdauer kann variabel gestaltet werden (z.B. in ½ Stunden
Schritten)
-
Die Reservierungen werden grafisch in einem Kalender angezeigt
-
Die Öffnungszeiten des Restaurants werden verwaltet und berücksichtigt
(z.B. von 17 bis 23 Uhr, Montags geschlossen).
-
Anlegen eines neuen Gastes.