Überweisung hinzugefügt

Peter Gapon 2022-10-20 19:19:48 +02:00
parent 386605de89
commit e39c9bd8ae
5 changed files with 51 additions and 9 deletions

View File

@ -1,8 +1,10 @@
package de.hs_mannheim.informatik.bank.domain; package de.hs_mannheim.informatik.bank.domain;
import java.io.Serializable;
import exception.BankException; import exception.BankException;
public class Girokonto extends Konto { public class Girokonto extends Konto implements Serializable {
public Girokonto(String inhaber) { public Girokonto(String inhaber) {
super(inhaber); super(inhaber);

View File

@ -7,7 +7,6 @@ import java.util.Date;
import exception.BankException; import exception.BankException;
public class Konto implements Serializable { public class Konto implements Serializable {
private static final long serialVersionUID = 1L;
private static int kontozähler = 0; private static int kontozähler = 0;

View File

@ -1,8 +1,9 @@
package de.hs_mannheim.informatik.bank.domain; package de.hs_mannheim.informatik.bank.domain;
import java.io.Serializable;
import java.util.Date; import java.util.Date;
public class Kontobewegung { public class Kontobewegung implements Serializable {
private long betrag; private long betrag;
private Date date; private Date date;
private String betreff; private String betreff;

View File

@ -98,4 +98,15 @@ public class Banksystem {
return konto.getKontobewgungen(); return konto.getKontobewgungen();
} }
public boolean überweisungBeauftragen(int startkonto, int zielkonto, long betrag, String verwendungszweck) throws BankException {
Konto start = getKontoBanksystem(startkonto);
Konto ziel = getKontoBanksystem(zielkonto);
if (start instanceof Girokonto && ziel instanceof Girokonto) {
return ((Girokonto)start).überweise((Girokonto)ziel, betrag, verwendungszweck);
}
return false;
}
} }

View File

@ -30,9 +30,10 @@ public class UI {
System.out.println("4 -> Konto auszahlen"); System.out.println("4 -> Konto auszahlen");
System.out.println("5 -> Konto anzeigen"); System.out.println("5 -> Konto anzeigen");
System.out.println("6 -> Kontoauszug anzeigen"); System.out.println("6 -> Kontoauszug anzeigen");
System.out.println("7 -> Konten speichern?"); System.out.println("7 -> Konten speichern");
System.out.println("8 -> Konten laden?"); System.out.println("8 -> Konten laden");
System.out.println("9 -> Kontoauszug drucken?"); System.out.println("9 -> Kontoauszug drucken");
System.out.println("10 -> Überweisung beauftragen");
System.out.println("99 -> Beenden"); System.out.println("99 -> Beenden");
System.out.println(); System.out.println();
@ -50,6 +51,7 @@ public class UI {
case 7: bs.kontenSpeichern(); break; case 7: bs.kontenSpeichern(); break;
case 8: bs.kontenLaden(); break; case 8: bs.kontenLaden(); break;
case 9: kontoauszugDrucken(); break; case 9: kontoauszugDrucken(); break;
case 10:überweisungBeauftragen(); break;
case 99: break mainloop; case 99: break mainloop;
} }
} }
@ -107,7 +109,11 @@ public class UI {
int temp = 0; int temp = 0;
for (int i = 0; i < konten.length; i++) { for (int i = 0; i < konten.length; i++) {
if (konten[i].contains(kName)) { if (konten[i].contains(kName)) {
if (konten[i].contains(kName) && konten[i].contains("Giro-Konto")) {
temp = Integer.parseInt(konten[i].substring(19, 23));
} else {
temp = Integer.parseInt(konten[i].substring(14, 18)); temp = Integer.parseInt(konten[i].substring(14, 18));
}
break; break;
} else { } else {
System.out.println("Konto nicht vorhanden"); System.out.println("Konto nicht vorhanden");
@ -134,7 +140,11 @@ public class UI {
int temp = 0; int temp = 0;
for (int i = 0; i < konten.length; i++) { for (int i = 0; i < konten.length; i++) {
if (konten[i].contains(kName)) { if (konten[i].contains(kName)) {
if (konten[i].contains(kName) && konten[i].contains("Giro-Konto")) {
temp = Integer.parseInt(konten[i].substring(19, 23));
} else {
temp = Integer.parseInt(konten[i].substring(14, 18)); temp = Integer.parseInt(konten[i].substring(14, 18));
}
break; break;
} else { } else {
System.out.println("Konto nicht vorhanden"); System.out.println("Konto nicht vorhanden");
@ -177,4 +187,23 @@ public class UI {
System.out.println("Noch keine Kontobewegungen."); System.out.println("Noch keine Kontobewegungen.");
} }
private void überweisungBeauftragen() throws BankException {
System.out.print("Bitte die Kontonummer des Ausgangskontos der Überweisung eingeben: ");
int startkonto = Integer.parseInt(sc.nextLine());
System.out.print("Bitte die Kontonummmer für das Zielkonto der Überweisung eingeben: ");
int zielkonto = Integer.parseInt(sc.nextLine());
System.out.print("Bitte den gewünschten Überweisungsbetrag eingeben: ");
double betrag = Double.parseDouble(sc.nextLine());
System.out.print("Bitte den Verwendungszweck eingeben: ");
String verwendungszweck = sc.nextLine();
// boolean erfolgreich = bs.überweisungBeauftragen(startkonto, zielkonto, (long)(betrag * 100), verwendungszweck);
boolean erfolgreich = bs.überweisungBeauftragen(startkonto, zielkonto, (long)(betrag), verwendungszweck);
System.out.println("Überweisung" + ( (!erfolgreich) ? " nicht" : "") + " erfolgreich ausgeführt.");
}
} }