From ee6f127d858a611d4661980b9941be21107faf3c Mon Sep 17 00:00:00 2001 From: nikla Date: Tue, 11 Oct 2022 12:29:04 +0200 Subject: [PATCH] Einzahlen + Kontostand anzeigen --- .../informatik/bank/domain/Konto.java | 13 ++ .../informatik/bank/facade/Banksystem.java | 21 +++ .../de/hs_mannheim/informatik/bank/ui/UI.java | 164 +++++++++++------- 3 files changed, 134 insertions(+), 64 deletions(-) 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..8a5ad27 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 @@ -20,5 +20,18 @@ public class Konto { public String toString() { return "Konto [nummer=" + nummer + ", inhaber=" + inhaber + "]"; } + + public void geldEinzahlen(long betrag) { + if (betrag < 0) { + + } + stand += betrag; + + } + + public long getStand() { + // TODO Auto-generated method stub + return 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..a737d38 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,27 @@ public class Banksystem { return k.getKontonummer(); } + + + public boolean geldEinzahlen(long betrag, int kontonummer) { + + for (Konto k : bank.getKontenliste()) + if (k.getKontonummer() == kontonummer) { + k.geldEinzahlen(betrag); + return true; + } + + return false; + } + + public long kontstandAnzeigen(int kontonummer) { + for (Konto k : bank.getKontenliste()) + if (k.getKontonummer() == kontonummer) + return k.getStand(); + return 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..4a1dbc0 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 @@ -1,64 +1,100 @@ -package de.hs_mannheim.informatik.bank.ui; - -import java.util.Scanner; - -import de.hs_mannheim.informatik.bank.facade.Banksystem; - -public class UI { - private Banksystem bs; - Scanner sc = new Scanner(System.in); - - public UI(Banksystem bs) { - this.bs = bs; - hauptmenü(); - } - - private void hauptmenü() { - 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(); - - 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; - } - } - - System.out.println("Auf Wiedersehen!"); - - } // hauptmenü - - private void kontenAnzeigen() { - String[] konten = bs.getKontenliste(); - if (konten.length > 0) { - System.out.println("Folgende Konten sind aktuell verfügbar:"); - for (String s : konten) { - System.out.println(s); - } - } else { - System.out.println("Bisher keine Konten angelegt."); - } - } - - private void kontoAnlegen() { - System.out.println("Bitte den Namen des Kontoinhabers angeben: "); - String name = sc.nextLine(); - - int kontonummer = bs.kontoAnlegen(name); - System.out.println("Konto mit der Nummer " + kontonummer + " neu angelegt."); - } - -} +package de.hs_mannheim.informatik.bank.ui; + +import java.util.Scanner; + +import de.hs_mannheim.informatik.bank.facade.Banksystem; + + +public class UI { + private Banksystem bs; + Scanner sc = new Scanner(System.in); + + public UI(Banksystem bs) { + this.bs = bs; + hauptmenue(); + } + + private void hauptmenue() { + 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("3 -> Konto 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(); + + switch (input) { + case 1: + kontenAnzeigen(); + break; + case 2: + kontoAnlegen(); + break; + case 3: + kontoAuswaehlen(); + break; + case 4: + kontostandAnzeigen(); + break; + case 9: + break mainloop; + } + } + + System.out.println("Auf Wiedersehen!"); + + } // hauptmenü + + private void kontenAnzeigen() { + String[] konten = bs.getKontenliste(); + if (konten.length > 0) { + System.out.println("Folgende Konten sind aktuell verfügbar:"); + for (String s : konten) { + System.out.println(s); + } + } else { + System.out.println("Bisher keine Konten angelegt."); + } + } + + private void kontoAnlegen() { + System.out.println("Bitte den Namen des Kontoinhabers angeben: "); + String name = sc.nextLine(); + + int kontonummer = bs.kontoAnlegen(name); + System.out.println("Konto mit der Nummer " + kontonummer + " neu angelegt."); + } + + private void kontoAuswaehlen() { + + kontenAnzeigen(); + System.out.println("Geben Sie die Kontonummer des Kontos an auf dem Sie einzahlen möchten"); + int nr = Integer.parseInt(sc.nextLine()); + System.out.println("Geben Sie den Betrag ein"); + long betrag = Long.parseLong(sc.nextLine()); + if (bs.geldEinzahlen(betrag, nr)) { + + } else { + System.out.println("Bitte geben Sie eine vorhandene Kontonummer ein"); + } + } + + + + private void kontostandAnzeigen() { + System.out.println("Kontonr."); + int nr = Integer.parseInt(sc.nextLine()); + System.out.println(bs.kontstandAnzeigen(nr)); + + } + +}