From 9e7b07782049b9f9bf3cab0ba154ddedd88554f7 Mon Sep 17 00:00:00 2001 From: Laura <3016748@stud.hs-mannheim.de> Date: Sun, 14 Dec 2025 02:42:03 +0100 Subject: [PATCH] Implementierung einer Such-Funktion --- .../main/java/backend/pack/OnlineShop.java | 33 +++++++++++++ Shop/src/main/java/backend/pack/Produkt.java | 5 +- .../src/main/java/backend/pack/Warenkorb.java | 6 +++ Shop/src/main/java/tui/pack/ShopTUI.java | 47 ++++++++++++++++--- 4 files changed, 82 insertions(+), 9 deletions(-) diff --git a/Shop/src/main/java/backend/pack/OnlineShop.java b/Shop/src/main/java/backend/pack/OnlineShop.java index 912e5c8..c0e7ca4 100644 --- a/Shop/src/main/java/backend/pack/OnlineShop.java +++ b/Shop/src/main/java/backend/pack/OnlineShop.java @@ -10,6 +10,7 @@ import java.util.Scanner; public class OnlineShop { private static ArrayList LagerList; + public String [][] Start() throws FileNotFoundException { LagerList=readFile(); String [][]arr= produktArray(LagerList); @@ -18,6 +19,8 @@ public class OnlineShop { } + + public String[][] produktArray(ArrayList Lagerlist) throws FileNotFoundException { String[] Lager = new String[LagerList.size()]; for (int i = 0; i < LagerList.size(); i++){ @@ -54,6 +57,16 @@ public class OnlineShop { return ProduktListe; } + public ArrayList ÜbertrageListe() throws FileNotFoundException { + LagerList=readFile(); + String [][]arr= produktArray(LagerList); + String[][] produktArray = Start(); + ArrayListProduktListe=erstelleListe(arr); + + return ProduktListe; + + } + public static ArrayList readFile() throws FileNotFoundException { Scanner sc = new Scanner(new File("Shop/resources/produkte.csv")); //Vom Sudoku übernommen @@ -66,5 +79,25 @@ public class OnlineShop { return LagerList; } + public boolean[] aufLager() throws FileNotFoundException { //TODO Prüfen ob ich die Methode überhaupt brauche + ArrayList ProduktListe= ÜbertrageListe(); + boolean[] aufLager= new boolean[ProduktListe.size()]; + for(int i=0;i0) + aufLager[i]=true; + else + aufLager[i]=false; + } + return aufLager; + } + public Produkt suchProdukt(String suche) throws FileNotFoundException { + ArrayListProduktListe= ÜbertrageListe(); + for(Produkt p : ProduktListe){ + if(p.name.equalsIgnoreCase(suche)) + return p; + + } + return null; + } } diff --git a/Shop/src/main/java/backend/pack/Produkt.java b/Shop/src/main/java/backend/pack/Produkt.java index 10b93dd..92a5542 100644 --- a/Shop/src/main/java/backend/pack/Produkt.java +++ b/Shop/src/main/java/backend/pack/Produkt.java @@ -29,7 +29,7 @@ public class Produkt { return preis-berechneMwst(); } - public boolean equals(Object o) { + /* public boolean equals(Object o) { if (!(o instanceof Produkt)) return false; @@ -38,5 +38,6 @@ public class Produkt { return false; return true; - } + }*/ + } diff --git a/Shop/src/main/java/backend/pack/Warenkorb.java b/Shop/src/main/java/backend/pack/Warenkorb.java index 413eeaf..d051703 100644 --- a/Shop/src/main/java/backend/pack/Warenkorb.java +++ b/Shop/src/main/java/backend/pack/Warenkorb.java @@ -24,5 +24,11 @@ public class Warenkorb { return preis; } + public double berechneGesamtGewicht() { + double gewicht = 0; + for (Produkt p : inhalt) + gewicht+= p.Gewicht*1000; //für kg für den Versand + return gewicht; + } } diff --git a/Shop/src/main/java/tui/pack/ShopTUI.java b/Shop/src/main/java/tui/pack/ShopTUI.java index 52ace15..89a8fa1 100644 --- a/Shop/src/main/java/tui/pack/ShopTUI.java +++ b/Shop/src/main/java/tui/pack/ShopTUI.java @@ -1,20 +1,18 @@ package pack; import java.io.FileNotFoundException; +import java.util.ArrayList; import java.util.Scanner; public class ShopTUI { private static OnlineShop shop; + static Scanner sc = new Scanner(System.in); public static void main(String[] args) throws FileNotFoundException { System.out.println("Willkommen zum DanDan-Shop!"); shop= new OnlineShop(); - - - - boolean cont = true; while (cont) { @@ -33,7 +31,6 @@ public class ShopTUI { IO.println("3.Mein Warenkorb"); IO.println("4. Bestellungen"); IO.println("5. Exit "); - Scanner sc = new Scanner(System.in); IO.print(">>"); String eingabe = sc.nextLine(); switch (eingabe) { @@ -41,7 +38,7 @@ public class ShopTUI { produktangebot(); break; case "2": case "suche": case "Suche": case"produktsuche": - //Todo suchfunktiom + produktsuche(); break; case "3": case "warenkorb": case"Warenkorb": //Todo warenkorb @@ -61,7 +58,6 @@ public class ShopTUI { public static void produktangebot() throws FileNotFoundException { System.out.println("Unser Produktangebot:"); - String[][] produkt = shop.Start(); IO.println(); @@ -81,6 +77,43 @@ public class ShopTUI { IO.println(); } + } public static void produktsuche() throws FileNotFoundException { + IO.print("Ich suche: "); + String suche = sc.nextLine(); + int count=0; + Produkt vlt=null; + boolean[] aufLager= shop.aufLager(); + ArrayList ProduktListe= shop.ÜbertrageListe(); + IO.println(); + Produkt gefunden= shop.suchProdukt(suche); + if(gefunden==null) { + /* for(int i=0;i