2024-10-22 16:00:37 +02:00
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
public class Onlineshop {
|
|
|
|
private List<Produkt> produkte; // Achte darauf, dass der Typ korrekt ist
|
|
|
|
private Warenkorb warenkorb;
|
|
|
|
private List<Bestellung> bestellungen;
|
2024-10-22 18:14:06 +02:00
|
|
|
private Produkt gabel;
|
|
|
|
private Produkt messer;
|
|
|
|
private Produkt loeffel;
|
2024-10-22 16:00:37 +02:00
|
|
|
|
|
|
|
public Onlineshop() {
|
2024-10-22 18:14:06 +02:00
|
|
|
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);
|
2024-10-22 16:00:37 +02:00
|
|
|
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<Produkt> getProdukte() {
|
2024-10-22 18:14:06 +02:00
|
|
|
produkte.add(gabel);
|
|
|
|
produkte.add(loeffel);
|
|
|
|
produkte.add(messer);
|
2024-10-22 16:00:37 +02:00
|
|
|
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));
|
|
|
|
}
|
|
|
|
}
|