updated am 6.Dez

main
AymunAlShaboti 2022-12-06 13:10:20 +01:00
parent e1e3bc5246
commit 8341490d3f
7 changed files with 109 additions and 16 deletions

View File

@ -62,5 +62,15 @@ public class Konto implements Serializable {
return auflistung;
}
// public long berechneSaldo(int anzahl) {
// long saldo = 0;
//
// for (int i = 0; i < anzahl; i++) {
// saldo += kontobewegungen.get(i).getBetrag() ;
// }
//
// return saldo;
// }
}

View File

@ -20,16 +20,26 @@ class KontoTest {
Konto k2 = new Konto("Mayer", 1);
assertEquals("Mayer", k2.getInhaber());
//beide Konten sind nicht gleich
assertNotEquals(k.getKontonummer(), k2.getKontonummer());
k2.einzahlen(100, "Test", "Einzahlung", "JUnit");
//ich erwarte 100€ in seinem Konto
assertEquals(100, k2.getKontostand());
assertTrue(k2.auszahlen(50, "Test", "Auszahlung", "JUnit"));
//verbliebene Summe
assertEquals(50, k2.getKontostand());
assertFalse(k2.auszahlen(500, "Test", "Auszahlung", "JUnit"));
//die Summe ist nicht auszahlbar!
assertEquals(50, k2.getKontostand());
}
@Test
void testEinzahlungEingabe() {
}
}

View File

@ -18,6 +18,11 @@ public class Kontobewegung implements Serializable {
this.datum = new Date();
}
// public long getBetrag() {
// return betrag;
// }
@Override
public String toString() {

View File

@ -0,0 +1,16 @@
package de.hs_mannheim.informatik.bank.domain;
public class Kunde extends Konto{
private String vorName;
private String nachName;
private int alter;
private String wohnOrt;
private String Kundschaft;
public Kunde(String inhaber, int kontozähler) {
super(inhaber, kontozähler);
// TODO Auto-generated constructor stub
}
}

View File

@ -43,6 +43,10 @@ public class Banksystem {
public long geldEinzahlen(int kontonummer, long betrag) throws Exception {
Konto konto = bank.findeKonto(kontonummer);
if(betrag < konto.getKontostand()){
System.out.println("sorry du bist arm!");
}
konto.einzahlen(betrag, "Einzahlung am Schalter", "Einzahlung", konto.getInhaber());
Persistenz.speichereBankDaten(this.bank, bank.getName());
@ -80,6 +84,11 @@ public class Banksystem {
return konto.getKontostand();
}
// public long saldoBestimmen(int kontonummer, int anzahl) {
// Konto konto = bank.findeKonto(kontonummer);
//
// return konto.berechneSaldo(anzahl);
// }
}
//commit this

View File

@ -27,6 +27,7 @@ public class UI {
System.out.println("4 -> Geld auszahlen");
System.out.println("5 -> Kontoauszug drucken");
System.out.println("6 -> Überweisung beauftragen");
System.out.println("7 -> Saldo abfragen");
System.out.println("9 -> Beenden");
System.out.println();
@ -45,6 +46,7 @@ public class UI {
case 4: geldAuszahlen(); break;
case 5: kontoauszugDrucken(); break;
case 6: überweisungBeauftragen(); break;
//case 7: saldoAbfragen(); break;
case 9: break mainloop;
}
@ -73,6 +75,7 @@ public class UI {
private void kontoAnlegen() throws Exception {
System.out.println("Bitte den Namen des Kontoinhabers angeben: ");
String name = sc.nextLine();
System.out.println("Möchten Sie ein Sparkonto (1) oder ein Girokonto (2) anlegen?");
int auswahl = Integer.parseInt(sc.nextLine());
@ -82,32 +85,60 @@ public class UI {
}
private void geldEinzahlen() throws Exception {
System.out.println("Geld einzahlen");
System.out.print("Bitte die gewünschte Kontonummer eingeben: ");
int kontonummer = Integer.parseInt(sc.nextLine());
// optional prüfen, ob Konto existiert
// optional prüfen, ob ein Konto existiert
System.out.print("Bitte den gewünschten Betrag eingeben: ");
double betrag = Double.parseDouble(sc.nextLine());
try {
System.out.println("Geld einzahlen");
System.out.print("Bitte die gewünschte Kontonummer eingeben: ");
int kontonummer = Integer.parseInt(sc.nextLine());
//Konto ist vorhanden!
if (kontonummer == bs.getKontostand(kontonummer)) {
System.out.print("Bitte den gewünschten Betrag eingeben: ");
double betrag = Double.parseDouble(sc.nextLine());
long neuerKontostand = bs.geldEinzahlen(kontonummer, (long)betrag * 100);
long neuerKontostand = bs.geldEinzahlen(kontonummer, (long)betrag * 100);
System.out.printf("Einzahlung erfolgreich, neuer Kontostand = %.2f Euro", (neuerKontostand / 100.0));
System.out.printf("Einzahlung erfolgreich, neuer Kontostand = %.2f Euro", (neuerKontostand / 100.0));
}
}catch (NullPointerException e) {
System.out.print("Dieses Konto existiert nicht!! ");
}
}
private void geldAuszahlen() throws Exception {
System.out.println("Geld auszahlen");
System.out.print("Bitte die gewünschte Kontonummer eingeben: ");
int kontonummer = Integer.parseInt(sc.nextLine());
//Prüfe ob Konto vorhanden ist!
try {
System.out.println("Geld auszahlen");
System.out.print("Bitte die gewünschte Kontonummer eingeben: ");
int kontonummer = Integer.parseInt(sc.nextLine());
//Konto ist vorhanden!
if (kontonummer == bs.getKontostand(kontonummer)) {
System.out.print("Bitte den gewünschten Betrag eingeben: ");
double betrag = Double.parseDouble(sc.nextLine());
System.out.print("Bitte den gewünschten Betrag eingeben: ");
double betrag = Double.parseDouble(sc.nextLine());
boolean erfolgreich = bs.geldAuszahlen(kontonummer, (long)betrag * 100);
boolean erfolgreich = bs.geldAuszahlen(kontonummer, (long)betrag * 100);
System.out.printf("Auszahlung" + ((!erfolgreich)? " nicht" : "" )+ " erfolgreich. ");
System.out.printf("Neuer Kontostand = %.2f Euro.", (bs.getKontostand(kontonummer) / 100.0));
}
System.out.printf("Auszahlung" + ((!erfolgreich)? " nicht" : "" )+ " erfolgreich. ");
System.out.printf("Neuer Kontostand = %.2f Euro.", (bs.getKontostand(kontonummer) / 100.0));
} catch (NullPointerException e) {
System.out.print("Dieses Konto existiert nicht!! ");
}
}
private void kontoauszugDrucken() {
@ -145,5 +176,17 @@ public class UI {
System.out.println("Überweisung" + ( (!erfolgreich) ? " nicht" : "") + " erfolgreich ausgeführt.");
}
// private void saldoAbfragen() {
// System.out.print("Bitte die Kontonummer des gewünschten Kontos eingeben: ");
// int konto = Integer.parseInt(sc.nextLine());
//
// System.out.print("Bitte die Anzahl der Kontobewegungen für den Saldo eingeben: ");
// int anzahl = Integer.parseInt(sc.nextLine());
//
// long saldo = bs.saldoBestimmen(konto, anzahl);
// System.out.printf("Der Saldo nach %d Kontobewegungen beträgt %.2f Euro.%n", anzahl, (saldo/100d));
// }
}