kontobewegungen

main
informatikperson 2022-10-25 13:00:03 +02:00
parent 834487d0cd
commit 085723e988
7 changed files with 73 additions and 30 deletions

View File

@ -25,7 +25,7 @@ public class Bank implements Serializable{
public Collection<Konto> getKontenliste() {
return konten.values();
}
public List<Kontoauszüge> getAuszüge(int kontonummer){
public List<Kontobewegungen> getAuszüge(int kontonummer){
Konto konto = konten.get(kontonummer);
if (konto == null) {
return new ArrayList<>();

View File

@ -0,0 +1,25 @@
package de.hs_mannheim.informatik.bank.domain;
import java.io.Serializable;
public class Girokonto extends Konto implements Serializable{
public Girokonto(String inhaber, int kontozähler) {
super(inhaber, kontozähler);
}
public boolean Überweise(Girokonto ziel, long betrag, String zweck) {
if (super.getKontostand() - betrag >= 0) {
this.auszahlen(betrag, zweck, "Ãœberweisungsausgang", super.getInhaber());
ziel.einzahlen(betrag, zweck, "Ãœberweisungseingang", super.getInhaber());
return true;
}
return false;
}
@Override
public String toString() {
return "Giro-" + super.toString();
}
}

View File

@ -2,47 +2,65 @@ package de.hs_mannheim.informatik.bank.domain;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
public class Konto implements Serializable {
private static int kontozähler = 0;
public class Konto implements Serializable {
private int nummer;
private long stand = 0;
private String inhaber;
private ArrayList<Kontoauszüge> auszüge = new ArrayList<>();
private ArrayList<Kontobewegungen> kontobewegungen;
public Konto(String inhaber) {
nummer = 1000 + kontozähler++;
public Konto(String inhaber, int kontozähler) {
nummer = 1000 + kontozähler;
this.inhaber = inhaber;
this.kontobewegungen = new ArrayList<>();
}
public int getKontonummer() {
return nummer;
}
public String getKontoinhaber() {
return inhaber;
}
@Override
public String toString() {
String ausgabe ="Konto [nummer=" + nummer + ", inhaber=" + inhaber + ", stand=" +stand + "]";
return ausgabe ;
return "Konto [nummer=" + nummer + ", inhaber=" + inhaber + " kontostand="+stand+"]";
}
public long addKontostand(String inhaber, long zahl) {
stand = getKontostand() +zahl;
auszüge.add(new Kontoauszüge(stand, zahl, inhaber));
return stand;
public String getInhaber() {
return inhaber;
}
public long getKontostand() {
return stand;
}
public List<Kontoauszüge> getAuszüge() {
return auszüge;
public void einzahlen(long betrag, String zweck, String art, String auftraggeber) {
stand += betrag;
kontobewegungen.add(new Kontobewegungen(betrag, zweck, art, auftraggeber));
}
public boolean auszahlen(long betrag, String zweck, String art, String auftraggeber) {
if (stand - betrag >= 0) {
stand -= betrag;
kontobewegungen.add(new Kontobewegungen(betrag * -1, zweck, art, auftraggeber));
return true;
}
return false;
}
public String[] getKontobewegungen() {
String[] auflistung = new String[kontobewegungen.size()];
int i = 0;
for (Kontobewegungen kb : kontobewegungen) {
auflistung[i++] = kb.toString();
}
return auflistung;
}
}

View File

@ -3,14 +3,14 @@ package de.hs_mannheim.informatik.bank.domain;
import java.io.Serializable;
import java.util.Date;
public class Kontoauszüge implements Serializable {
public class Kontobewegungen implements Serializable {
private long kontostand;
private long betrag;
private Date date = new Date();
private String auftraggeber;
public Kontoauszüge(long kontozustand, long betrag, String auftraggeber) {
public Kontobewegungen(long kontozustand, long betrag, String auftraggeber) {
this.kontostand = kontostand;
this.betrag = betrag;
this.auftraggeber = auftraggeber;

View File

@ -5,7 +5,7 @@ import java.util.List;
import de.hs_mannheim.informatik.bank.domain.Bank;
import de.hs_mannheim.informatik.bank.domain.Konto;
import de.hs_mannheim.informatik.bank.domain.Kontoauszüge;
import de.hs_mannheim.informatik.bank.domain.Kontobewegungen;
import infrastruktur.Persistenz;
public class Banksystem {
@ -117,7 +117,7 @@ public class Banksystem {
}
public List<Kontoauszüge> getAuszüge(int kontonummer) {
public List<Kontobewegungen> getAuszüge(int kontonummer) {
return bank.getAuszüge(kontonummer);
}

View File

@ -3,7 +3,7 @@ package de.hs_mannheim.informatik.bank.ui;
import java.util.List;
import java.util.Scanner;
import de.hs_mannheim.informatik.bank.domain.Kontoauszüge;
import de.hs_mannheim.informatik.bank.domain.Kontobewegungen;
import de.hs_mannheim.informatik.bank.facade.Banksystem;
public class UI {
@ -172,9 +172,9 @@ public class UI {
System.out.println("Kein Konto vorhanden");
return;
}
List <Kontoauszüge> auszüge = bs.getAuszüge(kontonummer);
List <Kontobewegungen> auszüge = bs.getAuszüge(kontonummer);
for(Kontoauszüge auszug : auszüge) {
for(Kontobewegungen auszug : auszüge) {
System.out.println(auszug);
}
}