Reflection

master
3009594 2024-10-23 20:02:56 +02:00
parent 555f8a0261
commit f29ef016d8
7 changed files with 39 additions and 29 deletions

View File

@ -1,13 +1,11 @@
package OnlineShop.Main; package OnlineShop.Main;
import java.io.FileNotFoundException;
import OnlineShop.UI.TUI; import OnlineShop.UI.TUI;
import OnlineShop.domain.ExceptionsKlassen.*; import OnlineShop.domain.ExceptionsKlassen.*;
public class Main { public class Main {
public static void main(String[] args) throws FileNotFoundException, ProduktNichtGefundenException { public static void main(String[] args) throws Exception {
new TUI(); new TUI();

View File

@ -1,5 +1,4 @@
package OnlineShop.UI; package OnlineShop.UI;
import java.io.FileNotFoundException;
import java.util.Scanner; import java.util.Scanner;
import OnlineShop.domain.*; import OnlineShop.domain.*;
import OnlineShop.domain.ExceptionsKlassen.*; import OnlineShop.domain.ExceptionsKlassen.*;
@ -12,12 +11,12 @@ public class TUI {
private String optionAuswahl; private String optionAuswahl;
public TUI() throws FileNotFoundException, ProduktNichtGefundenException { public TUI() throws Exception {
this.kaufhalle = new Kaufhalle(); this.kaufhalle = new Kaufhalle();
startProgramm(); startProgramm();
} }
private void startProgramm() throws FileNotFoundException, ProduktNichtGefundenException { private void startProgramm() throws Exception {
System.out.println("<< Willkommen in meinem Online Shop >>"); System.out.println("<< Willkommen in meinem Online Shop >>");
System.out.println(); System.out.println();
if (kaufhalle.produkteLaden()) { if (kaufhalle.produkteLaden()) {
@ -30,7 +29,7 @@ public class TUI {
shwoOptions(); shwoOptions();
} }
private void shwoOptions() throws ProduktNichtGefundenException { private void shwoOptions() throws Exception {
boolean programmAktive = true; boolean programmAktive = true;
while (programmAktive) { while (programmAktive) {
System.out.println("Wählen Sie bitte ein Option aus: "); System.out.println("Wählen Sie bitte ein Option aus: ");
@ -87,7 +86,7 @@ public class TUI {
} }
private void ProdukteAuwählenUI() throws ProduktNichtGefundenException { private void ProdukteAuwählenUI() throws Exception {
boolean einkaufAktive = true; boolean einkaufAktive = true;
String weiterEinkaufen; String weiterEinkaufen;
int menge; int menge;
@ -108,6 +107,8 @@ public class TUI {
menge = eingabe.nextInt(); menge = eingabe.nextInt();
try { try {
kaufhalle.addProduktZuWarenkorb(produktName,menge); kaufhalle.addProduktZuWarenkorb(produktName,menge);
for (String p : kaufhalle.zeigeProdukte())
System.out.println(p);
} catch (ProduktNichtGefundenException e) { } catch (ProduktNichtGefundenException e) {
System.out.println(e.getMessage()); System.out.println(e.getMessage());
} }

View File

@ -38,8 +38,10 @@ public class Bestellung {
} }
public double getVersandKosten() { public double getVersandKosten() {
getGewicht();
versandKosten = 0; versandKosten = 0;
double gewichtInKg = gewicht / 1000.0; double gewichtInKg = gewicht / 1000.0;
System.out.println("GeWicht: " + gewichtInKg);
if (gewichtInKg < 1) if (gewichtInKg < 1)
versandKosten += 5; versandKosten += 5;
@ -71,4 +73,11 @@ public class Bestellung {
this.date = date; this.date = date;
} }
@Override
public String toString() {
return "kosten=" + kosten + ", gewicht=" + gewicht + ", versandKosten=" + versandKosten
+ ", tempProdukt=" + tempProdukt + ", date=" + date;
}
} }

View File

@ -1,7 +1,7 @@
package OnlineShop.domain.JTest; package OnlineShop.domain.JTest;
import static org.junit.jupiter.api.Assertions.*; import static org.junit.jupiter.api.Assertions.*;
import java.io.FileNotFoundException;
import org.junit.jupiter.api.*; import org.junit.jupiter.api.*;
import OnlineShop.domain.*; import OnlineShop.domain.*;
import OnlineShop.domain.ExceptionsKlassen.*; import OnlineShop.domain.ExceptionsKlassen.*;
@ -14,11 +14,11 @@ class JTest {
} }
@Test @Test
void test() throws FileNotFoundException, ProduktNichtGefundenException, LeereEingabeException, KeineProdukteImWarenkorb { void test() throws Exception {
kaufhalle.produkteLaden(); kaufhalle.produkteLaden();
kaufhalle.addProduktZuWarenkorb("Hut",5); kaufhalle.addProduktZuWarenkorb("Hut",5);
kaufhalle.addProduktZuWarenkorb("Dosenwurst",10); kaufhalle.addProduktZuWarenkorb("Dosenwurst",6);
kaufhalle.addProduktZuWarenkorb("Hut",5); kaufhalle.addProduktZuWarenkorb("Hut",5);
for (String p : kaufhalle.zeigeAlleProdukteImWarenkorb()) for (String p : kaufhalle.zeigeAlleProdukteImWarenkorb())

View File

@ -20,7 +20,8 @@ public class Kaufhalle {
} }
public boolean produkteLaden() throws FileNotFoundException { public boolean produkteLaden() throws FileNotFoundException {
Scanner sc = new Scanner(new File("/home/obai/git/Programmierung2/Programmierung2/src/OnlineShop/domain/produkte.csv")); Scanner sc = new Scanner(new File(
"C:\\Users\\obaya\\git\\Programmierung2\\Programmierung2\\src\\OnlineShop\\domain\\produkte.csv"));
int cnt = 0; int cnt = 0;
while (sc.hasNextLine()) { while (sc.hasNextLine()) {
@ -43,16 +44,18 @@ public class Kaufhalle {
return true; return true;
} }
public boolean addProduktZuWarenkorb(String Produktname, int menge) throws ProduktNichtGefundenException { public boolean addProduktZuWarenkorb(String Produktname, int menge) throws ProduktNichtGefundenException,Exception {
Produkt neueProdukt = findeProduktImKaufhalle(Produktname); Produkt neueProdukt = findeProduktImKaufhalle(Produktname);
if (neueProdukt == null) if (neueProdukt == null)
throw new ProduktNichtGefundenException("Produkt ist nicht Verfügbar!"); throw new ProduktNichtGefundenException("Produkt ist nicht Verfügbar!");
if (menge > neueProdukt.getBestand())
throw new Exception ("Errore");
for (int i = 0; i < menge; i++) for (int i = 0; i < menge; i++)
kunde.getWarenKorb().addProdukt(neueProdukt); kunde.getWarenKorb().addProdukt(neueProdukt);
neueProdukt.setBestand(menge);
return true; return true;
} }
@ -91,8 +94,9 @@ public class Kaufhalle {
aktuellBestelung = new Bestellung(); aktuellBestelung = new Bestellung();
aktuellBestelung.gesamtKosten(kunde.getWarenKorb().getProdukte()); aktuellBestelung.gesamtKosten(kunde.getWarenKorb().getProdukte());
return "Produkts Kosten = " + aktuellBestelung.getKosten() + "\n" + "Versand Kosten = " + aktuellBestelung.getVersandKosten() return "Produkts Kosten = " + aktuellBestelung.getKosten() + "\n" + "Versand Kosten = "
+ "\n" + "GesamtKosten(Produkts Ksoten + Versand Kosten) = " + aktuellBestelung.getGesamtKosten(); + aktuellBestelung.getVersandKosten() + "\n" + "GesamtKosten(Produkts Ksoten + Versand Kosten) = "
+ aktuellBestelung.getGesamtKosten();
} }
@ -106,6 +110,7 @@ public class Kaufhalle {
} }
public boolean getBetrag(double betrag) { public boolean getBetrag(double betrag) {
System.out.println(aktuellBestelung.getGesamtKosten());
return betrag == aktuellBestelung.getGesamtKosten(); return betrag == aktuellBestelung.getGesamtKosten();
} }

View File

@ -72,11 +72,8 @@ public class Warenkorb {
return anzahlProdkute; return anzahlProdkute;
} }
public ArrayList<Produkt> getProdukte() {
public ArrayList<Produkt> getProdukte(){
return produkte; return produkte;
} }
} }

Binary file not shown.