diff --git a/Bank-Beispiel/.classpath b/Bank-Beispiel/.classpath index 57bca72..baa1c9f 100644 --- a/Bank-Beispiel/.classpath +++ b/Bank-Beispiel/.classpath @@ -1,10 +1,15 @@ - - - - - - - - - - + + + + + + + + + + + + + + + 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 0b66d3d..4e74d55 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 @@ -6,21 +6,37 @@ import java.util.HashMap; public class Bank { private String name; private HashMap konten = new HashMap<>(); - + public Bank(String name) { this.name = name; } - + public void addKonto(Konto k) { konten.put(k.getKontonummer(), k); } - + public String getName() { return name; } - + public Collection getKontenliste() { return konten.values(); } - -} + + public void einzahlen(long betrag, int kontonummer) { + if (konten.containsKey(kontonummer)) { + konten.get(kontonummer).einzahlen(betrag); + System.out.println("Betrag " + betrag + " auf Konto " + kontonummer + " eingezahlt"); + System.out.println("Neuer Kontostand: " + konten.get(kontonummer).getKontostand()); + } else + System.out.println("Konto nicht vorhanden"); + } + + public void kontostandZeigen(int kontonummer) { + if (konten.containsKey(kontonummer)) { + System.out.println("Kontostand: " + konten.get(kontonummer).getKontostand()); + } else + System.out.println("Konto nicht vorhanden"); + } + +} \ No newline at end of file diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Konto.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Konto.java index 654d503..c43495e 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Konto.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Konto.java @@ -15,10 +15,18 @@ public class Konto { public int getKontonummer() { return nummer; } + + public void einzahlen(long betrag) { + stand += betrag; + } + + public long getKontostand() { + return stand; + } @Override public String toString() { - return "Konto [nummer=" + nummer + ", inhaber=" + inhaber + "]"; + return "Konto [nummer=" + nummer + ", inhaber=" + inhaber + ", stand=" + stand + "]"; } } 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 821c2a9..e38e36d 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 @@ -19,6 +19,13 @@ public class Banksystem { return k.getKontonummer(); } + public void einzahlen(long betrag, int kontonummer) { + bank.einzahlen(betrag, kontonummer); + } + + public void kontostandZeigen(int kontonummer) { + bank.kontostandZeigen(kontonummer); + } public String[] getKontenliste() { Collection konten = bank.getKontenliste(); String[] liste = new String[konten.size()]; 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 d6eb6e9..36dae8a 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 @@ -10,38 +10,50 @@ public class UI { public UI(Banksystem bs) { this.bs = bs; - hauptmenü(); + hauptmenu(); } - private void hauptmenü() { + private void hauptmenu() { System.out.println("Willkommen bei der " + bs.getBankname() + "!"); - mainloop: - while (true) { - System.out.println(); - System.out.println("--------"); - System.out.println("Hauptmenü"); - System.out.println("1 -> Konten anzeigen"); - System.out.println("2 -> Konto anlegen"); - System.out.println("9 -> Beenden"); - System.out.println(); + mainloop: while (true) { + System.out.println(); + System.out.println("--------"); + System.out.println("Hauptmenü"); + System.out.println("1 -> Konten anzeigen"); + System.out.println("2 -> Konto anlegen"); + System.out.println("3 -> Geld einzahlen"); + System.out.println("4 -> Kontostand anzeigen"); + System.out.println("9 -> Beenden"); + System.out.println(); - System.out.print("> "); - int input = Integer.parseInt(sc.nextLine()); - System.out.println(); + System.out.print("> "); + int input = Integer.parseInt(sc.nextLine()); + System.out.println(); - switch(input) { - case 1: kontenAnzeigen(); break; - case 2: kontoAnlegen(); break; - case 9: break mainloop; - } + switch (input) { + case 1: + kontenAnzeigen(); + break; + case 2: + kontoAnlegen(); + break; + case 3: + einzahlen(); + break; + case 4: + kontostandZeigen(); + break; + case 9: + break mainloop; } + } System.out.println("Auf Wiedersehen!"); } // hauptmenü - private void kontenAnzeigen() { + private void kontenAnzeigen() { String[] konten = bs.getKontenliste(); if (konten.length > 0) { System.out.println("Folgende Konten sind aktuell verfügbar:"); @@ -61,4 +73,28 @@ public class UI { System.out.println("Konto mit der Nummer " + kontonummer + " neu angelegt."); } + private void einzahlen() { + int kontonummer; + int betrag; + try { + System.out.print("Kontonummer eingeben: "); + kontonummer = Integer.parseInt(sc.nextLine()); + System.out.print("Betrag eingeben: "); + betrag = Integer.parseInt(sc.nextLine()); + bs.einzahlen(betrag, kontonummer); + } catch (Exception e) { + System.out.println("Fehlerhafte Eingabe!"); + } + } + + private void kontostandZeigen() { + int kontonummer; + try { + System.out.print("Kontonummer eingeben: "); + kontonummer = Integer.parseInt(sc.nextLine()); + bs.kontostandZeigen(kontonummer); + } catch (Exception e) { + System.out.println("Fehlerhafte Eingabe"); + } + } }