diff --git a/Bank-Beispiel/Konten.ser b/Bank-Beispiel/Konten.ser deleted file mode 100644 index 2c64c13..0000000 Binary files a/Bank-Beispiel/Konten.ser and /dev/null differ 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 b40f6ff..745ad54 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 @@ -8,6 +8,7 @@ import de.hs_mannheim.informatik.bank.persistence.PersistenceService; public class Konto implements Serializable { private static int kontozaehler = 0; private ArrayList bewegungen = new ArrayList(); + private ArrayList dates = new ArrayList(); private int nummer; private long stand = 0; private String inhaber; @@ -35,16 +36,28 @@ public class Konto implements Serializable { return stand; } + public static int getKontozaehler() { + return kontozaehler; + } + + public String getInhaber() { + return inhaber; + } + public ArrayList getBewegungen() { return bewegungen; } + public ArrayList getDates() { + return dates; + } + public void setBewegungen(String bewegung) { bewegungen.add(bewegung); } - public static int getKontozaehler() { - return kontozaehler; + public void setDate(String datum) { + dates.add(datum); } public static void setKontozaehler(int zaehler) { 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 e1687b1..802c9b4 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 @@ -51,9 +51,11 @@ public class Banksystem { // Betrag mit 2 Nachkommastellen für den User anzeigen lassen String betrag_aktuell = kontostandMitKomma(k); - k.setBewegungen(betrag_aktuell + " (+)"); - //DateTimeFormatter zeitformat = DateTimeFormatter.ofPattern("dd.MM.yyyy"); - //LocalDateTime zeit = LocalDateTime.now(); + + //Daten für Kontobewegung und Datum für Kontoauszug übergeben + k.setBewegungen(betrag_aktuell + " (+)"); + String datum = getDatum(k); + k.setDate(datum); return betrag_aktuell; } @@ -61,6 +63,7 @@ public class Banksystem { public String kontoAbheben(String betrag, int kontonr) { // Komma hinzufügen oder nicht (Aus 10 wird 10.00) betrag = betragMitKomma(betrag); + // Komma wird entfernt (10.00 wird zu 1000) long betrag_long = Long.parseLong(betrag.replace(".", "")); @@ -69,10 +72,21 @@ public class Banksystem { // Betrag mit 2 Nachkommastellen für den User anzeigen lassen String betrag_aktuell = kontostandMitKomma(k); - k.setBewegungen(betrag_aktuell + " (-)"); + + //Daten für Kontobewegung und Datum für Kontoauszug übergeben + k.setBewegungen(betrag + " (-)"); + String datum = getDatum(k); + k.setDate(datum); + return betrag_aktuell; } + private String getDatum(Konto k) { + DateTimeFormatter zeitformat = DateTimeFormatter.ofPattern("dd.MM.yyyy"); + LocalDateTime zeit = LocalDateTime.now(); + return zeitformat.format(zeit); + } + private String betragMitKomma(String betrag) { boolean komma = false; // Schaut ob Betrag mit Komma (zB: 42.50) @@ -94,11 +108,6 @@ public class Banksystem { return standKomma.toString(); } - public ArrayList kontoAuszug(int kontonr) { - Konto k = bank.getKonto(kontonr); - return k.getBewegungen(); - } - public void speichereKonten() throws FileNotFoundException, IOException { ArrayList konten = new ArrayList(bank.getKontenliste()); ps.speichereKontodaten(konten); @@ -131,4 +140,19 @@ public class Banksystem { public String getBankname() { return bank.getName(); } + + public ArrayList getBewegungen(int kontonr) { + Konto k = bank.getKonto(kontonr); + return k.getBewegungen(); + } + + public ArrayList getDates(int kontonr) { + Konto k = bank.getKonto(kontonr); + return k.getDates(); + } + + public String getInhaber(int kontonr) { + Konto k = bank.getKonto(kontonr); + return k.getInhaber(); + } } 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 7a5595a..3305a13 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 @@ -53,7 +53,7 @@ public class UI { private void kontenAnzeigen() { String[] konten = bs.getKontenliste(); if (konten.length > 0) { - System.out.println("Folgende Konten sind aktuell verfügbar:"); + System.out.println("Folgende Konten sind aktuell verfügbar:"); for (String s : konten) { System.out.println(s); } @@ -110,13 +110,19 @@ public class UI { int kontonr = sc.nextInt(); sc.nextLine(); - ArrayList bewegungen = new ArrayList(); - bewegungen = bs.kontoAuszug(kontonr); - for (String bewegung: bewegungen) { - System.out.println(bewegung); - } + ArrayList bewegungen = new ArrayList(bs.getBewegungen(kontonr)); + ArrayList dates = new ArrayList(bs.getDates(kontonr)); + String inhaber = bs.getInhaber(kontonr); - System.out.println("Aktueller Kontostand: " + bs.kontoStand(kontonr)); + System.out.println("-----------------------------------------------"); + System.out.println("Datum:\t\tInhaber:\t\tBetrag:"); + System.out.println(); + for (int i=0; i