2024-10-21 18:52:25 +02:00
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.List;
|
2024-10-21 18:25:45 +02:00
|
|
|
import java.util.Scanner;
|
|
|
|
|
2024-10-21 18:52:25 +02:00
|
|
|
public class Main {
|
2024-10-21 22:35:46 +02:00
|
|
|
static String adresse;
|
2024-10-21 18:52:25 +02:00
|
|
|
static Warenkorb warenkorb = new Warenkorb();
|
|
|
|
static List<Bestellung> bestellungen = new ArrayList<>();
|
2024-10-21 18:25:45 +02:00
|
|
|
|
|
|
|
public static void main(String[] args) {
|
2024-10-21 18:52:25 +02:00
|
|
|
// Erstellen von Produkten mit Name, ID, Preis und Gewicht
|
|
|
|
Prudukt gabel = new Prudukt("Gabel", 1, 1.12F, 0.1F);
|
|
|
|
Prudukt messer = new Prudukt("Messer", 2, 1.14F, 0.2F);
|
|
|
|
Prudukt loeffel = new Prudukt("Löffel", 3, 1.15F, 0.15F);
|
|
|
|
|
|
|
|
Scanner scanner = new Scanner(System.in);
|
|
|
|
boolean einkaufFortsetzen = true;
|
|
|
|
|
|
|
|
// Schleife, um Produkte in den Warenkorb hinzuzufügen
|
|
|
|
while (einkaufFortsetzen) {
|
|
|
|
// Produktliste anzeigen
|
|
|
|
System.out.println("Verfügbare Produkte:");
|
|
|
|
System.out.println(gabel);
|
|
|
|
System.out.println(messer);
|
|
|
|
System.out.println(loeffel);
|
|
|
|
|
|
|
|
// Produkt zum Warenkorb hinzufügen
|
|
|
|
System.out.println("Geben Sie die ID des gewünschten Produkts ein:");
|
|
|
|
int id = scanner.nextInt();
|
|
|
|
System.out.println("Geben Sie die Anzahl ein:");
|
|
|
|
int anzahl = scanner.nextInt();
|
|
|
|
|
|
|
|
// Auswahl des Produkts basierend auf der ID
|
|
|
|
switch (id) {
|
|
|
|
case 1:
|
|
|
|
warenkorb.produktHinzufuegen(gabel, anzahl);
|
|
|
|
break;
|
|
|
|
case 2:
|
|
|
|
warenkorb.produktHinzufuegen(messer, anzahl);
|
|
|
|
break;
|
|
|
|
case 3:
|
|
|
|
warenkorb.produktHinzufuegen(loeffel, anzahl);
|
|
|
|
break;
|
|
|
|
default:
|
|
|
|
System.out.println("Ungültige Produkt-ID.");
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
|
2024-10-21 22:35:46 +02:00
|
|
|
// Optionen für den Benutzer nach dem Hinzufügen anzeigen
|
|
|
|
boolean optionenAnzeigen = true;
|
|
|
|
while (optionenAnzeigen) {
|
|
|
|
// Warenkorb anzeigen
|
|
|
|
warenkorb.printWarenkorb();
|
|
|
|
|
|
|
|
System.out.println("Was möchten Sie tun?");
|
|
|
|
System.out.println("1. Produkt ändern");
|
|
|
|
System.out.println("2. Produkt entfernen");
|
|
|
|
System.out.println("3. Weiter einkaufen");
|
|
|
|
System.out.println("4. Bestellung aufgeben");
|
|
|
|
|
|
|
|
int option = scanner.nextInt();
|
|
|
|
switch (option) {
|
|
|
|
case 1: // Produkt ändern
|
|
|
|
System.out.println("Geben Sie die ID des Produkts ein, das Sie ändern möchten:");
|
|
|
|
int produktId = scanner.nextInt();
|
|
|
|
System.out.println("Geben Sie die neue Anzahl ein:");
|
|
|
|
int neueAnzahl = scanner.nextInt();
|
|
|
|
warenkorb.produktAendern(produktId, neueAnzahl);
|
|
|
|
break;
|
|
|
|
case 2: // Produkt entfernen
|
|
|
|
System.out.println("Geben Sie die ID des Produkts ein, das Sie entfernen möchten:");
|
|
|
|
int removeId = scanner.nextInt();
|
|
|
|
warenkorb.produktAendern(removeId, 0); // Wenn die neue Anzahl 0 ist, wird das Produkt entfernt.
|
|
|
|
System.out.println("vielen dank das prudukt wurde entfernt");
|
|
|
|
optionenAnzeigen = false;
|
|
|
|
break;
|
|
|
|
|
|
|
|
case 3: // Weiter einkaufen
|
|
|
|
optionenAnzeigen = false; // Schleife beenden, um wieder Produkte hinzuzufügen
|
|
|
|
break;
|
|
|
|
case 4: // Bestellung aufgeben
|
|
|
|
kundenkauf();
|
|
|
|
Bestellung bestellung = new Bestellung(warenkorb, warenkorb.berechneVersandkosten());
|
|
|
|
bestellungen.add(bestellung);
|
|
|
|
System.out.println("Ihre Bestellung wurde gespeichert:\n");
|
|
|
|
System.out.println(bestellung);
|
|
|
|
System.out.println("Ihre Packet wird an Ihre die Adresse "+adresse+" zugeschickt\n");
|
|
|
|
System.out.println("sie können jetzt weiter kaufen");
|
|
|
|
optionenAnzeigen = false; // Schleife beenden, da Bestellung abgeschlossen ist
|
|
|
|
break;
|
|
|
|
default:
|
|
|
|
System.out.println("Ungültige Auswahl. Bitte wählen Sie erneut.");
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
2024-10-21 18:25:45 +02:00
|
|
|
|
2024-10-21 18:52:25 +02:00
|
|
|
|
2024-10-21 22:35:46 +02:00
|
|
|
}
|
2024-10-21 18:52:25 +02:00
|
|
|
|
|
|
|
// Alle Bestellungen anzeigen
|
|
|
|
System.out.println("Alle Bestellungen:");
|
|
|
|
for (Bestellung b : bestellungen) {
|
|
|
|
System.out.println(b);
|
|
|
|
}
|
2024-10-21 22:35:46 +02:00
|
|
|
|
|
|
|
scanner.close();
|
2024-10-21 18:25:45 +02:00
|
|
|
}
|
|
|
|
|
2024-10-21 18:52:25 +02:00
|
|
|
// Methode zur Eingabe von Kundendaten
|
2024-10-21 18:25:45 +02:00
|
|
|
static void kundenkauf() {
|
|
|
|
Scanner kundeinfo = new Scanner(System.in);
|
2024-10-21 18:52:25 +02:00
|
|
|
System.out.println("Geben Sie Ihre Daten ein:");
|
|
|
|
|
|
|
|
System.out.print("Name: ");
|
2024-10-21 22:35:46 +02:00
|
|
|
String name = kundeinfo.nextLine();
|
2024-10-21 18:52:25 +02:00
|
|
|
|
|
|
|
System.out.print("Adresse: ");
|
2024-10-21 22:35:46 +02:00
|
|
|
adresse = kundeinfo.nextLine();
|
2024-10-21 18:52:25 +02:00
|
|
|
|
2024-10-21 22:35:46 +02:00
|
|
|
// Setzen des Kunden im Warenkorb mit Hilfe von ki den logig herrausgefunden
|
2024-10-21 18:52:25 +02:00
|
|
|
warenkorb.setKunde(new Kunden(name, adresse));
|
2024-10-21 18:25:45 +02:00
|
|
|
}
|
|
|
|
}
|