forked from hummel/Bank-System
bug fixed can see all Konten in Kunden
parent
c2bb86734b
commit
8d57d6dc8f
|
@ -1,6 +1,7 @@
|
||||||
package de.hs_mannheim.informatik.bank.domain;
|
package de.hs_mannheim.informatik.bank.domain;
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
|
||||||
|
@ -9,67 +10,63 @@ import org.hamcrest.core.IsInstanceOf;
|
||||||
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
import de.hs_mannheim.informatik.bank.ui.UI;
|
import de.hs_mannheim.informatik.bank.ui.UI;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public class Bank implements Serializable {
|
public class Bank implements Serializable {
|
||||||
private String name;
|
private String name;
|
||||||
private HashMap<Integer, Konto> konten = new HashMap<>();
|
private HashMap<Integer, Konto> konten = new HashMap<>();
|
||||||
private HashMap<Integer, Kunde> kunden = new HashMap<>();
|
private HashMap<Integer, Kunde> kunden = new HashMap<>();
|
||||||
private HashMap<Integer, Aktien> wertpapiere = new HashMap<>();
|
private HashMap<Integer, Aktien> wertpapiere = new HashMap<>();
|
||||||
private int kontozähler;
|
private int kontozähler;
|
||||||
|
|
||||||
public Bank(String name) {
|
public Bank(String name) {
|
||||||
this.name = name;
|
this.name = name;
|
||||||
this.kontozähler = -1;
|
this.kontozähler = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public void kaufeAktien(int kontonummer, int idAktien) {
|
public void kaufeAktien(int kontonummer, int idAktien) {
|
||||||
Konto kd = konten.get(kontonummer);
|
Konto kd = konten.get(kontonummer);
|
||||||
Aktien ak = wertpapiere.get(idAktien);
|
Aktien ak = wertpapiere.get(idAktien);
|
||||||
System.out.println(ak.toString());
|
System.out.println(ak.toString());
|
||||||
if(kd instanceof Depot) {
|
if (kd instanceof Depot) {
|
||||||
((Depot)kd).kaufeAktien((Depot)kd, ak);
|
((Depot) kd).kaufeAktien((Depot) kd, ak);
|
||||||
ak.setInhaber(kd);
|
ak.setInhaber(kd);
|
||||||
System.out.println(ak.toString());
|
System.out.println(ak.toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public int addKonto(String name, int auswahl , int id) throws KundeNullException {
|
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) {
|
if (ku == null) {
|
||||||
throw new KundeNullException();
|
throw new KundeNullException();
|
||||||
}
|
}
|
||||||
k.setKunde(ku.getId());}
|
k.setKunde(ku.getId());
|
||||||
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) {
|
if (ku == null) {
|
||||||
throw new KundeNullException();
|
throw new KundeNullException();
|
||||||
}
|
}
|
||||||
k.setKunde(ku.getId());
|
k.setKunde(ku.getId());
|
||||||
} 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) {
|
if (ku == null) {
|
||||||
throw new KundeNullException();
|
throw new KundeNullException();
|
||||||
}
|
}
|
||||||
k.setKunde(ku.getId());
|
k.setKunde(ku.getId());
|
||||||
}
|
}
|
||||||
konten.put(k.getKontonummer(), k);
|
konten.put(k.getKontonummer(), k);
|
||||||
|
|
||||||
return k.getKontonummer();
|
return k.getKontonummer();
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getName() {
|
public String getName() {
|
||||||
return name;
|
return name;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Collection<Konto> getKontenliste() {
|
public Collection<Konto> getKontenliste() {
|
||||||
return konten.values();
|
return konten.values();
|
||||||
}
|
}
|
||||||
|
@ -77,15 +74,17 @@ public class Bank implements Serializable {
|
||||||
public Konto findeKonto(int kontonummer) {
|
public Konto findeKonto(int kontonummer) {
|
||||||
return konten.get(kontonummer);
|
return konten.get(kontonummer);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void kundeAnlegen(String vorname, String name, int alter, String wh) {
|
public void kundeAnlegen(String vorname, String name, int alter, String wh) {
|
||||||
Kunde ku = new Kunde(vorname,name,alter,wh);
|
Kunde ku = new Kunde(vorname, name, alter, wh);
|
||||||
kunden.put(ku.getId(), ku);
|
kunden.put(ku.getId(), ku);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void kontoZuKunde(int kontonummer, int id) {
|
public void kontoZuKunde(int kontonummer, int id) {
|
||||||
|
Kunde ku = kunden.get(id);
|
||||||
Konto k = konten.get(kontonummer);
|
Konto k = konten.get(kontonummer);
|
||||||
k.setKunde(id);
|
k.setKunde(ku.getId());
|
||||||
|
ku.kundeHatKonto(k.getKontonummer());
|
||||||
}
|
}
|
||||||
|
|
||||||
public Collection<Kunde> getKundenListe() {
|
public Collection<Kunde> getKundenListe() {
|
||||||
|
@ -93,23 +92,28 @@ public class Bank implements Serializable {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void aktieAnlegen(String aktienName, int kosten, int kontonummer) {
|
public void aktieAnlegen(String aktienName, int kosten, int kontonummer) {
|
||||||
Aktien ak = new Aktien(aktienName,kosten,konten.get(kontonummer));
|
Aktien ak = new Aktien(aktienName, kosten, konten.get(kontonummer));
|
||||||
wertpapiere.put(ak.getId(), ak);
|
wertpapiere.put(ak.getId(), ak);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public Collection<Aktien> getAktienListe() {
|
public Collection<Aktien> getAktienListe() {
|
||||||
return wertpapiere.values();
|
return wertpapiere.values();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public Kunde findeKunde(int k) {
|
public Kunde findeKunde(int k) {
|
||||||
Kunde kunde = kunden.get(k);
|
Kunde kunde = kunden.get(k);
|
||||||
return kunde;
|
return kunde;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ArrayList<Konto> getKontenFromKunde(int kunde) {
|
||||||
|
Kunde k = kunden.get(kunde);
|
||||||
|
ArrayList<Konto> kontenKunde = new ArrayList<>();
|
||||||
|
ArrayList<Integer> kontonKunde = k.getKontennummern();
|
||||||
|
for (int i : kontonKunde) {
|
||||||
|
Konto ku = konten.get(i);
|
||||||
|
kontenKunde.add(ku);
|
||||||
|
}
|
||||||
|
return kontenKunde;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,7 +13,6 @@ public class Konto implements Serializable {
|
||||||
public Konto(String inhaber, int kontozähler) {
|
public Konto(String inhaber, int kontozähler) {
|
||||||
nummer = 1000 + kontozähler;
|
nummer = 1000 + kontozähler;
|
||||||
this.inhaber = inhaber;
|
this.inhaber = inhaber;
|
||||||
|
|
||||||
this.kontobewegungen = new ArrayList<>();
|
this.kontobewegungen = new ArrayList<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -18,6 +18,7 @@ public class Kunde implements Serializable{
|
||||||
this.alter = alter;
|
this.alter = alter;
|
||||||
this.wohnort = wohnort;
|
this.wohnort = wohnort;
|
||||||
this.id++;
|
this.id++;
|
||||||
|
kontennummern = new ArrayList<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void kundeHatKonto(int k) {
|
public void kundeHatKonto(int k) {
|
||||||
|
|
|
@ -148,10 +148,15 @@ public class Banksystem {
|
||||||
}
|
}
|
||||||
|
|
||||||
public String[] getKundenKontos(int kunde) {
|
public String[] getKundenKontos(int kunde) {
|
||||||
Kunde ku = bank.findeKunde(kunde);
|
ArrayList<Konto> konten = bank.getKontenFromKunde(kunde);
|
||||||
ArrayList<Integer> liste = ku.getKontennummern();
|
String[] liste = new String[konten.size()];
|
||||||
|
|
||||||
|
|
||||||
|
int i = 0;
|
||||||
|
for (Konto k : konten) {
|
||||||
|
liste[i++] = k.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
return liste;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -106,8 +106,11 @@ public class UI {
|
||||||
System.out.println("Geben sie ihre KundenID ein: ");
|
System.out.println("Geben sie ihre KundenID ein: ");
|
||||||
int k = returnUserInput();
|
int k = returnUserInput();
|
||||||
String[] list = bs.getKundenKontos(k);
|
String[] list = bs.getKundenKontos(k);
|
||||||
|
if(list.length >0) {
|
||||||
|
for(String s : list) {
|
||||||
|
System.out.println(s);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void aktienKaufen() throws Exception {
|
private void aktienKaufen() throws Exception {
|
||||||
|
|
Loading…
Reference in New Issue