New: negative kontostände / sorted kontenausgabe

main
Caner 2022-12-07 14:10:58 +01:00
parent 3ad46a9f50
commit 7f4e3a7c41
2 changed files with 26 additions and 3 deletions

View File

@ -3,6 +3,7 @@ package de.hs_mannheim.informatik.bank.facade;
import java.io.IOException; import java.io.IOException;
import java.util.Collection; import java.util.Collection;
import java.util.HashMap; import java.util.HashMap;
import java.util.List;
import java.util.TreeSet; import java.util.TreeSet;
import de.hs_mannheim.informatik.bank.domain.Bank; import de.hs_mannheim.informatik.bank.domain.Bank;
@ -63,12 +64,12 @@ public class Banksystem {
Collection<Konto> konten = bank.getKundenKonto(currentKunde); Collection<Konto> konten = bank.getKundenKonto(currentKunde);
TreeSet<Konto> ts = new TreeSet<Konto>(konten); List<Konto> kontenList = (List<Konto>) konten;
String[] liste = new String[konten.size()]; String[] liste = new String[konten.size()];
ts.stream().forEach(konto -> { kontenList.stream().forEach(konto -> {
liste[ts.headSet(konto).size()] = konto.toString(); liste[kontenList.indexOf(konto)] = konto.toString();
}); });
return liste; return liste;
@ -89,6 +90,17 @@ public class Banksystem {
} }
public void getNegativeKontostände() {
HashMap<Integer, Konto> konten = bank.getKonten();
konten.entrySet().stream().filter(konto -> konto.getValue().getKontostand() < 0).forEach(konto -> {
System.out.println(konto.getValue().toString());
});
}
public long geldEinzahlen(int kontonummer, long betrag) throws IOException { public long geldEinzahlen(int kontonummer, long betrag) throws IOException {
Konto konto = bank.findeKonto(kontonummer); Konto konto = bank.findeKonto(kontonummer);
konto.einzahlen(betrag, "Einzahlung am Schalter", "Einzahlung", konto.getKunde().getName()); konto.einzahlen(betrag, "Einzahlung am Schalter", "Einzahlung", konto.getKunde().getName());

View File

@ -27,6 +27,7 @@ public class UI {
System.out.println("2 -> Konto anlegen"); System.out.println("2 -> Konto anlegen");
System.out.println("3 -> Konten anzeigen"); System.out.println("3 -> Konten anzeigen");
System.out.println("4 -> Konto auswählen"); System.out.println("4 -> Konto auswählen");
System.out.println("6 -> Negativ konten anzeigen");
System.out.println("5 -> Beenden"); System.out.println("5 -> Beenden");
System.out.println(); System.out.println();
@ -52,6 +53,9 @@ public class UI {
case 4: case 4:
kontoAuswählen(); kontoAuswählen();
break; break;
case 6:
negativKontenAnzeigen();
break;
case 5: case 5:
break mainloop; break mainloop;
@ -69,6 +73,13 @@ public class UI {
private void negativKontenAnzeigen() {
System.out.println("Negativ Konten: ");
bs.getNegativeKontostände();
}
private void kundeRegistrieren(){ private void kundeRegistrieren(){
boolean running = true; boolean running = true;