import java.util.ArrayList; import java.util.List; public class Onlineshop { private List produkte; // Achte darauf, dass der Typ korrekt ist private Warenkorb warenkorb; private List bestellungen; private Produkt gabel; private Produkt messer; private Produkt loeffel; public Onlineshop() { this.gabel=new Produkt("Gabel", 1, 1.12F, 0.1F, 100); this.messer=new Produkt("Messer", 2, 1.14F, 0.2F, 100); this.loeffel=new Produkt("Löffel", 3, 1.15F, 0.15F, 100); this.produkte = new ArrayList<>(); this.warenkorb = new Warenkorb(); this.bestellungen = new ArrayList<>(); } // API: Produkt hinzufügen public void produktHinzufuegen(Produkt produkt) { // Achte darauf, dass der Typ korrekt ist produkte.add(produkt); } // API: Produkte zurückgeben (für Anzeige in der UI) public List getProdukte() { produkte.add(gabel); produkte.add(loeffel); produkte.add(messer); return produkte; } // API: Produkt in den Warenkorb legen public boolean produktZuWarenkorbHinzufuegen(int produktId, int anzahl) { for (Produkt produkt : produkte) { // Achte darauf, dass der Typ korrekt ist if (produkt.getId() == produktId) { warenkorb.produktHinzufuegen(produkt, anzahl); return true; } } return false; // Produkt nicht gefunden } // API: Produktanzahl im Warenkorb ändern public void produktAendern(int produktId, int neueAnzahl) { warenkorb.produktAendern(produktId, neueAnzahl); } // API: Produkt aus Warenkorb entfernen public void produktEntfernen(int produktId) { warenkorb.produktEntfernen(produktId); } // API: Bestellung aufgeben public void bestellungAufgeben(String adresse, String name) { Bestellung bestellung = new Bestellung(warenkorb, warenkorb.berechneVersandkosten()); bestellungen.add(bestellung); System.out.println("Ihre Bestellung wurde erfolgreich aufgegeben:\n" + bestellung); warenkorb.leeren(); // Warenkorb nach Bestellung leeren } // Setze den Kunden im Warenkorb (optional) public void setKunde(String name, String adresse) { warenkorb.setKunde(new Kunden(name, adresse)); } }