diff --git a/src/de/hs_mannheim/informatik/bank/domain/Bank.java b/src/de/hs_mannheim/informatik/bank/domain/Bank.java index d8a1214..179231d 100644 --- a/src/de/hs_mannheim/informatik/bank/domain/Bank.java +++ b/src/de/hs_mannheim/informatik/bank/domain/Bank.java @@ -1,6 +1,10 @@ package de.hs_mannheim.informatik.bank.domain; +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.util.Calendar; import java.util.Collection; +import java.util.Date; import java.util.HashMap; public class Bank { @@ -8,6 +12,7 @@ public class Bank { private String name; private HashMap konten = new HashMap<>(); + public Bank(String name) { this.name = name; } @@ -27,6 +32,7 @@ public class Bank { public long geldWirdInDerBankAngelegt(int kontoNummer, long geldBetrag) { k = getKonto(kontoNummer); k.setStand(k.getStand()+geldBetrag); + k.setKontoAktivietetenString(k.getKontoAktivietetenString()+ getDatum() + " " + geldBetrag+","); return k.getStand(); } @@ -43,6 +49,7 @@ public class Bank { } k.setStand(k.getStand()-geldAbgehoben); + k.setKontoAktivietetenString(k.getKontoAktivietetenString()+ getDatum() +" -"+geldAbgehoben+","); return "Sie haben" + geldAbgehoben + "Euro abgehoben"; } @@ -51,4 +58,17 @@ public class Bank { return k; } + private String getDatum() { + String pattern = "MM/dd/yyyy HH:mm:ss"; + DateFormat df = new SimpleDateFormat(pattern); + Date nowDate = Calendar.getInstance().getTime(); + String nowString = df.format(nowDate); + return nowString; + } + + public String[] getAuszüge(int kontoNummer) { + k = getKonto(kontoNummer); + String[] auzügeStrings = k.getKontoAktivietetenString().split(","); + return auzügeStrings; + } } diff --git a/src/de/hs_mannheim/informatik/bank/domain/Konto.java b/src/de/hs_mannheim/informatik/bank/domain/Konto.java index 3ac3eef..2a267fd 100644 --- a/src/de/hs_mannheim/informatik/bank/domain/Konto.java +++ b/src/de/hs_mannheim/informatik/bank/domain/Konto.java @@ -1,18 +1,31 @@ package de.hs_mannheim.informatik.bank.domain; +import javax.lang.model.element.NestingKind; + public class Konto { + private static int kontozähler = 0; private int nummer; private long stand = 0; private String inhaber; + private String kontoAktivietetenString; public Konto(String inhaber) { nummer = 1000 + kontozähler++; this.inhaber = inhaber; getStand(); + kontoAktivietetenString = ""; } + public String getKontoAktivietetenString() { + return kontoAktivietetenString; + } + + public void setKontoAktivietetenString(String kontoAktivietetenString) { + this.kontoAktivietetenString = kontoAktivietetenString; + } + public int getKontonummer() { return nummer; } diff --git a/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java b/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java index c372c3d..b7f1ddf 100644 --- a/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java +++ b/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java @@ -49,4 +49,9 @@ public class Banksystem { String geldAbgehoben = bank.geldAbhebenBank(kontoNummer, geldAbheben); return geldAbgehoben; } + + public String[] getKontoAuszüge(int kontoNummer) { + String[] auszügeStrings = bank.getAuszüge(kontoNummer); + return auszügeStrings; + } } diff --git a/src/de/hs_mannheim/informatik/bank/ui/UI.java b/src/de/hs_mannheim/informatik/bank/ui/UI.java index edffded..5f0dd10 100644 --- a/src/de/hs_mannheim/informatik/bank/ui/UI.java +++ b/src/de/hs_mannheim/informatik/bank/ui/UI.java @@ -1,5 +1,6 @@ package de.hs_mannheim.informatik.bank.ui; +import java.util.Iterator; import java.util.Scanner; import de.hs_mannheim.informatik.bank.facade.Banksystem; @@ -26,6 +27,7 @@ public class UI { System.out.println("3 -> Geldbetrag einzahlen"); System.out.println("4 -> Konto abfragen"); System.out.println("5 -> Geld abheben"); + System.out.println("6 -> Kontoauszüge ausgeben"); System.out.println("9 -> Beenden"); System.out.println(); @@ -39,6 +41,7 @@ public class UI { case 3: geldbetragEinzahlen(); break; case 4: kontoAbfragen(); break; case 5: geldAbheben(); break; + case 6: kontoauszügeAnsugeben(); break; case 9: break mainloop; } } @@ -47,6 +50,19 @@ public class UI { } // hauptmenü + private void kontoauszügeAnsugeben() { + System.out.println("Geben Sie ihre Kontonummer ein"); + int kontoNummer = Integer.parseInt(sc.nextLine()); + String[] auszüge = bs.getKontoAuszüge(kontoNummer); + if (auszüge.length>0) { + for(String s : auszüge) { + System.out.println(s); + } + }else { + System.out.println("Es sind noch keine Aktivitäten vorhanden"); + } + } + private void geldAbheben() { System.out.println("Geben Sie ihre Kontonummer ein"); int kontoNummer = Integer.parseInt(sc.nextLine());