Initialer Commit.

master
Oliver Hummel 2024-04-09 12:00:18 +02:00
commit cc34dc961d
6 changed files with 157 additions and 0 deletions

3
OnlineShop2024/.gitignore vendored 100644
View File

@ -0,0 +1,3 @@
/bin/
/.classpath
/.project

View File

@ -0,0 +1 @@
/org.eclipse.core.resources.prefs

View File

@ -0,0 +1,7 @@
Name;Beschreibung;Preis;Gewicht;Bestand
Gieskanne;Premium Gärtner-Gieskanne;3,99;250,00;17,00
Hut;Perfekt für die Hutablage;21,98;120,00;123,00
Dosenwurst;LWWRSCHT: das Pfälzer Original, nur kurz im Angebot;3,99;200,00;7,00
Gartenschlauch;10 m, dehnbar bis auf die doppelte Länge;18,99;1300,00;23,00
Schraubenset;100 zufällig ausgewählte Schrauben;2,99;287,00;99,00
Akkuschrauber;Mit extra großem Drehmoment;25,00;900,00;13,00
1 Name Beschreibung Preis Gewicht Bestand
2 Gieskanne Premium Gärtner-Gieskanne 3,99 250,00 17,00
3 Hut Perfekt für die Hutablage 21,98 120,00 123,00
4 Dosenwurst LWWRSCHT: das Pfälzer Original, nur kurz im Angebot 3,99 200,00 7,00
5 Gartenschlauch 10 m, dehnbar bis auf die doppelte Länge 18,99 1300,00 23,00
6 Schraubenset 100 zufällig ausgewählte Schrauben 2,99 287,00 99,00
7 Akkuschrauber Mit extra großem Drehmoment 25,00 900,00 13,00

View File

@ -0,0 +1,39 @@
package de.hs_mannheim.informatik.rhenus.domain;
public class Produkt {
private String name;
private String beschreibung;
private float preis;
private int gewicht;
private int bestand;
public Produkt(String name, String beschreibung, float preis, int gewicht, int bestand) {
super();
this.name = name;
this.beschreibung = beschreibung;
this.preis = preis;
this.gewicht = gewicht;
this.bestand = bestand;
}
public String getName() {
return name;
}
public String getBeschreibung() {
return beschreibung;
}
public float getPreis() {
return preis;
}
public int getGewicht() {
return gewicht;
}
public int getBestand() {
return bestand;
}
}

View File

@ -0,0 +1,54 @@
package de.hs_mannheim.informatik.rhenus.fassade;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.Scanner;
import de.hs_mannheim.informatik.rhenus.domain.Produkt;
public class OnlineShop {
private ArrayList<Produkt> lager;
public OnlineShop() throws FileNotFoundException {
lager = new ArrayList<>();
produkteLaden();
}
private void produkteLaden() throws FileNotFoundException {
Scanner sc = new Scanner(new File("resources/produkte.csv"));
int cnt = 0;
while (sc.hasNextLine()) {
String produkt = sc.nextLine();
if (produkt.startsWith("Name"))
continue;
String[] spalten = produkt.split(";");
spalten[2] = spalten[2].replaceAll(",", ".");
spalten[3] = spalten[3].substring(0, spalten[3].indexOf(","));
spalten[4] = spalten[4].substring(0, spalten[4].indexOf(","));
lager.add(new Produkt(spalten[0], spalten[1], Float.parseFloat(spalten[2]), Integer.parseInt(spalten[3]), Integer.parseInt(spalten[4])));
cnt++;
} // while
System.out.println(cnt + " Produkte geladen.");
}
public Produkt[] findeProdukte(String suchbegriff) {
ArrayList<Produkt> trefferliste = new ArrayList<>();
if (suchbegriff.equals("alle"))
trefferliste = lager;
else
for (Produkt p : lager) {
if (p.getName().contains(suchbegriff) || p.getBeschreibung().contains(suchbegriff))
trefferliste.add(p);
}
return trefferliste.toArray(new Produkt[0]);
}
}

View File

@ -0,0 +1,53 @@
package de.hs_mannheim.informatik.rhenus.tui;
import java.io.FileNotFoundException;
import java.util.Scanner;
import de.hs_mannheim.informatik.rhenus.domain.Produkt;
import de.hs_mannheim.informatik.rhenus.fassade.OnlineShop;
public class TUI {
private TUI tui;
private OnlineShop shop;
private Scanner kb;
public static void main(String[] args) {
try {
new TUI();
} catch (FileNotFoundException e) {
System.err.println("Produktpalette konnte nicht geladen werden.");
System.out.println("Auf Wiedersehen!");
}
System.out.println("Danke für Ihren Einkauf! - Auf Wiedersehen!");
}
public TUI() throws FileNotFoundException {
kb = new Scanner(System.in);
shop = new OnlineShop();
this.willkommen();
}
private void willkommen() {
System.out.println("Willkommen bei Rhenus, dem Mannheimer Online-Baumarkt!");
System.out.println();
String eingabe = "";
do {
System.out.print("Produktsuche ('alle' für eine Übersicht; 'exit' für Beenden): ");
eingabe = kb.nextLine();
Produkt[] trefferliste = shop.findeProdukte(eingabe);
} while(!eingabe.toLowerCase().equals("exit"));
}
private void trefferliste(Produkt[] trefferliste) {
}
}