letzte Installments für auszahlen

main
informatikperson 2022-10-17 15:05:31 +02:00
parent 03b56a6575
commit 64e8447ae4
3 changed files with 96 additions and 26 deletions

View File

@ -18,11 +18,14 @@ public class Konto {
@Override
public String toString() {
return "Konto [nummer=" + nummer + ", inhaber=" + inhaber + "]";
return "Konto [nummer=" + nummer + ", inhaber=" + inhaber + ", stand=" + stand + "]";
}
public long addKontostand(String inhaber, long zahl) {
stand = stand+zahl;
stand = getKontostand() +zahl;
return stand;
}
public long getKontostand() {
return stand;
}

View File

@ -46,4 +46,17 @@ public class Banksystem {
}
public boolean checkForBalance(String inhaber) {
Collection<Konto> konten = bank.getKontenliste();
for (Konto k : konten) {
String konto = k.toString();
if (konto.contains(inhaber)) {
if(k.getKontostand()<=0) {
return false;
}
}
}
return true;
}
}

View File

@ -20,10 +20,10 @@ public class UI {
while (true) {
System.out.println();
System.out.println("--------");
System.out.println("Hauptmenü");
System.out.println("Hauptmenü");
System.out.println("1 -> Konten anzeigen");
System.out.println("2 -> Konto anlegen");
System.out.println("3 -> Auf bestehendes Konto einzahlen");
System.out.println("3 -> Auf bestehendes Konto einzahlen oder auszahlen");
System.out.println("9 -> Beenden");
System.out.println();
@ -34,60 +34,114 @@ public class UI {
switch(input) {
case 1: kontenAnzeigen(); break;
case 2: kontoAnlegen(); break;
case 3: kontoAufladenAuswahl(); break;
case 3: kontoAktionen(); break;
case 9: break mainloop;
}
}
System.out.println("Auf Wiedersehen!");
} // hauptmenü
} // hauptmenü
private void kontoAufladenAuswahl() {
private void kontoAktionen() {
System.out.println("Konto über Namen auffüllen? -> 1");
System.out.println("Konto über Kontonummer aufladen? -> 2");
System.out.println("Konto über Namen auszahlen -> 3");
System.out.println("Konto über Nummer auszahlen -> 4");
System.out.println();
System.out.print(">");
int input = Integer.parseInt(sc.nextLine());
switch(input) {
case 1: kÜberNamen(); break;
case 2: kÜberNummer();break;
case 1: kÜberNamenEinzahlen(); break;
case 2: kÜberNummerEinzahlen();break;
case 3: kÜberNamenAuszahlen(); break;
case 4: KÜberNummerAuszahlen();break;
}
System.out.println("Pups");
}
private void kÜberNamen() {
private void KÜberNummerAuszahlen() {
System.out.println("Welches Konto soll auszahlen? Nummer");
CharSequence input = sc.nextLine();
String[] konten = bs.getKontenliste();
long input2 = 0;
for(String k: konten) {
if (k.contains(input)) {
System.out.print("Aktueller Stand: ");
if(bs.checkForBalance(k) == false) {
System.out.println("Sie müssen erst einzahlen um auszahlen zu können");
kontoAktionen();
break;
}
System.out.println("Wieviel möchten sie auszahlen?");
input2 = Long.parseLong(sc.nextLine());
input2 = input2*-1;
bs.kontoAufladen(k, input2);
System.out.println(k.toString());
}
}
}
private void kÜberNamenAuszahlen() {
System.out.println("Welches Konto soll auszahlen? Namen");
String input = sc.nextLine();
String[] konten = bs.getKontenliste();
long input2 = 0;
for(String k: konten) {
if (k.contains(input)) {
System.out.print("Aktueller Stand: ");
if(bs.checkForBalance(k) == false) {
System.out.println("Sie müssen erst einzahlen um auszahlen zu können");
kontoAktionen();
break;
}
System.out.println("Wieviel möchten sie auszahlen?");
input2 = Long.parseLong(sc.nextLine());
input2 = input2*-1;
bs.kontoAufladen(k, input2);
System.out.println(k.toString());
}
}
}
private void kÜberNamenEinzahlen() {
System.out.println("Welches Konto soll aufgeladen werden? Name");
String input = sc.nextLine();
String[] konten = bs.getKontenliste();
for (String k : konten) {
if (k.contains(input)) {
System.out.println("auf dieses Konto wird geladen");
System.out.print("auf dieses Konto wird geladen: ");
System.out.println(k.toString());
System.out.println("Wieviel möchten sie aufladen?");
System.out.print(">");
long input2 = Long.parseLong(sc.nextLine());
if(input2<0) {
System.out.println("Betrag muss plus sein");
kÜberNamen();
kÜberNamenEinzahlen();
}
bs.kontoAufladen(k,input2);
}
System.out.println(k.toString());
}
}
private void kÜberNummer() {
private void kÜberNummerEinzahlen() {
System.out.println("Welches Konto soll aufgeladen werden? Nummer");
CharSequence input = sc.nextLine();
String[] konten = bs.getKontenliste();
for(String k: konten) {
if(k.contains(input)) {
System.out.println("auf dieses Konto wird geladen");
System.out.print("auf dieses Konto wird geladen: ");
System.out.println(k.toString());
System.out.println("Wieviel möchten sie aufladen");
System.out.println("Wieviel möchten sie aufladen?");
System.out.print(">");
long input2 = Long.parseLong(sc.nextLine());
if(input2<0) {
System.out.println("Betrag muss plus sein");
kÜberNummer();
kÜberNummerEinzahlen();
}
bs.kontoAufladen(k, input2);
}