From 2285250d6de982035c56f20fb418a8beace58dd5 Mon Sep 17 00:00:00 2001 From: WummerMIB Date: Sat, 5 Nov 2022 19:05:48 +0100 Subject: [PATCH] =?UTF-8?q?Kunden=20k=C3=B6nnen=20angezeigt=20werden?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../informatik/bank/domain/Bank.java | 4 ++ .../informatik/bank/domain/Kunde.java | 4 ++ .../informatik/bank/facade/Banksystem.java | 12 ++++++ .../de/hs_mannheim/informatik/bank/ui/UI.java | 37 ++++++++++++++----- 4 files changed, 47 insertions(+), 10 deletions(-) diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Bank.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Bank.java index 62a1b31..8f32628 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Bank.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Bank.java @@ -60,4 +60,8 @@ public class Bank implements Serializable { Konto k = konten.get(kontonummer); k.setKunde(ku); } + + public Collection getKundenListe() { + return kunden.values(); + } } diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Kunde.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Kunde.java index 0790443..cecf350 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Kunde.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Kunde.java @@ -27,6 +27,10 @@ public class Kunde { return this.id; } + public ArrayList getKonten() { + return konten; + } + @Override public String toString() { return "Vorname: " + this.vorname + " Name: " + this.name +" Alter: " + this.alter + " Wohnort: "+ this.wohnort; diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java index f996e7e..48e34f6 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java @@ -6,6 +6,7 @@ import java.util.Collection; import de.hs_mannheim.informatik.bank.domain.Bank; import de.hs_mannheim.informatik.bank.domain.Girokonto; import de.hs_mannheim.informatik.bank.domain.Konto; +import de.hs_mannheim.informatik.bank.domain.Kunde; import de.hs_mannheim.informatik.bank.infrastructure.Persistenz; public class Banksystem { @@ -101,4 +102,15 @@ public class Banksystem { bank.kundeAnlegen( vorname, name, alter, wh); } + public String[] getKundenListe() { + Collection kunden = bank.getKundenListe(); + String[] liste = new String[kunden.size()]; + + int i = 0; + for (Kunde k : kunden) { + liste[i++] = k.toString(); + } + + return liste; + } } diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/ui/UI.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/ui/UI.java index ffa9c46..8f11c80 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/ui/UI.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/ui/UI.java @@ -28,7 +28,8 @@ public class UI { System.out.println("6 -> Überweisung beauftragen"); System.out.println("7 -> Saldo abfragen"); System.out.println("8 -> Neuer Kunde"); - System.out.println("9 -> Beenden"); + System.out.println("9 -> Alle Kunden anzeigen"); + System.out.println("12 -> Beenden"); System.out.println(); System.out.print("> "); @@ -62,6 +63,9 @@ public class UI { neuerKunde(); break; case 9: + kundenAnzeigen(); + break; + case 12: break mainloop; } @@ -75,6 +79,18 @@ public class UI { } // hauptmenü + private void kundenAnzeigen() { + String[] kunden = bs.getKundenListe(); + if (kunden.length > 0) { + System.out.println("Folgende Kunden sind aktuell verfügbar:"); + for (String s : kunden) { + System.out.println(s); + } + } else { + System.out.println("Bisher keine Kunden angelegt."); + } + } + private void neuerKunde() { System.out.println("Bitte geben sie ihren Vornamen ein"); String vorname = sc.nextLine(); @@ -84,7 +100,7 @@ public class UI { int alter = returnUserInput(); System.out.println("Bitte geben sie ihren Wohnort ein"); String wh = sc.nextLine(); - bs.kundeAnlegen(vorname,name,alter,wh); + bs.kundeAnlegen(vorname, name, alter, wh); } private void kontenAnzeigen() { @@ -108,8 +124,8 @@ public class UI { System.out.println("Geben sie die Kundennummer ein(id)"); int Kundennummer = returnUserInput(); - - int kontonummer = bs.kontoAnlegen(name, auswahl , Kundennummer); + + int kontonummer = bs.kontoAnlegen(name, auswahl, Kundennummer); System.out.println("Konto mit der Nummer " + kontonummer + " neu angelegt."); } @@ -121,9 +137,10 @@ public class UI { // optional prüfen, ob Konto existiert System.out.print("Bitte den gewünschten Betrag eingeben: "); - double betrag = returnUserInputDouble();; + double betrag = returnUserInputDouble(); + ; - long neuerKontostand = bs.geldEinzahlen(kontonummer, (long)(betrag * 100)); + long neuerKontostand = bs.geldEinzahlen(kontonummer, (long) (betrag * 100)); System.out.printf("Einzahlung erfolgreich, neuer Kontostand = %.2f Euro", (neuerKontostand / 100.0)); } @@ -135,7 +152,7 @@ public class UI { System.out.print("Bitte den gewünschten Betrag eingeben: "); double betrag = returnUserInputDouble(); - boolean erfolgreich = bs.geldAuszahlen(kontonummer, (long)(betrag * 100)); + boolean erfolgreich = bs.geldAuszahlen(kontonummer, (long) (betrag * 100)); System.out.printf("Auszahlung" + ((!erfolgreich) ? " nicht" : "") + " erfolgreich. "); System.out.printf("Neuer Kontostand = %.2f Euro.", (bs.getKontostand(kontonummer) / 100.0)); @@ -192,19 +209,19 @@ public class UI { inp = Integer.parseInt(sc.nextLine()); } catch (NumberFormatException e) { System.err.println("!!!!!!!!!! Geben sie eine Zahl ein !!!!!!!!!!!"); - } catch(Exception e) { + } catch (Exception e) { System.err.println("Was machen sie Geben sie eine Zahl ein ich stehe hinter ihnen"); } return inp; } - + private double returnUserInputDouble() { double inp = 0; try { inp = Double.parseDouble(sc.nextLine()); } catch (NumberFormatException e) { System.err.println("Geben sie eine Zahl ein"); - } catch(Exception e) { + } catch (Exception e) { System.err.println("Was machen sie Geben sie eine Zahl ein"); } return inp;