diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Bank.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Bank.java index f55174b..7d21027 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Bank.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Bank.java @@ -4,6 +4,8 @@ import java.io.Serializable; import java.util.Collection; import java.util.HashMap; +import org.hamcrest.core.IsInstanceOf; + public class Bank implements Serializable { private String name; private HashMap konten = new HashMap<>(); @@ -39,4 +41,11 @@ public class Bank implements Serializable { return konten.get(kontonummer); } + public boolean isGirokonto(int kontonummer) { + if(konten.get(kontonummer) instanceof Girokonto) + return true; + else + return false; + } + } diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Girokonto.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Girokonto.java index 7b936c9..15e15fb 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Girokonto.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Girokonto.java @@ -3,13 +3,14 @@ package de.hs_mannheim.informatik.bank.domain; import java.io.Serializable; public class Girokonto extends Konto implements Serializable { - + private int dispositionskredit = 0; + public Girokonto(String inhaber, int kontozähler) { super(inhaber, kontozähler); } public boolean überweise(Girokonto ziel, long betrag, String zweck) { - if ((super.getKontostand() + super.getDispo()) - betrag >= 0) { + if ((super.getKontostand() + dispositionskredit) - betrag >= 0) { this.auszahlen(betrag, zweck, "Überweisungsausgang", super.getInhaber()); ziel.einzahlen(betrag, zweck, "Überweisungseingang", super.getInhaber()); 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 d00b386..9feeb0c 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 @@ -7,8 +7,9 @@ public class Konto implements Serializable { private int nummer; private long stand = 0; private String inhaber; - private int dispositionskredit = 0; private int bewegungsZähler = 0; + int dispo = 0; + private ArrayList kontobewegungen; @@ -36,26 +37,16 @@ public class Konto implements Serializable { return stand; } - public void setDispo(int dispowert) { - this.dispositionskredit = dispowert; - } - - public int getDispo() { - return dispositionskredit; - } - public void einzahlen(long betrag, String zweck, String art, String auftraggeber) { stand += betrag; -// kontobewegungen.add(new Kontobewegung(betrag, zweck, art, auftraggeber)); speichereKontobewegung(betrag, zweck, art, auftraggeber); } public boolean auszahlen(long betrag, String zweck, String art, String auftraggeber) { - if ((stand + dispositionskredit) - betrag >= 0) { + if ((stand + dispo)- betrag >= 0) { stand -= betrag; -// kontobewegungen.add(new Kontobewegung(betrag * -1, zweck, art, auftraggeber)); speichereKontobewegung(betrag, zweck, art, auftraggeber); return true; @@ -81,7 +72,13 @@ public class Konto implements Serializable { if(bewegungsZähler % 10 == 0) { System.out.println("Aktuelles Saldo: " + stand); + //syso nur in UI + //oder mit size of } } + + public void setDispo(int zahl) { + this.dispo = zahl; + } } diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/KontoTests.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/KontoTests.java index 35a3718..8066344 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/KontoTests.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/KontoTests.java @@ -38,6 +38,7 @@ class KontoTests { Girokonto k2 = new Girokonto("Peter", 1); k1.setDispo(500); + k1.einzahlen(1000, "Test", "Einzahlung", "JUnit"); k1.auszahlen(1300, "Test", "Auszahlung", "JUnit"); 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 109ac25..0d10163 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 @@ -52,6 +52,8 @@ public class Banksystem { public boolean geldAuszahlen(int kontonummer, long betrag) throws Exception { Konto konto = bank.findeKonto(kontonummer); + + boolean ok = bank.isGirokonto(kontonummer); Persistenz.speichereBankDaten(this.bank, bank.getName()); diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/BanksystemTests.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/BanksystemTests.java index 2d26c08..8b8ffce 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/BanksystemTests.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/BanksystemTests.java @@ -7,9 +7,9 @@ import java.io.File; import org.junit.jupiter.api.Test; -import de.hs_mannheim.informatik.bank.infrastructure.Persistenz; +//import de.hs_mannheim.informatik.bank.infrastructure.Persistenz; -class BanksystemTest { +class BanksystemTests { @Test void smokeTest() throws Exception { @@ -38,7 +38,7 @@ class BanksystemTest { assertEquals(1300, bs.getKontostand(1000)); - File save = new File("C:/Users/User/git/Bank-System_Hummel/Bank-Beispiel/Testsystem-bank-data.ser"); + File save = new File("C:/Users/User/git/Bank-System_Fork/Bank-Beispiel/Testsystem-bank-data.ser"); System.out.println(save.exists()); @@ -59,7 +59,7 @@ class BanksystemTest { @Test void dateiLöschen2() { - File save = new File("C:/Users/User/git/Bank-System_Hummel/Bank-Beispiel/Testsystem-bank-data.ser"); + File save = new File("C:/Users/User/git/Bank-System_Fork/Bank-Beispiel/Testsystem-bank-data.ser"); save.exists(); save.delete();