diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/PR1.Online-Shop.iml b/.idea/PR1.Online-Shop.iml new file mode 100644 index 0000000..d6ebd48 --- /dev/null +++ b/.idea/PR1.Online-Shop.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/material_theme_project_new.xml b/.idea/material_theme_project_new.xml new file mode 100644 index 0000000..df19591 --- /dev/null +++ b/.idea/material_theme_project_new.xml @@ -0,0 +1,12 @@ + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..188022c --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..e1f6610 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Shop/Shop.iml b/Shop/Shop.iml new file mode 100644 index 0000000..c90834f --- /dev/null +++ b/Shop/Shop.iml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Shop/resources/produkte.csv b/Shop/resources/produkte.csv new file mode 100644 index 0000000..d267731 --- /dev/null +++ b/Shop/resources/produkte.csv @@ -0,0 +1,8 @@ +ProdId,Name,TransportGewicht,Netto,MwStSatz,Lagerbestand +1,Riesling 0.7 l,1.2,4.20,19,87 +2,Pfälzer Saumagen 250 g,0.28,2.52,7,23 +3,Gewürznelken 100 St.,0.01,2.52,7,3 +4,Kokosmilch 250 ml,0.275,1.67,7,12 +5,Bratwurst grob 250 g,0.258,2.09,7,17 +6,Traubensaft 1.0 l,1.5,2.93,19,1 +7,Gieskanne,0.2,3.80,19,13 \ No newline at end of file diff --git a/Shop/src/main/java/backend/pack/OnlineShop.java b/Shop/src/main/java/backend/pack/OnlineShop.java new file mode 100644 index 0000000..6adf99f --- /dev/null +++ b/Shop/src/main/java/backend/pack/OnlineShop.java @@ -0,0 +1,22 @@ +package pack; + +import java.util.ArrayList; + +public class OnlineShop { + private ArrayList lager; + + public OnlineShop() { + lager = new ArrayList(); + + // TODO: Hier sollte die Produktliste geladen werden, vgl. Sudoku + lager.add(new Produkt("Wein", 4.99)); + } + + public String[] produktListe() { + String[] produkt = new String[lager.size()]; + for (int i = 0; i < lager.size(); i++) + produkt[i] = lager.get(i).toString(); + + return produkt; + } +} diff --git a/Shop/src/main/java/backend/pack/Produkt.java b/Shop/src/main/java/backend/pack/Produkt.java new file mode 100644 index 0000000..897d0d8 --- /dev/null +++ b/Shop/src/main/java/backend/pack/Produkt.java @@ -0,0 +1,26 @@ +package pack; + +public class Produkt { + String name; + double preis; + + public Produkt(String name, double preis) { + this.name = name; + this.preis = preis; + } + + public String toString() { + return this.name + " " + this.preis + " Euro."; + } + + public boolean equals(Object o) { + if (!(o instanceof Produkt)) + return false; + + if (!this.name.equals(((Produkt)o).name) + || this.preis != ((Produkt)o).preis) + return false; + + return true; + } +} diff --git a/Shop/src/main/java/backend/pack/Warenkorb.java b/Shop/src/main/java/backend/pack/Warenkorb.java new file mode 100644 index 0000000..6fefda0 --- /dev/null +++ b/Shop/src/main/java/backend/pack/Warenkorb.java @@ -0,0 +1,26 @@ +package pack; + + +import java.util.ArrayList; + +public class Warenkorb { + private ArrayList inhalt; + + public Warenkorb() { + inhalt = new ArrayList(); + } + + public void produktHinzufügen(Produkt p) { + inhalt.add(p); + } + + public double berechneGesamtpreis() { + double preis = 0; + + for (Produkt p : inhalt) + preis+= p.preis; + + return preis; + } + +} diff --git a/Shop/src/main/java/tui/pack/ShopTUI.java b/Shop/src/main/java/tui/pack/ShopTUI.java new file mode 100644 index 0000000..9eb9a89 --- /dev/null +++ b/Shop/src/main/java/tui/pack/ShopTUI.java @@ -0,0 +1,37 @@ +package pack; + +public class ShopTUI { + private static OnlineShop shop; + + public static void main(String[] args) { + System.out.println("Willkommen beim THMA SuperStore!"); + + shop = new OnlineShop(); + + // TODO: Hauptmenü aufrufen, am besten in einer Schleife + + produktangebot(); // nur als Beispiel, bitte hier entfernen + + System.out.println("Auf Wiedersehen!"); + } + + public static void hauptmenü() { + // TODO: hier ein erstes Menü mit bspw. + // Produktangebot + // Produktsuche + // Warenkorbanzeige + // evtl. Bestellung (kann auch über Warenkorb realisiert werden) + // Exit + } + + public static void produktangebot() { + System.out.println("Unser Produktangebot:"); + System.out.println(); + + String[] produkte = shop.produktListe(); + for (int i = 0; i < produkte.length; i++) + System.out.println((i+1) + ". " + produkte[i]); + } + + } + diff --git a/Shop/src/test/java/pack/OnlineShopTest.java b/Shop/src/test/java/pack/OnlineShopTest.java new file mode 100644 index 0000000..6c592e9 --- /dev/null +++ b/Shop/src/test/java/pack/OnlineShopTest.java @@ -0,0 +1,7 @@ +package pack; + +import static org.junit.jupiter.api.Assertions.*; + +class OnlineShopTest { + +} \ No newline at end of file diff --git a/Shop/src/test/java/pack/ProduktTest.java b/Shop/src/test/java/pack/ProduktTest.java new file mode 100644 index 0000000..c3645fc --- /dev/null +++ b/Shop/src/test/java/pack/ProduktTest.java @@ -0,0 +1,20 @@ +package pack; + +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.*; + +class ProduktTest { + @Test + void testGesamtPreis() { + Produkt p1 = new Produkt("Wein", 4.99); + Produkt p2 = new Produkt("Wasser", 0.7); + + Warenkorb wk = new Warenkorb(); + wk.produktHinzufügen(p1); + wk.produktHinzufügen(p2); + + assertEquals(5.69, wk.berechneGesamtpreis(), 0.001); + } + +} \ No newline at end of file diff --git a/Shop/src/test/java/pack/WarenkorbTest.java b/Shop/src/test/java/pack/WarenkorbTest.java new file mode 100644 index 0000000..fe64804 --- /dev/null +++ b/Shop/src/test/java/pack/WarenkorbTest.java @@ -0,0 +1,21 @@ +package pack; + +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.*; + +class WarenkorbTest { + + @Test + void testGesamtPreis() { + Produkt p1 = new Produkt("Wein", 4.99); + Produkt p2 = new Produkt("Wasser", 0.7); + + Warenkorb wk = new Warenkorb(); + wk.produktHinzufügen(p1); + wk.produktHinzufügen(p2); + + assertEquals(5.69, wk.berechneGesamtpreis(), 0.001); + } + +} \ No newline at end of file diff --git a/lib/apiguardian-api-1.1.2-javadoc.jar b/lib/apiguardian-api-1.1.2-javadoc.jar new file mode 100644 index 0000000..1199ec8 Binary files /dev/null and b/lib/apiguardian-api-1.1.2-javadoc.jar differ diff --git a/lib/apiguardian-api-1.1.2-sources.jar b/lib/apiguardian-api-1.1.2-sources.jar new file mode 100644 index 0000000..d670ed9 Binary files /dev/null and b/lib/apiguardian-api-1.1.2-sources.jar differ diff --git a/lib/apiguardian-api-1.1.2.jar b/lib/apiguardian-api-1.1.2.jar new file mode 100644 index 0000000..2b678e1 Binary files /dev/null and b/lib/apiguardian-api-1.1.2.jar differ diff --git a/lib/jspecify-1.0.0-javadoc.jar b/lib/jspecify-1.0.0-javadoc.jar new file mode 100644 index 0000000..3fdb187 Binary files /dev/null and b/lib/jspecify-1.0.0-javadoc.jar differ diff --git a/lib/jspecify-1.0.0-sources.jar b/lib/jspecify-1.0.0-sources.jar new file mode 100644 index 0000000..335fef8 Binary files /dev/null and b/lib/jspecify-1.0.0-sources.jar differ diff --git a/lib/jspecify-1.0.0.jar b/lib/jspecify-1.0.0.jar new file mode 100644 index 0000000..466b875 Binary files /dev/null and b/lib/jspecify-1.0.0.jar differ diff --git a/lib/junit-jupiter-6.0.0-javadoc.jar b/lib/junit-jupiter-6.0.0-javadoc.jar new file mode 100644 index 0000000..6f4f771 Binary files /dev/null and b/lib/junit-jupiter-6.0.0-javadoc.jar differ diff --git a/lib/junit-jupiter-6.0.0-sources.jar b/lib/junit-jupiter-6.0.0-sources.jar new file mode 100644 index 0000000..a77fe7d Binary files /dev/null and b/lib/junit-jupiter-6.0.0-sources.jar differ diff --git a/lib/junit-jupiter-6.0.0.jar b/lib/junit-jupiter-6.0.0.jar new file mode 100644 index 0000000..957f029 Binary files /dev/null and b/lib/junit-jupiter-6.0.0.jar differ diff --git a/lib/junit-jupiter-api-6.0.0-javadoc.jar b/lib/junit-jupiter-api-6.0.0-javadoc.jar new file mode 100644 index 0000000..823d58b Binary files /dev/null and b/lib/junit-jupiter-api-6.0.0-javadoc.jar differ diff --git a/lib/junit-jupiter-api-6.0.0-sources.jar b/lib/junit-jupiter-api-6.0.0-sources.jar new file mode 100644 index 0000000..c1f6c8f Binary files /dev/null and b/lib/junit-jupiter-api-6.0.0-sources.jar differ diff --git a/lib/junit-jupiter-api-6.0.0.jar b/lib/junit-jupiter-api-6.0.0.jar new file mode 100644 index 0000000..960579c Binary files /dev/null and b/lib/junit-jupiter-api-6.0.0.jar differ diff --git a/lib/junit-jupiter-engine-6.0.0-javadoc.jar b/lib/junit-jupiter-engine-6.0.0-javadoc.jar new file mode 100644 index 0000000..b6ea700 Binary files /dev/null and b/lib/junit-jupiter-engine-6.0.0-javadoc.jar differ diff --git a/lib/junit-jupiter-engine-6.0.0-sources.jar b/lib/junit-jupiter-engine-6.0.0-sources.jar new file mode 100644 index 0000000..916dbb4 Binary files /dev/null and b/lib/junit-jupiter-engine-6.0.0-sources.jar differ diff --git a/lib/junit-jupiter-engine-6.0.0.jar b/lib/junit-jupiter-engine-6.0.0.jar new file mode 100644 index 0000000..e4fa04a Binary files /dev/null and b/lib/junit-jupiter-engine-6.0.0.jar differ diff --git a/lib/junit-jupiter-params-6.0.0-javadoc.jar b/lib/junit-jupiter-params-6.0.0-javadoc.jar new file mode 100644 index 0000000..274617d Binary files /dev/null and b/lib/junit-jupiter-params-6.0.0-javadoc.jar differ diff --git a/lib/junit-jupiter-params-6.0.0-sources.jar b/lib/junit-jupiter-params-6.0.0-sources.jar new file mode 100644 index 0000000..eb0d0e8 Binary files /dev/null and b/lib/junit-jupiter-params-6.0.0-sources.jar differ diff --git a/lib/junit-jupiter-params-6.0.0.jar b/lib/junit-jupiter-params-6.0.0.jar new file mode 100644 index 0000000..cb89f8c Binary files /dev/null and b/lib/junit-jupiter-params-6.0.0.jar differ diff --git a/lib/junit-platform-commons-6.0.0-javadoc.jar b/lib/junit-platform-commons-6.0.0-javadoc.jar new file mode 100644 index 0000000..f530b9b Binary files /dev/null and b/lib/junit-platform-commons-6.0.0-javadoc.jar differ diff --git a/lib/junit-platform-commons-6.0.0-sources.jar b/lib/junit-platform-commons-6.0.0-sources.jar new file mode 100644 index 0000000..5676cc5 Binary files /dev/null and b/lib/junit-platform-commons-6.0.0-sources.jar differ diff --git a/lib/junit-platform-commons-6.0.0.jar b/lib/junit-platform-commons-6.0.0.jar new file mode 100644 index 0000000..ee13461 Binary files /dev/null and b/lib/junit-platform-commons-6.0.0.jar differ diff --git a/lib/junit-platform-engine-6.0.0-javadoc.jar b/lib/junit-platform-engine-6.0.0-javadoc.jar new file mode 100644 index 0000000..7ab0ba4 Binary files /dev/null and b/lib/junit-platform-engine-6.0.0-javadoc.jar differ diff --git a/lib/junit-platform-engine-6.0.0-sources.jar b/lib/junit-platform-engine-6.0.0-sources.jar new file mode 100644 index 0000000..2368b74 Binary files /dev/null and b/lib/junit-platform-engine-6.0.0-sources.jar differ diff --git a/lib/junit-platform-engine-6.0.0.jar b/lib/junit-platform-engine-6.0.0.jar new file mode 100644 index 0000000..5ae38a2 Binary files /dev/null and b/lib/junit-platform-engine-6.0.0.jar differ diff --git a/lib/opentest4j-1.3.0-javadoc.jar b/lib/opentest4j-1.3.0-javadoc.jar new file mode 100644 index 0000000..b2e7938 Binary files /dev/null and b/lib/opentest4j-1.3.0-javadoc.jar differ diff --git a/lib/opentest4j-1.3.0-sources.jar b/lib/opentest4j-1.3.0-sources.jar new file mode 100644 index 0000000..4570645 Binary files /dev/null and b/lib/opentest4j-1.3.0-sources.jar differ diff --git a/lib/opentest4j-1.3.0.jar b/lib/opentest4j-1.3.0.jar new file mode 100644 index 0000000..7ec7bc5 Binary files /dev/null and b/lib/opentest4j-1.3.0.jar differ