Einzahlen + Kontostand anzeigen

nikla 2022-10-11 12:29:04 +02:00
parent ba349af6c3
commit ee6f127d85
3 changed files with 134 additions and 64 deletions

View File

@ -20,5 +20,18 @@ public class Konto {
public String toString() { public String toString() {
return "Konto [nummer=" + nummer + ", inhaber=" + inhaber + "]"; 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;
}
} }

View File

@ -19,6 +19,27 @@ public class Banksystem {
return k.getKontonummer(); 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() { public String[] getKontenliste() {
Collection<Konto> konten = bank.getKontenliste(); Collection<Konto> konten = bank.getKontenliste();
String[] liste = new String[konten.size()]; String[] liste = new String[konten.size()];

View File

@ -1,64 +1,100 @@
package de.hs_mannheim.informatik.bank.ui; package de.hs_mannheim.informatik.bank.ui;
import java.util.Scanner; import java.util.Scanner;
import de.hs_mannheim.informatik.bank.facade.Banksystem; import de.hs_mannheim.informatik.bank.facade.Banksystem;
public class UI {
private Banksystem bs; public class UI {
Scanner sc = new Scanner(System.in); private Banksystem bs;
Scanner sc = new Scanner(System.in);
public UI(Banksystem bs) {
this.bs = bs; public UI(Banksystem bs) {
hauptmenü(); this.bs = bs;
} hauptmenue();
}
private void hauptmenü() {
System.out.println("Willkommen bei der " + bs.getBankname() + "!"); private void hauptmenue() {
System.out.println("Willkommen bei der " + bs.getBankname() + "!");
mainloop:
while (true) { mainloop: while (true) {
System.out.println(); System.out.println();
System.out.println("--------"); System.out.println("--------");
System.out.println("Hauptmenü"); System.out.println("Hauptmenü");
System.out.println("1 -> Konten anzeigen"); System.out.println("1 -> Konten anzeigen");
System.out.println("2 -> Konto anlegen"); System.out.println("2 -> Konto anlegen");
System.out.println("9 -> Beenden"); System.out.println("3 -> Konto einzahlen");
System.out.println(); System.out.println("4 -> Kontostand anzeigen");
System.out.println("9 -> Beenden");
System.out.print("> "); System.out.println();
int input = Integer.parseInt(sc.nextLine());
System.out.println(); System.out.print("> ");
int input = Integer.parseInt(sc.nextLine());
switch(input) { System.out.println();
case 1: kontenAnzeigen(); break;
case 2: kontoAnlegen(); break; switch (input) {
case 9: break mainloop; case 1:
} kontenAnzeigen();
} break;
case 2:
System.out.println("Auf Wiedersehen!"); kontoAnlegen();
break;
} // hauptmenü case 3:
kontoAuswaehlen();
private void kontenAnzeigen() { break;
String[] konten = bs.getKontenliste(); case 4:
if (konten.length > 0) { kontostandAnzeigen();
System.out.println("Folgende Konten sind aktuell verfügbar:"); break;
for (String s : konten) { case 9:
System.out.println(s); break mainloop;
} }
} else { }
System.out.println("Bisher keine Konten angelegt.");
} System.out.println("Auf Wiedersehen!");
}
} // hauptmenü
private void kontoAnlegen() {
System.out.println("Bitte den Namen des Kontoinhabers angeben: "); private void kontenAnzeigen() {
String name = sc.nextLine(); String[] konten = bs.getKontenliste();
if (konten.length > 0) {
int kontonummer = bs.kontoAnlegen(name); System.out.println("Folgende Konten sind aktuell verfügbar:");
System.out.println("Konto mit der Nummer " + kontonummer + " neu angelegt."); 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));
}
}