Grundlegende Produktsuche implementiert
parent
b46bc24a63
commit
63db8ec0d8
|
@ -5,8 +5,6 @@ import java.io.FileNotFoundException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Scanner;
|
import java.util.Scanner;
|
||||||
|
|
||||||
import de.hs_mannheim.informatik.rhenus.domain.Produkt;
|
|
||||||
|
|
||||||
public class OnlineShop {
|
public class OnlineShop {
|
||||||
private ArrayList<Produkt> lager;
|
private ArrayList<Produkt> lager;
|
||||||
|
|
||||||
|
@ -36,6 +34,8 @@ public class OnlineShop {
|
||||||
} // while
|
} // while
|
||||||
|
|
||||||
System.out.println(cnt + " Produkte geladen.");
|
System.out.println(cnt + " Produkte geladen.");
|
||||||
|
|
||||||
|
sc.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
public Produkt[] findeProdukte(String suchbegriff) {
|
public Produkt[] findeProdukte(String suchbegriff) {
|
||||||
|
|
|
@ -36,4 +36,10 @@ public class Produkt {
|
||||||
return bestand;
|
return bestand;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "Produkt [name=" + name + ", beschreibung=" + beschreibung + ", preis=" + preis + ", gewicht=" + gewicht
|
||||||
|
+ ", bestand=" + bestand + "]";
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
|
@ -7,9 +7,7 @@ import de.hs_mannheim.informatik.rhenus.domain.OnlineShop;
|
||||||
import de.hs_mannheim.informatik.rhenus.domain.Produkt;
|
import de.hs_mannheim.informatik.rhenus.domain.Produkt;
|
||||||
|
|
||||||
public class TUI {
|
public class TUI {
|
||||||
private TUI tui;
|
|
||||||
private OnlineShop shop;
|
private OnlineShop shop;
|
||||||
|
|
||||||
private Scanner kb;
|
private Scanner kb;
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
|
@ -28,7 +26,6 @@ public class TUI {
|
||||||
kb = new Scanner(System.in);
|
kb = new Scanner(System.in);
|
||||||
|
|
||||||
shop = new OnlineShop();
|
shop = new OnlineShop();
|
||||||
|
|
||||||
this.willkommen();
|
this.willkommen();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -38,16 +35,53 @@ public class TUI {
|
||||||
|
|
||||||
String eingabe = "";
|
String eingabe = "";
|
||||||
do {
|
do {
|
||||||
System.out.print("Produktsuche ('alle' für eine Übersicht; 'exit' für Beenden): ");
|
System.out.println("Produktsuche ('alle' für eine Übersicht; 'exit' für Beenden). ");
|
||||||
|
System.out.print("> ");
|
||||||
eingabe = kb.nextLine();
|
eingabe = kb.nextLine();
|
||||||
|
|
||||||
Produkt[] trefferliste = shop.findeProdukte(eingabe);
|
Produkt[] trefferliste = shop.findeProdukte(eingabe);
|
||||||
|
|
||||||
|
if (trefferliste.length == 0)
|
||||||
|
System.out.println("Keine Treffer für: " + eingabe);
|
||||||
|
else
|
||||||
|
trefferlisteAusgeben(trefferliste);
|
||||||
|
|
||||||
|
System.out.println("0 = zurück zur Suche; Zahl des Produkt für Details.");
|
||||||
|
System.out.print("> ");
|
||||||
|
eingabe = kb.nextLine();
|
||||||
|
|
||||||
|
try {
|
||||||
|
int zahl = Integer.parseInt(eingabe);
|
||||||
|
|
||||||
|
if (zahl > 0 && zahl < trefferliste.length)
|
||||||
|
produktDetailsAnzeigen(trefferliste[zahl-1]);
|
||||||
|
} catch(NumberFormatException nfe) {
|
||||||
|
System.err.println("Inkorrekte Eingabe!");
|
||||||
|
}
|
||||||
|
|
||||||
} while(!eingabe.toLowerCase().equals("exit"));
|
} while(!eingabe.toLowerCase().equals("exit"));
|
||||||
}
|
}
|
||||||
|
|
||||||
private void trefferliste(Produkt[] trefferliste) {
|
private void trefferlisteAusgeben(Produkt[] trefferliste) {
|
||||||
|
for (int i = 0; i < trefferliste.length; i++)
|
||||||
|
System.out.printf("%2d) %s %5.2f Euro%n", i+1, trefferliste[i].getName(), trefferliste[i].getPreis());
|
||||||
|
|
||||||
|
System.out.println();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void produktDetailsAnzeigen(Produkt p) {
|
||||||
|
System.out.printf("%s für nur %5.2f%n", p.getName(), p.getPreis());
|
||||||
|
System.out.println(p.getBeschreibung());
|
||||||
|
System.out.println("Produktgewicht: " + p.getGewicht() + " g");
|
||||||
|
|
||||||
|
if (p.getBestand() > 10)
|
||||||
|
System.out.println("mehr als 10 Stück auf Lager");
|
||||||
|
else if (p.getBestand() > 0)
|
||||||
|
System.out.println("nur noch " + p.getBestand() + " Stück auf Lager");
|
||||||
|
else
|
||||||
|
System.out.println("leider gerade ausverkauft");
|
||||||
|
|
||||||
|
System.out.println();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue