forked from hummel/Bank-System
Kontoauszüge hinzugefügt
parent
6c65d0e351
commit
25105db288
|
@ -6,10 +6,6 @@
|
||||||
<attribute name="module" value="true"/>
|
<attribute name="module" value="true"/>
|
||||||
</attributes>
|
</attributes>
|
||||||
</classpathentry>
|
</classpathentry>
|
||||||
<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/5">
|
<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/5"/>
|
||||||
<attributes>
|
|
||||||
<attribute name="module" value="true"/>
|
|
||||||
</attributes>
|
|
||||||
</classpathentry>
|
|
||||||
<classpathentry kind="output" path="bin"/>
|
<classpathentry kind="output" path="bin"/>
|
||||||
</classpath>
|
</classpath>
|
||||||
|
|
|
@ -33,10 +33,10 @@ public class Bank {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void auszahlen(long betrag, int kontonummer) {
|
public void auszahlen(long betrag, int kontonummer) {
|
||||||
if(konten.containsKey(kontonummer)) {
|
if (konten.containsKey(kontonummer)) {
|
||||||
konten.get(kontonummer).auszahlen(betrag);
|
konten.get(kontonummer).auszahlen(betrag);
|
||||||
}
|
System.out.println("Betrag " + betrag + " auf Konto " + kontonummer + " eingezahlt");
|
||||||
else
|
} else
|
||||||
System.out.println("Konto nicht vorhanden");
|
System.out.println("Konto nicht vorhanden");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -47,4 +47,12 @@ public class Bank {
|
||||||
System.out.println("Konto nicht vorhanden");
|
System.out.println("Konto nicht vorhanden");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void kontoauszügeZeigen(int kontonummer) {
|
||||||
|
if (konten.containsKey(kontonummer)) {
|
||||||
|
for(int i = 0;konten.get(kontonummer).getKontoauszüge().size()> i;i++) {
|
||||||
|
System.out.println(konten.get(kontonummer).getKontoauszüge().get(i));
|
||||||
|
}
|
||||||
|
} else
|
||||||
|
System.out.println("Konto nicht vorhanden");
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -1,15 +1,21 @@
|
||||||
package de.hs_mannheim.informatik.bank.domain;
|
package de.hs_mannheim.informatik.bank.domain;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.HashMap;
|
||||||
|
|
||||||
public class Konto {
|
public class Konto {
|
||||||
private static int kontozähler = 0;
|
private static int kontozähler = 0;
|
||||||
|
|
||||||
private int nummer;
|
private int nummer;
|
||||||
private long stand = 0;
|
private long stand = 0;
|
||||||
private String inhaber;
|
private String inhaber;
|
||||||
|
private HashMap<Integer, String> kontoauszüge = new HashMap<>();
|
||||||
|
private int transaktionsCounter = 0;
|
||||||
|
|
||||||
public Konto(String inhaber) {
|
public Konto(String inhaber) {
|
||||||
nummer = 1000 + kontozähler++;
|
nummer = 1000 + kontozähler++;
|
||||||
this.inhaber = inhaber;
|
this.inhaber = inhaber;
|
||||||
|
kontoauszüge.put(transaktionsCounter++, "Konto wurde am " + LocalDateTime.now() + "eröffnet");
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getKontonummer() {
|
public int getKontonummer() {
|
||||||
|
@ -18,15 +24,23 @@ public class Konto {
|
||||||
|
|
||||||
public void einzahlen(long betrag) {
|
public void einzahlen(long betrag) {
|
||||||
stand += betrag;
|
stand += betrag;
|
||||||
|
kontoauszüge.put(transaktionsCounter++,
|
||||||
|
LocalDateTime.now() + " Betrag " + betrag + " wurde auf Konto " + nummer + " eingezahlt");
|
||||||
}
|
}
|
||||||
|
|
||||||
public void auszahlen(long betrag) {
|
public void auszahlen(long betrag) {
|
||||||
if(betrag <= stand)
|
if (betrag <= stand) {
|
||||||
stand-= betrag;
|
stand -= betrag;
|
||||||
else
|
kontoauszüge.put(transaktionsCounter++,
|
||||||
|
LocalDateTime.now() + " Betrag " + betrag + " wurde von Konto " + nummer + " abgehoben");
|
||||||
|
} else
|
||||||
System.out.println("Kontostand nicht aureichend");
|
System.out.println("Kontostand nicht aureichend");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public HashMap<Integer, String> getKontoauszüge(){
|
||||||
|
return kontoauszüge;
|
||||||
|
}
|
||||||
|
|
||||||
public long getKontostand() {
|
public long getKontostand() {
|
||||||
return stand;
|
return stand;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,23 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.domain;
|
||||||
|
|
||||||
|
import static org.junit.jupiter.api.Assertions.*;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
class KontoTests {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void test() {
|
||||||
|
Konto k = new Konto("Hans");
|
||||||
|
Bank b = new Bank("Sparkasse");
|
||||||
|
|
||||||
|
b.addKonto(k);
|
||||||
|
|
||||||
|
b.einzahlen(500, k.getKontonummer());
|
||||||
|
b.einzahlen(200, k.getKontonummer());
|
||||||
|
|
||||||
|
assertEquals(700, k.getKontostand());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -30,6 +30,7 @@ public class Banksystem {
|
||||||
public void kontostandZeigen(int kontonummer) {
|
public void kontostandZeigen(int kontonummer) {
|
||||||
bank.kontostandZeigen(kontonummer);
|
bank.kontostandZeigen(kontonummer);
|
||||||
}
|
}
|
||||||
|
|
||||||
public String[] getKontenliste() {
|
public String[] getKontenliste() {
|
||||||
Collection<Konto> konten = bank.getKontenliste();
|
Collection<Konto> konten = bank.getKontenliste();
|
||||||
String[] liste = new String[konten.size()];
|
String[] liste = new String[konten.size()];
|
||||||
|
@ -42,6 +43,10 @@ public class Banksystem {
|
||||||
return liste;
|
return liste;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void kontoauszügeZeigen(int kontonummer) {
|
||||||
|
bank.kontoauszügeZeigen(kontonummer);
|
||||||
|
}
|
||||||
|
|
||||||
public String getBankname() {
|
public String getBankname() {
|
||||||
return bank.getName();
|
return bank.getName();
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,23 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.facade;
|
||||||
|
|
||||||
|
import static org.junit.jupiter.api.Assertions.*;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.domain.Konto;
|
||||||
|
|
||||||
|
class BanksystemTests {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void einzahlenTest() {
|
||||||
|
Banksystem bs = new Banksystem("Sparkasse");
|
||||||
|
|
||||||
|
bs.kontoAnlegen("Hans");
|
||||||
|
|
||||||
|
bs.einzahlen(500, 1000);
|
||||||
|
bs.einzahlen(200, 1000);
|
||||||
|
|
||||||
|
assertEquals(700, 700);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -25,6 +25,7 @@ public class UI {
|
||||||
System.out.println("3 -> Geld einzahlen");
|
System.out.println("3 -> Geld einzahlen");
|
||||||
System.out.println("4 -> Geld auszahlen");
|
System.out.println("4 -> Geld auszahlen");
|
||||||
System.out.println("5 -> Kontostand anzeigen");
|
System.out.println("5 -> Kontostand anzeigen");
|
||||||
|
System.out.println("6 -> Kontoauszüge zeigen");
|
||||||
System.out.println("9 -> Beenden");
|
System.out.println("9 -> Beenden");
|
||||||
System.out.println();
|
System.out.println();
|
||||||
|
|
||||||
|
@ -48,6 +49,9 @@ public class UI {
|
||||||
case 5:
|
case 5:
|
||||||
kontostandZeigen();
|
kontostandZeigen();
|
||||||
break;
|
break;
|
||||||
|
case 6:
|
||||||
|
kontoauszügeZeigen();
|
||||||
|
break;
|
||||||
case 9:
|
case 9:
|
||||||
break mainloop;
|
break mainloop;
|
||||||
}
|
}
|
||||||
|
@ -117,4 +121,15 @@ public class UI {
|
||||||
System.out.println("Fehlerhafte Eingabe");
|
System.out.println("Fehlerhafte Eingabe");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void kontoauszügeZeigen() {
|
||||||
|
int kontonummer;
|
||||||
|
try {
|
||||||
|
System.out.print("Kontonummer eingeben: ");
|
||||||
|
kontonummer = Integer.parseInt(sc.nextLine());
|
||||||
|
bs.kontoauszügeZeigen(kontonummer);
|
||||||
|
} catch (Exception e) {
|
||||||
|
System.out.println("Fehlerhafte Eingabe");
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue