Eigene Exception + Fehler behoben bei kontoAnlegen

david 2022-11-08 13:27:30 +01:00
parent b59001b2ab
commit 16e7e012df
4 changed files with 38 additions and 4 deletions

View File

@ -36,20 +36,29 @@ public class Bank implements Serializable {
} }
} }
public int addKonto(String name, int auswahl , int id) { public int addKonto(String name, int auswahl , int id) throws KundeNullException {
Konto k; Konto k;
if (auswahl == 1) { if (auswahl == 1) {
k = new Konto(name, ++kontozähler); k = new Konto(name, ++kontozähler);
Kunde ku = kunden.get(id); Kunde ku = kunden.get(id);
if(ku == null) {
throw new KundeNullException();
}
k.setKunde(ku);} k.setKunde(ku);}
else if(auswahl == 2) { else if(auswahl == 2) {
k = new Girokonto(name, ++kontozähler); k = new Girokonto(name, ++kontozähler);
Kunde ku = kunden.get(id); Kunde ku = kunden.get(id);
if(ku == null) {
throw new KundeNullException();
}
k.setKunde(ku); k.setKunde(ku);
} else { } else {
k = new Depot(name, ++kontozähler); k = new Depot(name, ++kontozähler);
Kunde ku = kunden.get(id); Kunde ku = kunden.get(id);
if(ku == null) {
throw new KundeNullException();
}
k.setKunde(ku); k.setKunde(ku);
} }
konten.put(k.getKontonummer(), k); konten.put(k.getKontonummer(), k);

View File

@ -0,0 +1,7 @@
package de.hs_mannheim.informatik.bank.domain;
public class KundeNullException extends Exception {
public KundeNullException() {
super("Der Kunde ist Null");
}
}

View File

@ -103,6 +103,10 @@ public class Banksystem {
bank.kundeAnlegen( vorname, name, alter, wh); bank.kundeAnlegen( vorname, name, alter, wh);
Persistenz.speichereBankDaten(this.bank, bank.getName()); Persistenz.speichereBankDaten(this.bank, bank.getName());
} }
public Collection<Kunde> getKunden(){
return bank.getKundenListe();
}
public String[] getKundenListe() { public String[] getKundenListe() {
Collection<Kunde> kunden = bank.getKundenListe(); Collection<Kunde> kunden = bank.getKundenListe();

View File

@ -1,7 +1,10 @@
package de.hs_mannheim.informatik.bank.ui; package de.hs_mannheim.informatik.bank.ui;
import java.util.Collection;
import java.util.Scanner; import java.util.Scanner;
import de.hs_mannheim.informatik.bank.domain.Kunde;
import de.hs_mannheim.informatik.bank.domain.KundeNullException;
import de.hs_mannheim.informatik.bank.facade.Banksystem; import de.hs_mannheim.informatik.bank.facade.Banksystem;
public class UI { public class UI {
@ -169,17 +172,28 @@ public class UI {
} }
private void kontoAnlegen() throws Exception { private void kontoAnlegen() throws Exception {
System.out.println("Bitte den Namen des Kontoinhabers angeben: "); System.out.println("Bitte den Namen des Kontoinhabers angeben: ");
String name = sc.nextLine(); String name = sc.nextLine();
System.out.println("Möchten Sie ein Sparkonto (1), Girokonto (2) oder ein Depot (3) anlegen?"); System.out.println("Möchten Sie ein Sparkonto (1), Girokonto (2) oder ein Depot (3) anlegen?");
int auswahl = returnUserInput(); int auswahl = returnUserInput();
System.out.println("Geben sie die Kundennummer ein(id)"); System.out.println("Geben sie ihre Kundennummer ein:");
int Kundennummer = returnUserInput(); int Kundennummer = returnUserInput();
try {
int kontonummer = bs.kontoAnlegen(name, auswahl, Kundennummer); int kontonummer = bs.kontoAnlegen(name, auswahl, Kundennummer);
System.out.println("Konto mit der Nummer " + kontonummer + " neu angelegt."); System.out.println("Konto mit der Nummer " + kontonummer + " neu angelegt.");
}catch(KundeNullException e) {
System.err.print("Der Kunde konnte nicht gefunden werden!");
}
} }
private void geldEinzahlen() throws Exception { private void geldEinzahlen() throws Exception {