From 085723e9885c98553bbecb5259509e4e3726903d Mon Sep 17 00:00:00 2001 From: informatikperson <62358979+informatikperson@users.noreply.github.com> Date: Tue, 25 Oct 2022 13:00:03 +0200 Subject: [PATCH] kontobewegungen --- .../Sparkasse Mannheim-bank-data.ser | Bin 799 -> 0 bytes .../informatik/bank/domain/Bank.java | 2 +- .../informatik/bank/domain/Girokonto.java | 25 +++++++ .../informatik/bank/domain/Konto.java | 62 +++++++++++------- ...Kontoauszüge.java => Kontobewegungen.java} | 4 +- .../informatik/bank/facade/Banksystem.java | 4 +- .../de/hs_mannheim/informatik/bank/ui/UI.java | 6 +- 7 files changed, 73 insertions(+), 30 deletions(-) delete mode 100644 Bank-BeispielMeins/Sparkasse Mannheim-bank-data.ser create mode 100644 Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Girokonto.java rename Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/{Kontoauszüge.java => Kontobewegungen.java} (79%) diff --git a/Bank-BeispielMeins/Sparkasse Mannheim-bank-data.ser b/Bank-BeispielMeins/Sparkasse Mannheim-bank-data.ser deleted file mode 100644 index 691fb1e7053cf2f1cebd5a53aaae2de02d1af349..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 799 zcmb7DJ!lj`6n?jNdzZu`oOdW#1gsVI1VNPGFA}`V#U_nb`p%u~ZgzKeotaJ6Ai{yD z5UkX~La?wAVsBxiDbl2grG@XFE`m7z+dS!C{2bYc3iUNN+YziFH3?9L6|9j9vNgcJtu%og!FsFcl@}&fyJ{ zs1{5bUkU9ek(;My&jCNx)d^Z_^jf=@F^AJ4O`cHo&(B}{>fJwSL7@fq3Pzd871a8q z{l3dt+!gBH#*>+Sk3X$j0C@^f{7RP{{kJ^k$$hf^YUjc4FBPz$)Pl0i;#jCQrD{;R z9hksOuWi2ZD24-jGCHpm-s%L}P)e0R`ba`Q5<-PYaPq*+{ zk)4%vuqGG=h1C+T1Umj7`bPqP+&=N}Pq1AiA8jaig;D6WVTvc549!$ATjFg`jO5ac zT{L8_w#VE>+Mx-v1vWAG0vIUyC^gBO9(&?mf4NtfziJK@c>+At!d?5!v6p#1LU1x= z8qGJ&)g)JgORX#YohtJT&2z`}=yXhNhY=a=ch^T0k4`hi;Dn0$Vu~t6t;OMm;g9ea DT%Pv+ diff --git a/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Bank.java b/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Bank.java index 80dc759..89e7601 100644 --- a/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Bank.java +++ b/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Bank.java @@ -25,7 +25,7 @@ public class Bank implements Serializable{ public Collection getKontenliste() { return konten.values(); } - public List getAuszüge(int kontonummer){ + public List getAuszüge(int kontonummer){ Konto konto = konten.get(kontonummer); if (konto == null) { return new ArrayList<>(); diff --git a/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Girokonto.java b/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Girokonto.java new file mode 100644 index 0000000..9d143a7 --- /dev/null +++ b/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Girokonto.java @@ -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(); + } +} diff --git a/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Konto.java b/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Konto.java index 828272f..63ab9ea 100644 --- a/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Konto.java +++ b/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Konto.java @@ -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 auszüge = new ArrayList<>(); - public Konto(String inhaber) { - nummer = 1000 + kontozähler++; + private ArrayList kontobewegungen; + + 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 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; + } + } diff --git a/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Kontoauszüge.java b/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Kontobewegungen.java similarity index 79% rename from Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Kontoauszüge.java rename to Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Kontobewegungen.java index a923651..d5e38f6 100644 --- a/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Kontoauszüge.java +++ b/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/domain/Kontobewegungen.java @@ -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; diff --git a/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java b/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java index 6251ada..1959137 100644 --- a/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java +++ b/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java @@ -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 getAuszüge(int kontonummer) { + public List getAuszüge(int kontonummer) { return bank.getAuszüge(kontonummer); } diff --git a/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/ui/UI.java b/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/ui/UI.java index 4c2adc1..214afae 100644 --- a/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/ui/UI.java +++ b/Bank-BeispielMeins/src/de/hs_mannheim/informatik/bank/ui/UI.java @@ -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 auszüge = bs.getAuszüge(kontonummer); + List auszüge = bs.getAuszüge(kontonummer); - for(Kontoauszüge auszug : auszüge) { + for(Kontobewegungen auszug : auszüge) { System.out.println(auszug); } }