From 68002788c5a08f3eeedbaea43955470842780444 Mon Sep 17 00:00:00 2001 From: Laura <3016748@stud.hs-mannheim.de> Date: Sun, 14 Dec 2025 20:33:37 +0100 Subject: [PATCH] =?UTF-8?q?Methode=20zum=20hinzuf=C3=BCgen=20von=20Artikel?= =?UTF-8?q?n=20in=20den=20Warenkorb=20implementiert.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/backend/pack/OnlineShop.java | 6 +- Shop/src/main/java/backend/pack/Produkt.java | 2 +- .../src/main/java/backend/pack/Warenkorb.java | 39 ++++++++-- Shop/src/main/java/tui/pack/ShopTUI.java | 72 ++++++++++++++----- 4 files changed, 93 insertions(+), 26 deletions(-) diff --git a/Shop/src/main/java/backend/pack/OnlineShop.java b/Shop/src/main/java/backend/pack/OnlineShop.java index c0e7ca4..a79fc4e 100644 --- a/Shop/src/main/java/backend/pack/OnlineShop.java +++ b/Shop/src/main/java/backend/pack/OnlineShop.java @@ -32,7 +32,7 @@ public class OnlineShop { for(int j=0;j ProduktListe= ÜbertrageListe(); boolean[] aufLager= new boolean[ProduktListe.size()]; for(int i=0;iProduktListe= ÜbertrageListe(); for(Produkt p : ProduktListe){ diff --git a/Shop/src/main/java/backend/pack/Produkt.java b/Shop/src/main/java/backend/pack/Produkt.java index 92a5542..bb8e10a 100644 --- a/Shop/src/main/java/backend/pack/Produkt.java +++ b/Shop/src/main/java/backend/pack/Produkt.java @@ -26,7 +26,7 @@ public class Produkt { return Math.round((this.preis-(this.preis/(1+this.mwst/100)))*100.0)/100.0; } public double berechneBrutto(){ - return preis-berechneMwst(); + return preis+berechneMwst(); } /* public boolean equals(Object o) { diff --git a/Shop/src/main/java/backend/pack/Warenkorb.java b/Shop/src/main/java/backend/pack/Warenkorb.java index 07d40a5..78d1096 100644 --- a/Shop/src/main/java/backend/pack/Warenkorb.java +++ b/Shop/src/main/java/backend/pack/Warenkorb.java @@ -1,20 +1,49 @@ package pack; +import java.io.FileNotFoundException; import java.util.ArrayList; public class Warenkorb { - private ArrayList Artikel; + + private ArrayList Artikel; public Warenkorb() { - Artikel = new ArrayList(); + Artikel = new ArrayList<>(); } + public Produkt welchesProdukt(int vltID) throws FileNotFoundException { + OnlineShop Shop = new OnlineShop(); + ArrayList produkte = Shop.ÜbertrageListe(); - public void produktHinzufügen(Produkt p) { - Artikel.add(p); - //Todo mit warenkorbartikel verknüpfen + for(Produkt p: produkte){ + if(p.ID==vltID){ + return p; + } + + }return null; + } + public boolean aufLager(Produkt p){ + if(p.Bestand>0) + return true; + else + return false; + } + + public void produktHinzufügen(Produkt p,int Menge) { + Artikel.add(new WarenkorbArtikel(p, Menge)); + } + public boolean ProduktDa (int ID,int Menge) throws FileNotFoundException { + Produkt da = welchesProdukt(ID); + if(da==null){ + return false; + } boolean genug=aufLager(da); + if(genug==true){ + produktHinzufügen(da,Menge); + return true; + } + return false; } diff --git a/Shop/src/main/java/tui/pack/ShopTUI.java b/Shop/src/main/java/tui/pack/ShopTUI.java index c906c45..0b5d71a 100644 --- a/Shop/src/main/java/tui/pack/ShopTUI.java +++ b/Shop/src/main/java/tui/pack/ShopTUI.java @@ -9,9 +9,11 @@ import java.util.Scanner; public class ShopTUI { private static OnlineShop shop; static Scanner sc = new Scanner(System.in); + Warenkorb wk = new Warenkorb(); - public static void main(String[] args) throws FileNotFoundException { - System.out.println("Willkommen zum DanDan-Shop!"); + public void main(String[] args) throws FileNotFoundException { + IO.println(); + System.out.println(">>>>>>>>>>Willkommen zum DanDan-Shop!<<<<<<<<<<"); shop= new OnlineShop(); boolean cont = true; @@ -22,8 +24,8 @@ public class ShopTUI { System.out.println("Auf Wiedersehen!"); } - public static boolean hauptmenü() throws FileNotFoundException { - IO.println(); + public boolean hauptmenü() throws FileNotFoundException { + IO.println(); IO.println(" << H a u p t m e n ü >> "); IO.println("1.Produktangebot"); @@ -41,10 +43,10 @@ public class ShopTUI { produktsuche(); break; case "3": case "warenkorb": case"Warenkorb": - //Todo warenkorb + MeinWarenkorb(); break; case "4": case "bestellungen": case"Bestellungen": - //Todo + //Todo vlt lasse ich das ganz beim Warenkorb break; case "5": case "exit " : case "Exit": return false; @@ -82,30 +84,30 @@ public class ShopTUI { String suche = sc.nextLine(); int count=0; Produkt vlt=null; - boolean[] aufLager= shop.aufLager(); + // boolean[] aufLager= shop.aufLager(); ArrayList ProduktListe= shop.ÜbertrageListe(); IO.println(); Produkt gefunden= shop.suchProdukt(suche); if(gefunden==null) { - /* for(int i=0;i4) { IO.println("Meinten Sie vielleicht "+ vlt.name + " " +vlt.preis+ "€ ?"); - IO.println("Unser Bestand beträgt"+ vlt.Bestand); - }*/ + IO.println("Unser Bestand beträgt "+ vlt.Bestand); + }else IO.println("Das gesuchte Produkt wurde leider nicht gefunden"); } else { - IO.println("Hier ist das Produkt: " + gefunden.name + " " + gefunden.preis + " €"); + IO.println("Hier ist das Produkt: " + gefunden.name + " " + gefunden.preis + " € zzgl. " + gefunden.mwst+" % mwst"); if(gefunden.Bestand ==0){ IO.println("Das Produkt ist aber leider zur Zeit nicht verfügbar"); //Todo hier trimen oder splite damit der user nicht sowas wie 7l hinzufügen muss @@ -114,11 +116,47 @@ public class ShopTUI { //Todo hinzufügfen ermöglichen } - } public void MeinWarenkorb(){ - //Todo hier hinzufügen, entfernen oder menge ändern ermöglichen + } public void bestellen(){ //Hier alle infos wie name und addresse abfangen } + public void MeinWarenkorb() throws FileNotFoundException { + Warenkorb warenkorb; + String Wahl; + do { + IO.print(">>Warenkorb-Menü<<"); + IO.println("1. Artikel hinzüfugen [Bitte hierfür am besten die Produkt ID benutzen!]"); + IO.println("2. Meinen Warenkorb anzeigen bzw Bestellung aufgeben"); + IO.println("3. Etwas aus den Warenkorb löschen"); + IO.println("4. Die Menge reduzieren"); + IO.println("5. back"); + IO.print(">>"); + Wahl = sc.nextLine(); + switch (Wahl) { + case "1": + hinzufuegen(); + break; + case "2": + } + } while (!Wahl.equals("5")||Wahl.equalsIgnoreCase("back")); + + + } public void hinzufuegen() throws FileNotFoundException { + IO.println("Bitte geben sie eine ProduktID ein"); + IO.print("ID:"); + int ID=sc.nextInt(); + IO.println("Wieviel wollen sie hinzufügen?"); + IO.print("Menge:"); + int Menge=sc.nextInt(); + sc.nextLine(); + boolean geklappt= wk.ProduktDa(ID,Menge); + if(geklappt){ + IO.println("Das Produkt wurde zum Warenkorb hinzugefügt!!"); + }else + IO.println("Die ID existiert nicht oder das Produkt ist leider nicht auf Lager"); + + } + } \ No newline at end of file