Zum Hauptinhalt springen

Kassensystem

Setze das abgebildete Klassendiagramm vollständig um. Erstelle zum Testen eine ausführbare Klasse.

Klassendiagramm

Allgemeine Hinweise

  • Aus Gründen der Übersicht werden im Klassendiagramm keine Getter und Object-Methoden dargestellt
  • So nicht anders angegeben, sollen Konstruktoren, Setter, Getter sowie die Object-Methoden wie gewohnt implementiert werden

Hinweis zur Klasse Item

Die Methode double getSubTotalInEuro() soll die Zwischensumme als Produkt aus der Anzahl und dem Preis zurückgeben.

Hinweise zur Klasse ShoppingCart

  • Die Methode void createItem(goods: Goods, amount: int) soll den Einträgen des Warenkorbs (items) die eingehende Ware und die eingehende Anzahl als Eintrag hinzufügen
  • Die Methode double getTotalInEuro() soll die Gesamtsumme zurückgeben

Hinweise zur Klasse CashierSystem

  • Die Methode void addGoods(goods: Goods) soll der Warenliste (goods) die eingehende Ware hinzufügen
  • Die Methode void addCashier(cashier: Cashier) soll der Kassiererliste (cashiers) den eingehenden Kassierer hinzufügen
  • Die Methode void login(id: int) soll den Kassierer zur eingehenden Kassierernummer an der Kasse "registrieren"
  • Die Methode void createShoppingCart() soll an der Kasse einen neuen Warenkorb erstellen
  • Die Methode void addItem(id: int, amount: int) soll dem Warenkorb (shoppingCart) anhand der eingehenden Produktnummer und anhand der eingehenden Anzahl einen neuen Warenkorbeintrag hinzufügen
  • Die Methode void printBon() soll alle relevanten Informationen zum Warenkorb auf der Konsole ausgeben