Abgabe Neu

mehtapilhan 2022-10-25 16:49:45 +02:00
parent f1c9890269
commit 767e7c9d52
4 changed files with 25 additions and 14 deletions

View File

@ -6,6 +6,8 @@ import java.util.Collection;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
public class Bank implements Serializable { public class Bank implements Serializable {
private String name; private String name;
@ -33,19 +35,20 @@ public class Bank implements Serializable {
return k.getKontonummer(); return k.getKontonummer();
} }
public long zahleEin(Integer kontonummer, long einzahlung) {
Konto konto = konten.get(kontonummer);
if(konto == null)
return Long.MIN_VALUE;
return konto.zahleEin(einzahlung, konto.getName()); public long zahleEin(int kontonummer, long betrag) throws Exception {
Konto konto = findeKonto(kontonummer);
konto.zahleEin(betrag, null);
return konto.getKontostand();
} }
public long zahleAus(Integer kontonummer, long einzahlung) {
Konto konto = konten.get(kontonummer);
if(konto == null) public long zahleAus(Integer kontonummer, long einzahlung) {
return Long.MIN_VALUE; Konto konto = findeKonto(kontonummer);
// if(konto == null)
// return Long.MIN_VALUE;
return konto.zahleAus(einzahlung,konto.getName()); return konto.zahleAus(einzahlung,konto.getName());
} }
@ -97,4 +100,8 @@ public class Bank implements Serializable {
Konto konto = konten.get(kontonummer); Konto konto = konten.get(kontonummer);
return konto.getSaldo(anzahl); return konto.getSaldo(anzahl);
} }
public Konto findeKonto(int kontonummer) {
return konten.get(kontonummer);
}
} }

View File

@ -28,7 +28,6 @@ class GirokontoTest {
} }
//konto darf nicht unter 0 fallen darf kein - betrag angeben, schauen ob es größer als 0 ist
// oos = legt neue datei ein, wenn die datei da ist dann öffnet es die datei, da ist ne varibale drin und das wird in input stream reingeschrieben und ausgegebn // oos = legt neue datei ein, wenn die datei da ist dann öffnet es die datei, da ist ne varibale drin und das wird in input stream reingeschrieben und ausgegebn
@Test @Test

View File

@ -40,7 +40,9 @@ public class Banksystem implements Serializable {
return liste; return liste;
} }
public long zahleEin(Integer kontonummer, long einzahlung) throws Exception { public long zahleEin(Integer kontonummer, long einzahlung) throws Exception {
Konto konto = bank.findeKonto(kontonummer);
BankSerializer.speichereBankDaten(this.bank, bank.getName()); BankSerializer.speichereBankDaten(this.bank, bank.getName());
return bank.zahleEin(kontonummer, einzahlung); return bank.zahleEin(kontonummer, einzahlung);

View File

@ -33,21 +33,24 @@ class SystemTest {
void testZahelEin() throws Exception { void testZahelEin() throws Exception {
Banksystem bs = new Banksystem("Testbank"); Banksystem bs = new Banksystem("Testbank");
//int kontonummer = 1000; //int kontonummer = 1000;
bs.kontoAnlegen("hans", 1);
long einzahlung = 500; long einzahlung = 500;
Konto k = new Konto ("Hans",1); // Konto k = new Konto ("Hans",1);
bs.zahleEin(1000, einzahlung); bs.zahleEin(1001, einzahlung);
assertEquals( 500, bs.getKontostand(1000)); assertEquals( 500, bs.getKontostand(1000));
} }
@Test @Test
void zahleAusTest () throws Exception { void zahleAusTest () throws Exception {
Banksystem bs = new Banksystem("Testbank"); Banksystem bs = new Banksystem("Testbank");
Konto k = new Konto("Hans", 1); // Konto k = new Konto("Hans", 1);
bs.kontoAnlegen("hans", 1);
int kontonummer = 1001; int kontonummer = 1001;
long einzahlung = 500; long einzahlung = 500;
bs.zahleEin(1000, einzahlung); bs.zahleEin(1000, einzahlung);
bs.zahleAus(1001, 400); bs.zahleAus(1000, 400);
assertEquals(100, bs.getKontostand(1000)); assertEquals(100, bs.getKontostand(1000));
} }