New: removed ui & added gui
parent
9ad8c5760b
commit
50e4fd4aaf
|
@ -1,7 +1,8 @@
|
||||||
package de.hs_mannheim.informatik.bank;
|
package de.hs_mannheim.informatik.bank;
|
||||||
|
|
||||||
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.gui.KontoAnlegenFrame;
|
||||||
|
import de.hs_mannheim.informatik.bank.gui.KontoListingFrame;
|
||||||
|
|
||||||
public class Main {
|
public class Main {
|
||||||
|
|
||||||
|
@ -9,7 +10,11 @@ public class Main {
|
||||||
|
|
||||||
Banksystem bs = new Banksystem("Spaßkasse Mannheim");
|
Banksystem bs = new Banksystem("Spaßkasse Mannheim");
|
||||||
|
|
||||||
UI ui = new UI(bs);
|
KontoAnlegenFrame kaf = new KontoAnlegenFrame(bs);
|
||||||
|
kaf.setVisible(true);
|
||||||
|
|
||||||
|
KontoListingFrame klf = new KontoListingFrame(bs);
|
||||||
|
klf.setVisible(true);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -46,7 +46,7 @@ public class Banksystem {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public int kontoAnlegen(Kunde kunde, Kontoart kontoart){
|
public int kontoAnlegen(Kunde kunde, Kontoart kontoart) {
|
||||||
int kontonummer = bank.addKonto(kunde, kontoart);
|
int kontonummer = bank.addKonto(kunde, kontoart);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|
|
@ -0,0 +1,70 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.gui;
|
||||||
|
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JScrollPane;
|
||||||
|
import javax.swing.JTextArea;
|
||||||
|
import javax.swing.JTextField;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.domain.Kontoart;
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class KontoAnlegenFrame extends JFrame implements ActionListener {
|
||||||
|
|
||||||
|
private JTextField eingabe;
|
||||||
|
private JTextArea ausgabe;
|
||||||
|
private JButton ok;
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public KontoAnlegenFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.setTitle(bs.getBankname());
|
||||||
|
this.setSize(400, 300);
|
||||||
|
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
|
||||||
|
eingabe = new JTextField(20);
|
||||||
|
|
||||||
|
ausgabe = new JTextArea(10, 20);
|
||||||
|
ausgabe.setLineWrap(true);
|
||||||
|
ausgabe.setWrapStyleWord(true);
|
||||||
|
|
||||||
|
JScrollPane sp = new JScrollPane(ausgabe);
|
||||||
|
|
||||||
|
ok = new JButton("Konto anlegen");
|
||||||
|
ok.addActionListener(this);
|
||||||
|
|
||||||
|
this.add(eingabe, "North");
|
||||||
|
this.add(sp, "Center");
|
||||||
|
this.add(ok, "South");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Konto anlegen...");
|
||||||
|
|
||||||
|
try {
|
||||||
|
|
||||||
|
int knr = bs.kontoAnlegen(bs.getCurrentKunde(), Kontoart.Sparkonto);
|
||||||
|
|
||||||
|
this.ausgabe.append("Neus Konto angelegt: " + knr + "\n");
|
||||||
|
} catch (Exception e1) {
|
||||||
|
|
||||||
|
e1.printStackTrace();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,60 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.gui;
|
||||||
|
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JScrollPane;
|
||||||
|
import javax.swing.JTextArea;
|
||||||
|
import javax.swing.JTextField;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class KontoListingFrame extends JFrame implements ActionListener{
|
||||||
|
|
||||||
|
private JTextField eingabe;
|
||||||
|
private JTextArea ausgabe;
|
||||||
|
private JButton ok;
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public KontoListingFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.setTitle(bs.getBankname());
|
||||||
|
this.setSize(300, 300);
|
||||||
|
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
|
||||||
|
eingabe = new JTextField(20);
|
||||||
|
|
||||||
|
ausgabe = new JTextArea(5, 20);
|
||||||
|
ausgabe.setLineWrap(true);
|
||||||
|
ausgabe.setWrapStyleWord(true);
|
||||||
|
|
||||||
|
JScrollPane sp = new JScrollPane(ausgabe);
|
||||||
|
|
||||||
|
ok = new JButton("Kontenliste abrufen");
|
||||||
|
ok.addActionListener(this);
|
||||||
|
|
||||||
|
this.add(eingabe, "North");
|
||||||
|
this.add(sp, "Center");
|
||||||
|
this.add(ok, "South");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
System.out.println("Kontenliste abrufen...");
|
||||||
|
|
||||||
|
ausgabe.setText("");
|
||||||
|
String[] konten = bs.getKontenlisteForKunde();
|
||||||
|
|
||||||
|
for (String konto : konten) {
|
||||||
|
ausgabe.append(konto + "\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,718 +0,0 @@
|
||||||
package de.hs_mannheim.informatik.bank.ui;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.Scanner;
|
|
||||||
|
|
||||||
import de.hs_mannheim.informatik.bank.domain.Kontoart;
|
|
||||||
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
|
||||||
|
|
||||||
public class UI {
|
|
||||||
private Banksystem bs;
|
|
||||||
Scanner sc = new Scanner(System.in);
|
|
||||||
|
|
||||||
public UI(Banksystem bs) {
|
|
||||||
this.bs = bs;
|
|
||||||
hauptmenü();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void hauptmenü() {
|
|
||||||
System.out.println("Willkommen bei der " + bs.getBankname() + "!");
|
|
||||||
|
|
||||||
mainloop: while (true) {
|
|
||||||
System.out.println();
|
|
||||||
System.out.println("--------");
|
|
||||||
System.out.println("Hauptmenü");
|
|
||||||
System.out.println("0 -> Kundenkonto erstellen");
|
|
||||||
System.out.println("1 -> Login");
|
|
||||||
System.out.println("2 -> Konto anlegen");
|
|
||||||
System.out.println("3 -> Konten anzeigen");
|
|
||||||
System.out.println("4 -> Konto auswählen");
|
|
||||||
|
|
||||||
System.out.println("5 -> Beenden");
|
|
||||||
System.out.println();
|
|
||||||
|
|
||||||
System.out.print("> ");
|
|
||||||
int input = Integer.parseInt(sc.nextLine());
|
|
||||||
System.out.println();
|
|
||||||
|
|
||||||
try {
|
|
||||||
switch (input) {
|
|
||||||
case 0:
|
|
||||||
kundeRegistrieren();
|
|
||||||
break;
|
|
||||||
case 1:
|
|
||||||
login();
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
kontoAnlegen();
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
kontenAnzeigen();
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
kontoAuswählen();
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 5:
|
|
||||||
break mainloop;
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.err.println(e.getLocalizedMessage());
|
|
||||||
}
|
|
||||||
System.out.println();
|
|
||||||
}
|
|
||||||
|
|
||||||
System.out.println("Auf Wiedersehen!");
|
|
||||||
|
|
||||||
} // HAUPTMENÜ // HAUPTMENÜ // HAUPTMENÜ // HAUPTMENÜ // HAUPTMENÜ // HAUPTMENÜ // HAUPTMENÜ // HAUPTMENÜ
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private void kundeRegistrieren(){
|
|
||||||
|
|
||||||
boolean running = true;
|
|
||||||
|
|
||||||
while(running){
|
|
||||||
|
|
||||||
System.out.println("Bitte geben Sie die folgenden Daten ein: ");
|
|
||||||
System.out.print("Vorname: ");
|
|
||||||
String vorname = sc.nextLine();
|
|
||||||
System.out.print("Nachname: ");
|
|
||||||
String nachname = sc.nextLine();
|
|
||||||
System.out.print("Alter:");
|
|
||||||
int alter = Integer.parseInt(sc.nextLine());
|
|
||||||
try {
|
|
||||||
bs.setCurrentKunde(bs.addNewKunde(vorname, nachname, alter));
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.err.println("Kundenkonto konnte nicht erstellt werden!");
|
|
||||||
e.printStackTrace();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
System.out.println("Ihr Kundenkonto mit der ID [" + bs.getKundenID() + "] wurde erstellt.");
|
|
||||||
running = false;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private void login(){
|
|
||||||
|
|
||||||
boolean running = true;
|
|
||||||
|
|
||||||
while(running){
|
|
||||||
|
|
||||||
try {
|
|
||||||
System.out.println("Bitte geben Sie Ihre Kunden ID ein: ");
|
|
||||||
System.out.print("> ");
|
|
||||||
int kundenID = Integer.parseInt(sc.nextLine());
|
|
||||||
bs.setCurrentKunde(bs.getKunde(kundenID));
|
|
||||||
|
|
||||||
if(bs.getCurrentKunde() != null){
|
|
||||||
System.out.println("Login erfolgreich!");
|
|
||||||
running = false;
|
|
||||||
} else {
|
|
||||||
System.err.println("Kunde nicht gefunden!");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.err.println("Login fehlgeschlagen!");
|
|
||||||
e.printStackTrace();
|
|
||||||
running = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private void kontoAnlegen() throws IOException{
|
|
||||||
|
|
||||||
boolean running = true;
|
|
||||||
|
|
||||||
while(running){
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
System.out.println("Bitte geben Sie Ihre Kunden ID ein: ");
|
|
||||||
System.out.print("> ");
|
|
||||||
int kundenID = Integer.parseInt(sc.nextLine());
|
|
||||||
bs.setCurrentKunde(bs.getKunde(kundenID));
|
|
||||||
|
|
||||||
if(bs.getCurrentKunde() != null){
|
|
||||||
|
|
||||||
System.out.println("Welche Art von Konto möchten Sie anlegen?");
|
|
||||||
Kontoart[] kontoarten = Kontoart.values();
|
|
||||||
for (int i = 0; i < kontoarten.length; i++) {
|
|
||||||
System.out.println(" " + kontoarten[i] + " " + "(" + (i+1) + ")");
|
|
||||||
}
|
|
||||||
System.out.print("> ");
|
|
||||||
int auswahl = Integer.parseInt(sc.nextLine());
|
|
||||||
|
|
||||||
int kontonummer = bs.kontoAnlegen(bs.getCurrentKunde(),kontoarten[auswahl-1]);
|
|
||||||
System.out.println("Ihr ausgewähltes Konto mit der " + kontonummer + " neu angelegt.");
|
|
||||||
running = false;
|
|
||||||
|
|
||||||
} else {
|
|
||||||
System.err.println("Kunde nicht gefunden!");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.err.println("Konto konnte nicht angelegt werden!");
|
|
||||||
e.printStackTrace();
|
|
||||||
running = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void kontenAnzeigen() {
|
|
||||||
|
|
||||||
try {
|
|
||||||
String[] konten = bs.getKontenlisteForKunde();
|
|
||||||
if (konten.length > 0) {
|
|
||||||
System.out.println("Sie haben aktuell folgende Konten zur Verfügung:");
|
|
||||||
for (String s : konten) {
|
|
||||||
System.out.println(s);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
System.out.println("Sie haben bisher keine Konten angelegt");
|
|
||||||
}
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.err.println("Konten konnten nicht laden!");
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void aktienAnzeigen(){
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
String[] aktien = bs.getAktienliste();
|
|
||||||
|
|
||||||
if (aktien.length > 0) {
|
|
||||||
System.out.println("Sie haben folgende Aktien im Besitz: ");
|
|
||||||
for (String s : aktien) {
|
|
||||||
System.out.println(s);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
System.out.println("Bisher keine Aktien gekauft.");
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
|
|
||||||
System.err.println("Aktien konnten nicht laden!");
|
|
||||||
e.printStackTrace();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private void kontoAuswählen(){
|
|
||||||
|
|
||||||
boolean running = true;
|
|
||||||
|
|
||||||
kontenAnzeigen();
|
|
||||||
System.out.println("Bitte geben Sie die Kontonummer ihres Kontos ein mit dem Sie weiterarbeiten wollen");
|
|
||||||
int kontonummer = Integer.parseInt(sc.nextLine());
|
|
||||||
|
|
||||||
|
|
||||||
if(bs.checkKontoart(kontonummer).equals(Kontoart.Sparkonto)){
|
|
||||||
|
|
||||||
if(bs.getKonten().containsKey(kontonummer)){
|
|
||||||
|
|
||||||
while(running){
|
|
||||||
|
|
||||||
System.out.println("--------");
|
|
||||||
System.out.println("Kontomenü");
|
|
||||||
System.out.println("0 -> Geld einzahlen");
|
|
||||||
System.out.println("1 -> Geld auszahlen");
|
|
||||||
System.out.println("2 -> Kontoauszug drucken");
|
|
||||||
System.out.println("3 -> Saldo abfragen");
|
|
||||||
System.out.println("4 -> Zurück zum Hauptmenü");
|
|
||||||
|
|
||||||
System.out.print("> ");
|
|
||||||
int input = Integer.parseInt(sc.nextLine());
|
|
||||||
System.out.println();
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
switch (input) {
|
|
||||||
case 0:
|
|
||||||
geldEinzahlen();
|
|
||||||
break;
|
|
||||||
case 1:
|
|
||||||
geldAuszahlen();
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
kontoauszugDrucken();
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
saldoAbfragen();
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
running = false;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.err.println(e.getLocalizedMessage());
|
|
||||||
}
|
|
||||||
|
|
||||||
System.out.println();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
|
||||||
System.out.println("Kontonummer nicht gefunden");
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
else if (bs.checkKontoart(kontonummer).equals(Kontoart.Girokonto)){
|
|
||||||
|
|
||||||
if(bs.getKonten().containsKey(kontonummer)){
|
|
||||||
|
|
||||||
while(running) {
|
|
||||||
|
|
||||||
System.out.println("--------");
|
|
||||||
System.out.println("Kontomenü");
|
|
||||||
System.out.println("0 -> Geld einzahlen");
|
|
||||||
System.out.println("1 -> Geld auszahlen");
|
|
||||||
System.out.println("2 -> Kontoauszug drucken");
|
|
||||||
System.out.println("3 -> Überweisung beauftragen");
|
|
||||||
System.out.println("4 -> Saldo abfragen");
|
|
||||||
System.out.println("5 -> Zurück zum Hauptmenü");
|
|
||||||
System.out.println();
|
|
||||||
|
|
||||||
System.out.print("> ");
|
|
||||||
int input = Integer.parseInt(sc.nextLine());
|
|
||||||
System.out.println();
|
|
||||||
|
|
||||||
try {
|
|
||||||
switch (input) {
|
|
||||||
case 0:
|
|
||||||
geldEinzahlen();
|
|
||||||
break;
|
|
||||||
case 1:
|
|
||||||
geldAuszahlen();
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
kontoauszugDrucken();
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
überweisungBeauftragen();
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
saldoAbfragen();
|
|
||||||
break;
|
|
||||||
case 5:
|
|
||||||
running = false;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.err.println(e.getLocalizedMessage());
|
|
||||||
}
|
|
||||||
System.out.println();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
} else {
|
|
||||||
System.out.println("Kontonummer nicht gefunden");
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
else if (bs.checkKontoart(kontonummer).equals(Kontoart.Depot)){
|
|
||||||
|
|
||||||
if(bs.getKonten().containsKey(kontonummer)){
|
|
||||||
|
|
||||||
while(running) {
|
|
||||||
|
|
||||||
System.out.println("--------");
|
|
||||||
System.out.println("Kontomenü");
|
|
||||||
System.out.println("0 -> Geld einzahlen");
|
|
||||||
System.out.println("1 -> Geld auszahlen");
|
|
||||||
System.out.println("2 -> Kontoauszug drucken");
|
|
||||||
System.out.println("3 -> Überweisung beauftragen");
|
|
||||||
System.out.println("4 -> Saldo abfragen");
|
|
||||||
System.out.println("5 -> Aktien kaufen");
|
|
||||||
System.out.println("6 -> Aktien anzeigen");
|
|
||||||
System.out.println("7 -> Zurück zum Hauptmenü");
|
|
||||||
System.out.println();
|
|
||||||
|
|
||||||
System.out.print("> ");
|
|
||||||
int input = Integer.parseInt(sc.nextLine());
|
|
||||||
System.out.println();
|
|
||||||
|
|
||||||
try {
|
|
||||||
switch (input) {
|
|
||||||
case 0:
|
|
||||||
geldEinzahlen();
|
|
||||||
break;
|
|
||||||
case 1:
|
|
||||||
geldAuszahlen();
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
kontoauszugDrucken();
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
überweisungBeauftragen();
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
saldoAbfragen();
|
|
||||||
break;
|
|
||||||
case 5:
|
|
||||||
aktienKaufen();
|
|
||||||
break;
|
|
||||||
case 6:
|
|
||||||
aktienAnzeigen();
|
|
||||||
break;
|
|
||||||
case 7:
|
|
||||||
running = false;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.err.println(e.getLocalizedMessage());
|
|
||||||
}
|
|
||||||
System.out.println();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
} else {
|
|
||||||
System.out.println("Kontonummer nicht gefunden");
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
} else {
|
|
||||||
System.out.println("Kontonummer nicht gefunden");
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private void geldEinzahlen() throws Exception {
|
|
||||||
|
|
||||||
int kontonummer = 0;
|
|
||||||
double betrag = 0;
|
|
||||||
boolean running = true;
|
|
||||||
|
|
||||||
while(running) {
|
|
||||||
|
|
||||||
System.out.print("Bitte geben Sie ihre Kontonummer ein: ");
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
kontonummer = Integer.parseInt(sc.nextLine());
|
|
||||||
|
|
||||||
if(bs.getKonten().containsKey(kontonummer)){
|
|
||||||
|
|
||||||
System.out.print("Bitte geben Sie den Betrag ein: ");
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
betrag = Double.parseDouble(sc.nextLine());
|
|
||||||
|
|
||||||
} catch (NumberFormatException nfe) {
|
|
||||||
System.err.println("Betrag muss eine Zahl sein!");
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
|
||||||
System.out.println("Kontonummer existiert nicht!");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (NumberFormatException nfe) {
|
|
||||||
System.err.println("Kontonummer muss eine Zahl sein!");
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
running = false;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
long neuerKontostand = bs.geldEinzahlen(kontonummer, (long) betrag * 100);
|
|
||||||
System.out.printf("Einzahlung erfolgreich, Ihr neuer Kontostand beträgt: %.2f€", (neuerKontostand) / 100.0);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private void geldAuszahlen() throws Exception {
|
|
||||||
|
|
||||||
int kontonummer = 0;
|
|
||||||
double betrag = 0;
|
|
||||||
boolean running = true;
|
|
||||||
|
|
||||||
while(running){
|
|
||||||
|
|
||||||
System.out.print("Bitte geben Sie ihre Kontonummer ein: ");
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
kontonummer = Integer.parseInt(sc.nextLine());
|
|
||||||
|
|
||||||
if(bs.getKonten().containsKey(kontonummer)){
|
|
||||||
|
|
||||||
System.out.println("Ihr aktueller Kontostand beträgt " + bs.getKontostand(kontonummer) / 100 + "€");
|
|
||||||
System.out.print("Bitte geben Sie den Betrag zum abheben ein: ");
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
betrag = Double.parseDouble(sc.nextLine());
|
|
||||||
|
|
||||||
} catch (NumberFormatException nfe) {
|
|
||||||
System.err.println("Betrag muss eine Zahl sein!");
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
|
||||||
System.out.println("Kontonummer existiert nicht!");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (NumberFormatException nfe) {
|
|
||||||
System.err.println("Kontonummer muss eine Zahl sein!");
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
running = false;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
boolean erfolg = bs.geldAuszahlen(kontonummer, (long) betrag * 100);
|
|
||||||
long neuerKontostand = bs.getKontostand(kontonummer) / 100;
|
|
||||||
|
|
||||||
System.out.printf("Auszahlung" + ((!erfolg)? " nicht" : "" ) + " erfolgreich. ");
|
|
||||||
System.out.println("Ihr neuer Kontostand beträgt: " + neuerKontostand + "€");
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private void kontoauszugDrucken() {
|
|
||||||
|
|
||||||
boolean running = true;
|
|
||||||
|
|
||||||
while(running){
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
System.out.print("Bitte die gewünschte Kontonummer für den Auszug eingeben: ");
|
|
||||||
int kontonummer = Integer.parseInt(sc.nextLine());
|
|
||||||
|
|
||||||
System.out.println("Auszug für Konto " + kontonummer);
|
|
||||||
String[] kontobewegungen = bs.erstelleKontoauszug(kontonummer);
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
if (kontobewegungen.length > 0)
|
|
||||||
for (String kb : kontobewegungen) {
|
|
||||||
System.out.println(kb);
|
|
||||||
}
|
|
||||||
running = false;
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.out.println("Keine Kontobewegungen vorhanden");
|
|
||||||
running = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.err.println("Kontoauszug fehlgeschlagen!");
|
|
||||||
e.printStackTrace();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void überweisungBeauftragen() throws Exception {
|
|
||||||
|
|
||||||
boolean running = true;
|
|
||||||
int startkonto = 0;
|
|
||||||
int zielkonto = 0;
|
|
||||||
double betrag = 0;
|
|
||||||
String verwendungszweck = "";
|
|
||||||
|
|
||||||
while (running) {
|
|
||||||
|
|
||||||
System.out.print("Bitte geben Sie die Kontonummer des Ausgangskontos der Überweisung ein: ");
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
startkonto = Integer.parseInt(sc.nextLine());
|
|
||||||
|
|
||||||
if(bs.getKonten().containsKey(startkonto)){
|
|
||||||
|
|
||||||
System.out.print("Bitte geben Sie die Kontonummer des Zielkontos der Überweisung ein: ");
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
zielkonto = Integer.parseInt(sc.nextLine());
|
|
||||||
|
|
||||||
if(bs.getKonten().containsKey(zielkonto)){
|
|
||||||
|
|
||||||
System.out.print("Bitte geben Sie den gewünschten Überweisungsbetrag ein: ");
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
betrag = Double.parseDouble(sc.nextLine());
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.err.println("Betrag muss eine Zahl sein!");
|
|
||||||
e.printStackTrace();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
System.out.print("Bitte geben Sie den Verwendungszweck ein: ");
|
|
||||||
verwendungszweck = sc.nextLine();
|
|
||||||
|
|
||||||
} else {
|
|
||||||
System.out.println("Zielkonto existiert nicht!");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.err.println("Kontonummer muss eine Zahl sein!");
|
|
||||||
e.printStackTrace();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
|
||||||
System.out.println("Startkonto existiert nicht!");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.err.println("Kontonummer muss eine Zahl sein!");
|
|
||||||
e.printStackTrace();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
running = false;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
boolean erfolgreich = bs.überweisungBeauftragen(startkonto, zielkonto, (long) (betrag * 100), verwendungszweck);
|
|
||||||
System.out.println("Überweisung" + ((!erfolgreich) ? " nicht" : "") + " erfolgreich ausgeführt.");
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private void saldoAbfragen() {
|
|
||||||
|
|
||||||
boolean running = true;
|
|
||||||
int kontonummer = 0;
|
|
||||||
int anzahl = 0;
|
|
||||||
|
|
||||||
while(running) {
|
|
||||||
|
|
||||||
System.out.print("Geben Sie bitte die Kontonummer des gewünschten Kontos ein: ");
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
kontonummer = Integer.parseInt(sc.nextLine());
|
|
||||||
|
|
||||||
if(bs.getKonten().containsKey(kontonummer)){
|
|
||||||
|
|
||||||
System.out.print("Bitte geben Sie die Anzahl der Kontobewegungen für den Saldo ein: ");
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
anzahl = Integer.parseInt(sc.nextLine());
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.err.println("die Anzahl muss eine Zahl sein!");
|
|
||||||
e.printStackTrace();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
|
||||||
System.out.println("Kontonummer existiert nicht");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.err.println("Kontonummer muss eine Zahl sein!");
|
|
||||||
e.printStackTrace();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
running = false;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
long saldo = bs.saldoBestimmen(kontonummer, anzahl);
|
|
||||||
System.out.printf("Der Saldo nach %d Kontobewegungen beträgt %.2f Euro.%n", anzahl, (saldo / 100d));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private void aktienKaufen() {
|
|
||||||
|
|
||||||
boolean running = true;
|
|
||||||
int kontonummer = 0;
|
|
||||||
int anzahl = 0;
|
|
||||||
String aktienName = "";
|
|
||||||
|
|
||||||
while (running) {
|
|
||||||
|
|
||||||
System.out.println("Aktien kaufen");
|
|
||||||
System.out.print("Bitte geben Sie die Kontonummer ein: ");
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
kontonummer = Integer.parseInt(sc.nextLine());
|
|
||||||
|
|
||||||
if(bs.getKonten().containsKey(kontonummer)){
|
|
||||||
|
|
||||||
System.out.println("Folgende Aktien sind Verfügbar");
|
|
||||||
System.out.println("1 -> Deutsche Bank AG (DBK.DE)\n2 -> Deere & Company (DCO.DE)");
|
|
||||||
System.out.print("Bitte geben Sie den Namen in Klammern ein um den Preis zu sehen:");
|
|
||||||
|
|
||||||
aktienName = sc.nextLine();
|
|
||||||
|
|
||||||
System.out.println("Preis der Aktie");
|
|
||||||
System.out.println(bs.getAktienPreis(aktienName));
|
|
||||||
|
|
||||||
System.out.print("Bitte geben Sie die Anzahld er Aktien ein, die sie kaufen möchten: ");
|
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
anzahl = Integer.parseInt(sc.nextLine());
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.err.println("Die Anzahl muss eine Zahl sein!");
|
|
||||||
e.printStackTrace();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
|
||||||
System.out.println("Kontonummer existiert nicht!");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.err.println("Kontonummer muss eine Zahl sein!");
|
|
||||||
e.printStackTrace();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
running = false;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
boolean erg = bs.aktienKauf(kontonummer, anzahl, aktienName);
|
|
||||||
System.out.printf("Aktienkauf" + ((!erg)? " nicht" : "" ) + " erfolgreich. ");
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue