Ergänzung der Funktion des Warenkorbs.

->Produkte + Menge hinzufügen
-> Warenkorb Anzeige

Als auch optimierung der Produktsuche allgemein.
main
igor.lewandowski 2025-12-12 09:57:47 +01:00
parent bb8f189652
commit b5f5ca6ce0
3 changed files with 37 additions and 31 deletions

View File

@ -44,12 +44,22 @@ public class OnlineShop {
} }
public String[] produkteListe() throws FileNotFoundException { public void produkteListe() throws FileNotFoundException {
Produkt[] produkt = new Produkt[lager.size()];
for (int i = 1; i < lager.size(); i++) {
produkt[i] = lager.get(i);
System.out.println(i + ". " + produkt[i].getName());
}
}
public void produkteInformationen() throws FileNotFoundException {
String[] produkt = new String[lager.size()]; String[] produkt = new String[lager.size()];
System.out.println("ProdId,Name,TransportGewicht,Netto,MwStSatz,Lagerbestand");
for (int i = 0; i < lager.size(); i++) { for (int i = 0; i < lager.size(); i++) {
produkt[i] = lager.get(i).toString(); produkt[i] = lager.get(i).toString();
System.out.println(produkt[i]);
} }
return produkt; System.out.println("");
} }
public void inWarenkorb(int produktNr, int menge){ public void inWarenkorb(int produktNr, int menge){
@ -62,7 +72,11 @@ public class OnlineShop {
public void warenkorbAusgabe(){ public void warenkorbAusgabe(){
System.out.println("Der aktuelle Warenkorb sieht so aus: "); System.out.println("Der aktuelle Warenkorb sieht so aus: ");
System.out.println(warenkorb); String[] arrayMengeundProdukte = warenkorb.ausgabe();
for (int i = 0; i < arrayMengeundProdukte.length / 2; i++) {
System.out.print(arrayMengeundProdukte[i] + " Stück | " + arrayMengeundProdukte[i+arrayMengeundProdukte.length/2]);
}
} }

View File

@ -26,6 +26,8 @@ public class ShopTUI {
case 2: case 2:
shop.warenkorbAusgabe(); shop.warenkorbAusgabe();
break; break;
case 3: case 3:
@ -41,36 +43,27 @@ public class ShopTUI {
} }
} }
public static void produktangebot() throws FileNotFoundException { public static void produktangebot() throws FileNotFoundException {
System.out.println("Diese Produkte bieten wir an: "); System.out.println("Diese Produkte bieten wir an: \n");
System.out.println(""); shop.produkteListe();
String[] produkte = shop.produkteListe();
for (int i = 0; i < produkte.length; i++) {
System.out.println(produkte[i]);
}
} }
public static void produktsuche() throws FileNotFoundException { public static void produktsuche() throws FileNotFoundException {
while (true) { while (true) {
System.out.println("Geben Sie das gewünschte Produkt mit der ProduktNr an"); System.out.println("Geben Sie das gewünschte Produkt mit der ProduktNr an");
System.out.println("(0 für erneute Anzeige der Produkte, " + (shop.lager.size() + 1) + " um zum Hauptmenü zurückzukehren)"); System.out.println("(0 für Anzeige der Produktinformationen, " + (shop.lager.size() + 1) + " um zum Hauptmenü zurückzukehren)");
Scanner scanner = new Scanner(System.in); Scanner scanner = new Scanner(System.in);
int produktNr = scanner.nextInt(); int produktNr = scanner.nextInt();
if (produktNr == 0) { if (produktNr == 0) {
produktangebot(); shop.produkteInformationen();
continue; continue;
} else if (produktNr == shop.lager.size() + 1) { } else if (produktNr == shop.lager.size() + 1) {
break; break;
} }
System.out.println("Meinen Sie dieses Produkt?"); int eingabe = 0;
System.out.println(shop.lager.get(produktNr - 1));
System.out.println("1=Ja, 2=Nein");
scanner = new Scanner(System.in);
int eingabe = scanner.nextInt();
if (eingabe == 1) {
System.out.println("Wie viele möchten Sie in Warenkorb legen?"); System.out.println("Wie viele möchten Sie in Warenkorb legen?");
scanner = new Scanner(System.in); scanner = new Scanner(System.in);
int menge = scanner.nextInt(); int menge = scanner.nextInt();
System.out.println("Dieses Produkt " + menge + " mal in den Warenkorb legen? (1=Ja, 2=Nein)"); System.out.println("(" + shop.lager.get(produktNr - 1) + ") " + menge + " mal in den Warenkorb legen? (1=Ja, 2=Nein)");
scanner = new Scanner(System.in); scanner = new Scanner(System.in);
while (true) { while (true) {
eingabe = scanner.nextInt(); eingabe = scanner.nextInt();
@ -80,27 +73,21 @@ public class ShopTUI {
scanner = new Scanner(System.in); scanner = new Scanner(System.in);
eingabe = scanner.nextInt(); eingabe = scanner.nextInt();
if (eingabe == 1) { if (eingabe == 1) {
continue; produktsuche();
} }
else if (eingabe == 2) { else if (eingabe == 2) {
hauptmenu(); hauptmenu();
} }
else{ System.out.println("Probieren Sie es erneut");} else{ System.out.println("Probieren Sie es erneut");}
} else { } else if (eingabe == 2) {
produktsuche();
}
System.out.println("Probieren Sie es erneut."); System.out.println("Probieren Sie es erneut.");
continue; continue;
} }
} }
} }
else if(eingabe == 2) {
continue;
}
else {
System.out.println("Probieren Sie es erneut.");
continue;
}
} }
}
}

View File

@ -12,8 +12,13 @@ public class Warenkorb {
this.produkte = produkte; this.produkte = produkte;
} }
public String toString() { public String[] ausgabe() {
String[] arrayMengeundProdukte = new String[menge.size()*2];
return this.menge.toString() + " Stück | " + this.produkte.toString(); for(int i=0;i<menge.size();i++){
arrayMengeundProdukte[i] = menge.get(i).toString();
arrayMengeundProdukte[i + menge.size()] = produkte.get(i).getName();
}
return arrayMengeundProdukte;
} }
} }