forked from hummel/Bank-System
Initial Push
parent
f8511e3116
commit
4e135b0bd9
|
@ -1,6 +1,8 @@
|
||||||
package de.hs_mannheim.informatik.bank.domain;
|
package de.hs_mannheim.informatik.bank.domain;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
|
||||||
public class Bank {
|
public class Bank {
|
||||||
|
@ -20,7 +22,18 @@ public class Bank {
|
||||||
}
|
}
|
||||||
|
|
||||||
public Collection<Konto> getKontenliste() {
|
public Collection<Konto> getKontenliste() {
|
||||||
return konten.values();
|
return konten.values();//Liste aus HashMaps
|
||||||
|
}
|
||||||
|
public ArrayList<Long> EinzahlungenAuszahlungen(int knum, long betrag ){
|
||||||
|
ArrayList<Long> bewegung= null;
|
||||||
|
if(knum != 0 && betrag !=0) {
|
||||||
|
bewegung=konten.get(knum).getZahlungen();
|
||||||
|
bewegung.add(betrag);
|
||||||
|
return bewegung;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,61 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.domain;
|
||||||
|
|
||||||
|
import static org.junit.jupiter.api.Assertions.*;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.BeforeAll;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
class TestBank {
|
||||||
|
private static Konto k1=null;
|
||||||
|
private static Konto k2=null;
|
||||||
|
private static Konto k3=null;
|
||||||
|
@BeforeAll
|
||||||
|
static void kontenErstellen() {
|
||||||
|
|
||||||
|
try {
|
||||||
|
k1= new Konto("Rahel Strack");
|
||||||
|
k2= new Konto("Micky Maus");
|
||||||
|
k3= new Konto("Peter Lustig");
|
||||||
|
}catch(Exception e) {
|
||||||
|
fail("account constructor doesn't work");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@Test
|
||||||
|
void testConcstructor() {
|
||||||
|
Bank b1 =null;
|
||||||
|
try {
|
||||||
|
b1= new Bank("Sparkasse Heidelberg");
|
||||||
|
}catch(Exception e) {
|
||||||
|
fail("bank constructor doens't work");
|
||||||
|
}
|
||||||
|
assertEquals(b1.getName(),"Sparkasse Heidelberg");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void testAddKonto() {
|
||||||
|
Bank b1 =null;
|
||||||
|
try {
|
||||||
|
b1= new Bank("Sparkasse Heidelberg");
|
||||||
|
}catch(Exception e) {
|
||||||
|
fail("bank constructor doens't work");
|
||||||
|
}
|
||||||
|
b1.addKonto(k1);
|
||||||
|
assertTrue(b1.getKontenliste().contains(k1));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void testGetKontenliste() {
|
||||||
|
Bank b1 =null;
|
||||||
|
try {
|
||||||
|
b1= new Bank("Sparkasse Heidelberg");
|
||||||
|
}catch(Exception e) {
|
||||||
|
fail("bank constructor doens't work");
|
||||||
|
}
|
||||||
|
assertTrue(b1.getKontenliste().isEmpty());
|
||||||
|
b1.addKonto(k2);
|
||||||
|
b1.addKonto(k3);
|
||||||
|
assertEquals(b1.getKontenliste().size(),2);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -1,11 +1,14 @@
|
||||||
package de.hs_mannheim.informatik.bank.domain;
|
package de.hs_mannheim.informatik.bank.domain;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
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 ArrayList<Long> zahlungen= new ArrayList<>();
|
||||||
|
|
||||||
public Konto(String inhaber) {
|
public Konto(String inhaber) {
|
||||||
nummer = 1000 + kontozähler++;
|
nummer = 1000 + kontozähler++;
|
||||||
|
@ -16,6 +19,27 @@ public class Konto {
|
||||||
return nummer;
|
return nummer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getInhaber() {//hinzugefügt
|
||||||
|
return inhaber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public long getStand() {
|
||||||
|
return stand;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setStand(long stand) {
|
||||||
|
|
||||||
|
this.stand = stand;
|
||||||
|
}
|
||||||
|
|
||||||
|
public ArrayList<Long> getZahlungen() {
|
||||||
|
return zahlungen;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static int getKontozähler() { //hinzugefügt
|
||||||
|
return kontozähler;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return "Konto [nummer=" + nummer + ", inhaber=" + inhaber + "]";
|
return "Konto [nummer=" + nummer + ", inhaber=" + inhaber + "]";
|
||||||
|
|
|
@ -0,0 +1,66 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.domain;
|
||||||
|
|
||||||
|
import static org.junit.jupiter.api.Assertions.*;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Order;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.junit.jupiter.api.TestMethodOrder;
|
||||||
|
import org.junit.jupiter.api.MethodOrderer.OrderAnnotation;
|
||||||
|
@TestMethodOrder(OrderAnnotation.class)
|
||||||
|
class TestKonto {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@Order(1)
|
||||||
|
void testConstructor() {
|
||||||
|
Konto konto1=null;
|
||||||
|
try {
|
||||||
|
konto1=new Konto("Rahel Strack");
|
||||||
|
}catch(Exception e) {
|
||||||
|
fail("konto construktor doesn't work");
|
||||||
|
}
|
||||||
|
assertEquals(konto1.getInhaber(),"Rahel Strack");
|
||||||
|
assertEquals(konto1.getKontonummer(),1000);
|
||||||
|
assertEquals(konto1.getStand(),0);
|
||||||
|
}
|
||||||
|
@Test
|
||||||
|
@Order(2)
|
||||||
|
void testKontozähler() {
|
||||||
|
Konto konto2 =null;
|
||||||
|
try {
|
||||||
|
konto2 = new Konto("Sherlock Holmes");
|
||||||
|
|
||||||
|
}catch(Exception e) {
|
||||||
|
fail("konto constructor doens't work");
|
||||||
|
}
|
||||||
|
int kzaehler=Konto.getKontozähler();
|
||||||
|
assertEquals(kzaehler,2);
|
||||||
|
}
|
||||||
|
@Test
|
||||||
|
@Order(3)
|
||||||
|
void testSetStand() {
|
||||||
|
Konto konto3 =null;
|
||||||
|
try {
|
||||||
|
konto3 = new Konto("Sherlock Holmes");
|
||||||
|
|
||||||
|
}catch(Exception e) {
|
||||||
|
fail("konto constructor doens't work");
|
||||||
|
}
|
||||||
|
konto3.setStand(700);
|
||||||
|
assertEquals(konto3.getStand(),700);
|
||||||
|
|
||||||
|
}
|
||||||
|
@Test
|
||||||
|
@Order(4)
|
||||||
|
void testToString() {
|
||||||
|
Konto konto4 =null;
|
||||||
|
try {
|
||||||
|
konto4 = new Konto("Sherlock Holmes");
|
||||||
|
|
||||||
|
}catch(Exception e) {
|
||||||
|
fail("konto constructor doens't work");
|
||||||
|
}
|
||||||
|
assertEquals(konto4.toString(),"Konto [nummer=" + 1003 + ", inhaber=Sherlock Holmes]");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,39 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.domain;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
public class Kontobewegung {
|
||||||
|
private String auftraggeber=null;
|
||||||
|
private Date datum = null;
|
||||||
|
private Zahlungsart zahlungsart=null;
|
||||||
|
|
||||||
|
public Kontobewegung(String auftraggeber, Zahlungsart zahlungsart) {
|
||||||
|
this.auftraggeber=auftraggeber;
|
||||||
|
this.datum=datum;
|
||||||
|
this.zahlungsart=zahlungsart;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAuftraggeber() {
|
||||||
|
return auftraggeber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAuftraggeber(String auftraggeber) {
|
||||||
|
this.auftraggeber = auftraggeber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getDatum() {
|
||||||
|
return datum;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDatum(Date datum) {
|
||||||
|
this.datum = datum;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Zahlungsart getZahlungsart() {
|
||||||
|
return zahlungsart;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setZahlungsart(Zahlungsart zahlungsart) {
|
||||||
|
this.zahlungsart = zahlungsart;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,14 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.domain;
|
||||||
|
|
||||||
|
import static org.junit.jupiter.api.Assertions.*;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
class KontobewegungTest {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void test() {
|
||||||
|
fail("Not yet implemented");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,22 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.domain;
|
||||||
|
|
||||||
|
public enum Zahlungsart {
|
||||||
|
EINZAHLUNG("einzahlung"),
|
||||||
|
AUSZAHLUNG("auszahlung"),
|
||||||
|
UEBERWEISUNG("Ueberweisung");
|
||||||
|
|
||||||
|
private String zArt;
|
||||||
|
|
||||||
|
Zahlungsart (String zArt)
|
||||||
|
{
|
||||||
|
this.setzArt(zArt);
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getzArt() {
|
||||||
|
return zArt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setzArt(String zArt) {
|
||||||
|
this.zArt = zArt;
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,6 +1,8 @@
|
||||||
package de.hs_mannheim.informatik.bank.facade;
|
package de.hs_mannheim.informatik.bank.facade;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import de.hs_mannheim.informatik.bank.domain.Bank;
|
import de.hs_mannheim.informatik.bank.domain.Bank;
|
||||||
import de.hs_mannheim.informatik.bank.domain.Konto;
|
import de.hs_mannheim.informatik.bank.domain.Konto;
|
||||||
|
@ -12,26 +14,135 @@ public class Banksystem {
|
||||||
this.bank = new Bank(bankname);
|
this.bank = new Bank(bankname);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int kontoAnlegen(String name) {
|
public Bank getBank() {
|
||||||
Konto k = new Konto(name);
|
return bank;
|
||||||
bank.addKonto(k);
|
}
|
||||||
|
|
||||||
return k.getKontonummer();
|
public int kontoAnlegen(String name) {
|
||||||
|
if (name != null) {
|
||||||
|
Konto k = new Konto(name);
|
||||||
|
bank.addKonto(k);
|
||||||
|
|
||||||
|
return k.getKontonummer();
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String[] getKontenliste() {
|
public String[] getKontenliste() {
|
||||||
Collection<Konto> konten = bank.getKontenliste();
|
Collection<Konto> konten = bank.getKontenliste();
|
||||||
String[] liste = new String[konten.size()];
|
if (!konten.isEmpty()) {
|
||||||
|
String[] liste = new String[/* bank.getKontenliste().size() */ konten.size()];
|
||||||
|
|
||||||
int i = 0;
|
int i = 0;
|
||||||
for (Konto k : konten) {
|
for (Konto k : /* bank.getKontenliste() */konten) {
|
||||||
liste[i++] = k.toString();
|
liste[i++] = k.toString();
|
||||||
|
}
|
||||||
|
return liste;
|
||||||
}
|
}
|
||||||
|
return null;
|
||||||
return liste;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getBankname() {
|
public String getBankname() {
|
||||||
return bank.getName();
|
return bank.getName();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ArrayList<Long> kontoAuszug(int knum, long sum) {
|
||||||
|
ArrayList<Long> zahlungen = null;
|
||||||
|
if (knum != 0 && sum != 0) {
|
||||||
|
zahlungen = bank.EinzahlungenAuszahlungen(knum, sum);
|
||||||
|
if (zahlungen != null) {
|
||||||
|
for (Long zahlung : zahlungen) {
|
||||||
|
if (zahlung > 0) {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String kontoAuszugToString(int knum) {
|
||||||
|
ArrayList<Long> zahlungen = null;
|
||||||
|
String back = "";
|
||||||
|
if (knum != 0) {
|
||||||
|
zahlungen = bank.EinzahlungenAuszahlungen(knum, 0);
|
||||||
|
if (!zahlungen.isEmpty()) {
|
||||||
|
for (Long zahlung : zahlungen) {
|
||||||
|
if (zahlung > 0) {
|
||||||
|
back+=zahlung.toString(zahlung)+ "\n";
|
||||||
|
}
|
||||||
|
}return back;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
private String toString(long betrag) {
|
||||||
|
if (betrag >= 0) {
|
||||||
|
return "Auszahlung: " + betrag;
|
||||||
|
}
|
||||||
|
return "Einzahlung: " + betrag;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Geldbetrag einzahlen
|
||||||
|
public long betragEinzahlen(int knum, long amount) {
|
||||||
|
long sum = 0;
|
||||||
|
Collection<Konto> liste = bank.getKontenliste();
|
||||||
|
if (knum != 0 && amount != 0) {
|
||||||
|
for (Konto k : liste) {
|
||||||
|
if (k.getKontonummer() == knum) {
|
||||||
|
sum = k.getStand();
|
||||||
|
sum += amount;
|
||||||
|
bank.EinzahlungenAuszahlungen(k.getKontonummer(), amount);
|
||||||
|
k.setStand(sum);
|
||||||
|
return k.getStand();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Betrag auszahlen
|
||||||
|
public long betragAuszahlen(int knum, long amount) {
|
||||||
|
long sum = 0;
|
||||||
|
Collection<Konto> liste = bank.getKontenliste();
|
||||||
|
if (knum != 0 && amount != 0) {
|
||||||
|
for (Konto k : liste) {
|
||||||
|
if (k.getKontonummer() == knum) {
|
||||||
|
sum = k.getStand();
|
||||||
|
sum -= amount;
|
||||||
|
bank.EinzahlungenAuszahlungen(k.getKontonummer(), -amount);
|
||||||
|
k.setStand(sum);
|
||||||
|
return k.getStand();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public long kontoStand(int knum) {
|
||||||
|
if (knum != 0 && bank.getKontenliste() != null) {
|
||||||
|
for (Konto k : bank.getKontenliste()) {
|
||||||
|
if (k.getKontonummer() == knum) {
|
||||||
|
return k.getStand();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// private boolean isString(String s)
|
||||||
|
// {
|
||||||
|
// if (s == null || s.length()<=2) {
|
||||||
|
// return false;
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// for (int i = 0; i < s.length(); i++)
|
||||||
|
// {
|
||||||
|
// char c = s.charAt(i);
|
||||||
|
// if (!(c >= 'A' && c <= 'Z') && !(c >= 'a' && c <= 'z')) {
|
||||||
|
// return false;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// return true;
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,119 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.facade;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertArrayEquals;
|
||||||
|
|
||||||
|
import static org.junit.jupiter.api.Assertions.*;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Order;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.junit.jupiter.api.TestMethodOrder;
|
||||||
|
import org.junit.jupiter.api.MethodOrderer.OrderAnnotation;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.domain.Konto;
|
||||||
|
@TestMethodOrder(OrderAnnotation.class)
|
||||||
|
class TestBanksystem {
|
||||||
|
@Test
|
||||||
|
@Order(1)
|
||||||
|
void testConstructor() {
|
||||||
|
Banksystem bs1=null;
|
||||||
|
try {
|
||||||
|
bs1= new Banksystem("Sparkasse Heidelberg");
|
||||||
|
}catch(Exception e) {
|
||||||
|
fail("banksystem constructor doesn't work");
|
||||||
|
}
|
||||||
|
assertEquals(bs1.getBankname(),"Sparkasse Heidelberg");
|
||||||
|
}
|
||||||
|
@Test
|
||||||
|
@Order(2)
|
||||||
|
void testKontoAnlegen() {
|
||||||
|
Banksystem bs2=null;
|
||||||
|
try {
|
||||||
|
bs2= new Banksystem("Sparkasse Hamburg");
|
||||||
|
}catch(Exception e) {
|
||||||
|
fail("banksystem constructor doesn't work");
|
||||||
|
}
|
||||||
|
assertTrue(bs2.getBank().getKontenliste().isEmpty());
|
||||||
|
bs2.kontoAnlegen("Peter Pan");
|
||||||
|
assertEquals(bs2.getKontenliste()[0].toString(),"Konto [nummer=" + 1007 + ", inhaber=Peter Pan]");
|
||||||
|
}
|
||||||
|
@Test
|
||||||
|
@Order(3)
|
||||||
|
void testGetKontenliste() {
|
||||||
|
Banksystem bs3=null;
|
||||||
|
try {
|
||||||
|
bs3= new Banksystem("Sparkasse Berlin");
|
||||||
|
}catch(Exception e) {
|
||||||
|
fail("banksystem constructor doesn't work");
|
||||||
|
}
|
||||||
|
assertEquals(bs3.getKontenliste(),null);
|
||||||
|
Konto k1 = null,k2=null,k3 = null;
|
||||||
|
try {
|
||||||
|
k1= new Konto("Rahel Strack");
|
||||||
|
k2= new Konto("Micky Maus");
|
||||||
|
k3= new Konto("Peter Lustig");
|
||||||
|
|
||||||
|
}catch(Exception e) {
|
||||||
|
fail("constructor doesn't work");
|
||||||
|
}
|
||||||
|
String[] kl1= {k1.toString(),k2.toString(),k3.toString()};
|
||||||
|
bs3.getBank().addKonto(k1);
|
||||||
|
bs3.getBank().addKonto(k2);
|
||||||
|
bs3.getBank().addKonto(k3);
|
||||||
|
assertEquals(bs3.getKontenliste().length,3);
|
||||||
|
assertArrayEquals(bs3.getKontenliste(),kl1);
|
||||||
|
|
||||||
|
}
|
||||||
|
@Test
|
||||||
|
@Order(4)
|
||||||
|
void testBetragEinzahlen() {
|
||||||
|
Banksystem bs4=null;
|
||||||
|
try {
|
||||||
|
bs4= new Banksystem("Sparkasse Ludwigshafen");
|
||||||
|
}catch(Exception e) {
|
||||||
|
fail("banksystem constructor doesn't work");
|
||||||
|
}
|
||||||
|
bs4.kontoAnlegen("Franz");
|
||||||
|
assertEquals(bs4.betragEinzahlen(0, 0),0);
|
||||||
|
assertEquals(bs4.betragEinzahlen(1000, 0),0);
|
||||||
|
assertEquals(bs4.betragEinzahlen(0, 500),0);
|
||||||
|
assertEquals(bs4.betragEinzahlen(1011, 500),500);
|
||||||
|
}
|
||||||
|
@Test
|
||||||
|
@Order(5)
|
||||||
|
void testKontoStand() {
|
||||||
|
Banksystem bs5=null;
|
||||||
|
try {
|
||||||
|
bs5= new Banksystem("Sparkasse Bremen");
|
||||||
|
}catch(Exception e) {
|
||||||
|
fail("banksystem constructor doesn't work");
|
||||||
|
}
|
||||||
|
bs5.kontoAnlegen("Sherlock");
|
||||||
|
bs5.kontoAnlegen("Franz Kafka");
|
||||||
|
assertEquals(bs5.kontoStand(1000),0);
|
||||||
|
assertEquals(bs5.kontoStand(0),0);
|
||||||
|
assertEquals(bs5.kontoStand(2000),0);
|
||||||
|
bs5.betragEinzahlen(1012, 700);
|
||||||
|
assertEquals(bs5.kontoStand(1012),700);
|
||||||
|
|
||||||
|
}
|
||||||
|
@Test
|
||||||
|
@Order(6)
|
||||||
|
void testBetragAuszahlen() {
|
||||||
|
Banksystem bs6=null;
|
||||||
|
try {
|
||||||
|
bs6= new Banksystem("Sparkasse Ludwigshafen");
|
||||||
|
}catch(Exception e) {
|
||||||
|
fail("banksystem constructor doesn't work");
|
||||||
|
}
|
||||||
|
|
||||||
|
bs6.kontoAnlegen("Adrian");
|
||||||
|
|
||||||
|
assertEquals(bs6.betragAuszahlen(0, 0),0);
|
||||||
|
assertEquals(bs6.betragAuszahlen(1000, 0),0);
|
||||||
|
assertEquals(bs6.betragAuszahlen(0, 500),0);
|
||||||
|
bs6.betragEinzahlen(1014, 700);
|
||||||
|
assertEquals(bs6.betragAuszahlen(1014, 500),200);
|
||||||
|
assertEquals(bs6.betragAuszahlen(1014, 500),-300);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -6,46 +6,78 @@ import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
public class UI {
|
public class UI {
|
||||||
private Banksystem bs;
|
private Banksystem bs;
|
||||||
Scanner sc = new Scanner(System.in);
|
private Scanner sc = new Scanner(System.in);
|
||||||
|
|
||||||
public UI(Banksystem bs) {
|
public UI(Banksystem bs) {
|
||||||
this.bs = bs;
|
this.bs = bs;
|
||||||
hauptmenü();
|
hauptmenü();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Banksystem getBs() {
|
||||||
|
return bs;
|
||||||
|
}
|
||||||
|
|
||||||
private void hauptmenü() {
|
private void hauptmenü() {
|
||||||
System.out.println("Willkommen bei der " + bs.getBankname() + "!");
|
System.out.println("Willkommen bei der " + bs.getBankname() + "!");
|
||||||
|
|
||||||
mainloop:
|
mainloop:
|
||||||
while (true) {
|
while (true) {
|
||||||
System.out.println();
|
System.out.println();
|
||||||
System.out.println("--------");
|
System.out.println("--------");
|
||||||
System.out.println("Hauptmenü");
|
System.out.println("Hauptmenü");
|
||||||
System.out.println("1 -> Konten anzeigen");
|
System.out.println("1 -> Konten anzeigen");
|
||||||
System.out.println("2 -> Konto anlegen");
|
System.out.println("2 -> Konto anlegen");
|
||||||
System.out.println("9 -> Beenden");
|
System.out.println("3 -> Betrag einzahlen");
|
||||||
System.out.println();
|
System.out.println("4 -> Kontostand anzeigen");
|
||||||
|
System.out.println("5 -> Betrag auszahlen");
|
||||||
|
System.out.println("6 -> Kontoauszug ausgeben");
|
||||||
|
System.out.println("9 -> Beenden");
|
||||||
|
System.out.println();
|
||||||
|
|
||||||
System.out.print("> ");
|
System.out.print("> ");
|
||||||
int input = Integer.parseInt(sc.nextLine());
|
int input = 0;
|
||||||
System.out.println();
|
try {
|
||||||
|
input = Integer.parseInt(sc.nextLine());
|
||||||
switch(input) {
|
} catch (NumberFormatException e) {
|
||||||
case 1: kontenAnzeigen(); break;
|
System.out.println("Falsche Eingabe");
|
||||||
case 2: kontoAnlegen(); break;
|
continue;
|
||||||
case 9: break mainloop;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
System.out.println();
|
||||||
|
|
||||||
|
switch (input) {
|
||||||
|
case 1:
|
||||||
|
kontenAnzeigen();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
kontoAnlegen();
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
betragEinzahlen();
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
kontoStand();
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
betragAuszahlen();
|
||||||
|
break;
|
||||||
|
case 6:
|
||||||
|
kontoAuszug();
|
||||||
|
break;
|
||||||
|
case 9:
|
||||||
|
break mainloop;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
System.out.println("Auf Wiedersehen!");
|
System.out.println("Auf Wiedersehen!");
|
||||||
|
sc.close();
|
||||||
} // hauptmenü
|
} // hauptmenü
|
||||||
|
|
||||||
private void kontenAnzeigen() {
|
private void kontenAnzeigen() {
|
||||||
String[] konten = bs.getKontenliste();
|
if (bs.getKontenliste() != null) {
|
||||||
if (konten.length > 0) {
|
// 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) {
|
for (String s : bs.getKontenliste()) {
|
||||||
System.out.println(s);
|
System.out.println(s);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -55,10 +87,81 @@ public class UI {
|
||||||
|
|
||||||
private void kontoAnlegen() {
|
private void kontoAnlegen() {
|
||||||
System.out.println("Bitte den Namen des Kontoinhabers angeben: ");
|
System.out.println("Bitte den Namen des Kontoinhabers angeben: ");
|
||||||
String name = sc.nextLine();
|
String name = sc.nextLine();// bei Enter wird neue Kontonummer vergeben, aber kein neues Konto angelegt
|
||||||
|
|
||||||
int kontonummer = bs.kontoAnlegen(name);
|
int kontonummer = bs.kontoAnlegen(name);
|
||||||
System.out.println("Konto mit der Nummer " + kontonummer + " neu angelegt.");
|
System.out.println("Konto mit der Nummer " + kontonummer + " neu angelegt.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Gesamtbetrag ausgeben
|
||||||
|
private void betragEinzahlen() {
|
||||||
|
System.out.println("Bitte die Kontonummer angeben:");
|
||||||
|
int kontonummer = 0;
|
||||||
|
try {
|
||||||
|
kontonummer = Integer.parseInt(sc.nextLine()); // sinnvoller variable oben zu erstellen und dann in den
|
||||||
|
System.out.println("Bitte den einzuzahlenden Betrag eingeben:");
|
||||||
|
long betrag = 0;
|
||||||
|
try {
|
||||||
|
betrag = Long.parseLong(sc.nextLine());
|
||||||
|
long kstand = bs.betragEinzahlen(kontonummer, betrag);
|
||||||
|
if (kstand != 0) {
|
||||||
|
System.out.println("Der Kontostand des Kontos " + kontonummer + " ist: " + kstand+" €.");
|
||||||
|
}
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
System.out.println("Inkorrekte Eingabe!");
|
||||||
|
System.out.println("Es konnte kein Betrag eingezahlt werden.");
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
System.out.println("Inkorrekte Eingabe!");
|
||||||
|
System.out.println("Es konnte kein Betrag eingezahlt werden.");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void betragAuszahlen() {
|
||||||
|
System.out.println("Bitte die Kontonummer angeben:");
|
||||||
|
int kontonummer = 0;
|
||||||
|
try {
|
||||||
|
kontonummer = Integer.parseInt(sc.nextLine()); // sinnvoller variable oben zu erstellen und dann in den
|
||||||
|
System.out.println("Bitte den auszuzahlenden Betrag eingeben:");
|
||||||
|
long betrag = 0;
|
||||||
|
try {
|
||||||
|
betrag = Long.parseLong(sc.nextLine());
|
||||||
|
long kstand = bs.betragAuszahlen(kontonummer, betrag);
|
||||||
|
if (kstand != 0) {
|
||||||
|
System.out.println("Der Kontostand des Kontos " + kontonummer + " ist: " + kstand+" €.");
|
||||||
|
}
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
System.out.println("Inkorrekte Eingabe!");
|
||||||
|
System.out.println("Es konnte kein Betrag eingezahlt werden.");
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
System.out.println("Inkorrekte Eingabe!");
|
||||||
|
System.out.println("Es konnte kein Betrag eingezahlt werden.");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void kontoStand() {
|
||||||
|
System.out.println("Bitte die Kontonummer angeben:");
|
||||||
|
int kontonummer = 0;
|
||||||
|
try {
|
||||||
|
kontonummer = Integer.parseInt(sc.nextLine());
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
System.out.println("Inkorrekte Eingabe!");
|
||||||
|
System.out.println("Es wurde kein Konto mit dieser Nummer gefunden.");
|
||||||
|
}
|
||||||
|
long kstand = bs.kontoStand(kontonummer);
|
||||||
|
if (kstand != 0) {
|
||||||
|
System.out.println("Der Kontostand des Kontos " + kontonummer + " beträgt: " + kstand);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
private void kontoAuszug() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
package persistence;
|
||||||
|
|
||||||
|
public class Datenspeicherung {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,14 @@
|
||||||
|
package persistence;
|
||||||
|
|
||||||
|
import static org.junit.jupiter.api.Assertions.*;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
class DatenspeicherungTest {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void test() {
|
||||||
|
fail("Not yet implemented");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue