Compare commits
18 Commits
Author | SHA1 | Date |
---|---|---|
Caner | 6a3fffdc33 | |
Caner | b837bddaa5 | |
Caner | 9423e4fe7a | |
Caner | 96aaf64dbe | |
Caner | e54748d16f | |
Caner Aliji | 0405327506 | |
Caner Aliji | 1bbdf7aea5 | |
Caner Aliji | d384b5ceac | |
Caner | bc1c85afcd | |
Caner | e2666fb5a2 | |
Caner | d09bf5386f | |
Caner | 6f3e244767 | |
Caner Aliji | 930c6b96b3 | |
Caner | 0d4ec593e0 | |
Caner | cdbd93c610 | |
Caner | c0967d7fa2 | |
Caner | 2b0940b5b5 | |
Caner | 50e4fd4aaf |
|
@ -1,7 +1,9 @@
|
||||||
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.AuswahlmenüFrame;
|
||||||
|
import de.hs_mannheim.informatik.bank.gui.HauptmenüFrame;
|
||||||
|
|
||||||
|
|
||||||
public class Main {
|
public class Main {
|
||||||
|
|
||||||
|
@ -9,7 +11,9 @@ public class Main {
|
||||||
|
|
||||||
Banksystem bs = new Banksystem("Spaßkasse Mannheim");
|
Banksystem bs = new Banksystem("Spaßkasse Mannheim");
|
||||||
|
|
||||||
UI ui = new UI(bs);
|
HauptmenüFrame hmf = new HauptmenüFrame(bs);
|
||||||
|
|
||||||
|
AuswahlmenüFrame amf = new AuswahlmenüFrame(bs);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ package de.hs_mannheim.informatik.bank.domain;
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
||||||
public class Konto implements Serializable, Comparable<Object> {
|
public class Konto implements Serializable, Comparable<Konto>{
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ -46,6 +46,7 @@ public class Konto implements Serializable, Comparable<Object> {
|
||||||
});
|
});
|
||||||
|
|
||||||
return auflistung;
|
return auflistung;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public long berechneSaldo(int anzahl) {
|
public long berechneSaldo(int anzahl) {
|
||||||
|
@ -84,11 +85,11 @@ public class Konto implements Serializable, Comparable<Object> {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int compareTo(Object o) {
|
public int compareTo(Konto o) {
|
||||||
|
|
||||||
Konto k = (Konto) o;
|
Konto k = (Konto) o;
|
||||||
|
|
||||||
return (int) (k.getKontostand() - this.getKontostand());
|
return (int) (this.getKontostand() - k.getKontostand());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -4,8 +4,8 @@ import java.io.IOException;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.stream.Collectors;
|
|
||||||
import java.util.stream.Stream;
|
|
||||||
|
|
||||||
import de.hs_mannheim.informatik.bank.domain.Bank;
|
import de.hs_mannheim.informatik.bank.domain.Bank;
|
||||||
import de.hs_mannheim.informatik.bank.domain.Depot;
|
import de.hs_mannheim.informatik.bank.domain.Depot;
|
||||||
|
@ -69,71 +69,16 @@ public class Banksystem {
|
||||||
|
|
||||||
String[] liste = new String[konten.size()];
|
String[] liste = new String[konten.size()];
|
||||||
|
|
||||||
kontenList.stream().forEach(konto -> {
|
kontenList.stream().forEach(
|
||||||
|
konto -> {
|
||||||
liste[kontenList.indexOf(konto)] = konto.toString();
|
liste[kontenList.indexOf(konto)] = konto.toString();
|
||||||
});
|
}
|
||||||
|
);
|
||||||
|
|
||||||
return liste;
|
return liste;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void mapKontoToString(){
|
|
||||||
|
|
||||||
HashMap<Integer, Konto> konten = bank.getKonten();
|
|
||||||
|
|
||||||
List<String> kontenList = konten.values().stream()
|
|
||||||
.map(konto -> konto.toString())
|
|
||||||
.collect(Collectors.toList());
|
|
||||||
|
|
||||||
kontenList.stream().forEach(s -> System.out.println(s));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public void mapKundeToString(){
|
|
||||||
|
|
||||||
HashMap<Integer, Kunde> kunden = bank.getKundenMap();
|
|
||||||
|
|
||||||
List<String> kundenList = kunden.values().stream()
|
|
||||||
.map(kunde -> kunde.toString())
|
|
||||||
.collect(Collectors.toList());
|
|
||||||
|
|
||||||
kundenList.stream().forEach(s -> System.out.println(s));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getAllBalances(){
|
|
||||||
|
|
||||||
Collection<Konto> kontenValues = bank.getKonten().values();
|
|
||||||
|
|
||||||
Stream<Konto> kontenStream = kontenValues.stream();
|
|
||||||
|
|
||||||
double sum = kontenStream.mapToDouble(konto -> konto.getKontostand()).sum();
|
|
||||||
|
|
||||||
return sum;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void getMinMaxAvgBalances(){
|
|
||||||
|
|
||||||
Collection<Konto> kontenValues = bank.getKonten().values();
|
|
||||||
|
|
||||||
Stream<Konto> kontenStream = kontenValues.stream();
|
|
||||||
|
|
||||||
double min = kontenStream.mapToDouble(konto -> konto.getKontostand()).min().getAsDouble();
|
|
||||||
|
|
||||||
kontenStream = kontenValues.stream();
|
|
||||||
|
|
||||||
double max = kontenStream.mapToDouble(konto -> konto.getKontostand()).max().getAsDouble();
|
|
||||||
|
|
||||||
kontenStream = kontenValues.stream();
|
|
||||||
|
|
||||||
double avg = kontenStream.mapToDouble(konto -> konto.getKontostand()).average().getAsDouble();
|
|
||||||
|
|
||||||
System.out.println("Min: " + (min / 100) + " Max: " + (max /100) + " Avg: " + (avg / 100));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public String[] getAktienliste() {
|
public String[] getAktienliste() {
|
||||||
|
|
||||||
Collection<String> aktien = bank.getAktienliste();
|
Collection<String> aktien = bank.getAktienliste();
|
||||||
|
@ -148,17 +93,6 @@ public class Banksystem {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void getNegativeKontostände() {
|
|
||||||
|
|
||||||
HashMap<Integer, Konto> konten = bank.getKonten();
|
|
||||||
|
|
||||||
konten.entrySet().stream().filter(konto -> konto.getValue().getKontostand() < 0).forEach(konto -> {
|
|
||||||
System.out.println(konto.getValue().toString());
|
|
||||||
});
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public long geldEinzahlen(int kontonummer, long betrag) throws IOException {
|
public long geldEinzahlen(int kontonummer, long betrag) throws IOException {
|
||||||
Konto konto = bank.findeKonto(kontonummer);
|
Konto konto = bank.findeKonto(kontonummer);
|
||||||
konto.einzahlen(betrag, "Einzahlung am Schalter", "Einzahlung", konto.getKunde().getName());
|
konto.einzahlen(betrag, "Einzahlung am Schalter", "Einzahlung", konto.getKunde().getName());
|
||||||
|
@ -259,6 +193,7 @@ public class Banksystem {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public String getBankname() {
|
public String getBankname() {
|
||||||
return bank.getName();
|
return bank.getName();
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,96 @@
|
||||||
|
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.JPanel;
|
||||||
|
import javax.swing.JTextArea;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class AktienAnzeigenFrame implements ActionListener {
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JButton button;
|
||||||
|
private JButton button2;
|
||||||
|
private JTextArea output;
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public AktienAnzeigenFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Aktien anzeigen");
|
||||||
|
frame.setSize(400, 300);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.button = new JButton("Aktien anzeigen");
|
||||||
|
button.setBounds(10, 10, 130, 25);
|
||||||
|
button.addActionListener(this);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
this.button2 = new JButton("Zurück");
|
||||||
|
button2.setBounds(245, 10, 130, 25);
|
||||||
|
button2.addActionListener(this);
|
||||||
|
panel.add(button2);
|
||||||
|
|
||||||
|
this.output = new JTextArea();
|
||||||
|
output.setBounds(10, 55, 365, 200);
|
||||||
|
output.setEditable(false);
|
||||||
|
panel.add(output);
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Aktien anzeigen...");
|
||||||
|
|
||||||
|
if (e.getSource() == button) {
|
||||||
|
|
||||||
|
String[] aktien = bs.getAktienliste();
|
||||||
|
|
||||||
|
if (aktien.length > 0) {
|
||||||
|
|
||||||
|
for (String s : aktien) {
|
||||||
|
|
||||||
|
output.append(s);
|
||||||
|
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
|
||||||
|
output.append("Keine Aktien vorhanden");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (e.getSource() == button2) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüDepotFrame amdf = new AuswahlmenüDepotFrame(bs);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
FehlerFrame ff = new FehlerFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,147 @@
|
||||||
|
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.JLabel;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
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 AktienKaufenFrame implements ActionListener {
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JLabel label;
|
||||||
|
private JLabel label2;
|
||||||
|
private JLabel label3;
|
||||||
|
private JLabel label4;
|
||||||
|
private JLabel label5;
|
||||||
|
private JLabel label6;
|
||||||
|
private JLabel label7;
|
||||||
|
private JLabel label8;
|
||||||
|
private JTextField input;
|
||||||
|
private JTextField input2;
|
||||||
|
private JTextField input3;
|
||||||
|
private JTextArea output;
|
||||||
|
private JButton button;
|
||||||
|
private JButton button2;
|
||||||
|
|
||||||
|
private String aktienName1 = "DBK.DE";
|
||||||
|
private String aktienName2 = "DCO.DE";
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public AktienKaufenFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Aktien kaufen");
|
||||||
|
frame.setSize(500, 500);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.label = new JLabel("Folgende Aktien sind verfügbar:");
|
||||||
|
label.setBounds(10, 10, 200, 25);
|
||||||
|
panel.add(label);
|
||||||
|
|
||||||
|
this.label2 = new JLabel("1. Deutsche Bank (DBK.DE)");
|
||||||
|
label2.setBounds(10, 30, 200, 25);
|
||||||
|
panel.add(label2);
|
||||||
|
|
||||||
|
this.label7 = new JLabel("Preis d. Aktie:" + " " + bs.getAktienPreis(aktienName1) + "€");
|
||||||
|
label7.setBounds(200, 30, 200, 25);
|
||||||
|
panel.add(label7);
|
||||||
|
|
||||||
|
this.label3 = new JLabel("2. Deere & Company (DCO.DE)");
|
||||||
|
label3.setBounds(10, 50, 200, 25);
|
||||||
|
panel.add(label3);
|
||||||
|
|
||||||
|
this.label8 = new JLabel("Preis d. Aktie:" + " " + bs.getAktienPreis(aktienName2) + "€");
|
||||||
|
label8.setBounds(200, 50, 200, 25);
|
||||||
|
panel.add(label8);
|
||||||
|
|
||||||
|
this.label4 = new JLabel("Name d. Aktie");
|
||||||
|
label4.setBounds(10, 85, 200, 25);
|
||||||
|
panel.add(label4);
|
||||||
|
|
||||||
|
this.input = new JTextField(20);
|
||||||
|
input.setBounds(120, 85, 80, 25);
|
||||||
|
panel.add(input);
|
||||||
|
|
||||||
|
this.label5 = new JLabel("Anzahl");
|
||||||
|
label5.setBounds(10, 115, 200, 25);
|
||||||
|
panel.add(label5);
|
||||||
|
|
||||||
|
this.input2 = new JTextField(20);
|
||||||
|
input2.setBounds(120, 115, 80, 25);
|
||||||
|
panel.add(input2);
|
||||||
|
|
||||||
|
this.label6 = new JLabel("Kontonummer");
|
||||||
|
label6.setBounds(10, 145, 200, 25);
|
||||||
|
panel.add(label6);
|
||||||
|
|
||||||
|
this.input3 = new JTextField(20);
|
||||||
|
input3.setBounds(120, 145, 80, 25);
|
||||||
|
panel.add(input3);
|
||||||
|
|
||||||
|
this.button = new JButton("Kaufen");
|
||||||
|
button.setBounds(250, 115, 80, 25);
|
||||||
|
button.addActionListener(this);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
this.button2 = new JButton("Zurück");
|
||||||
|
button2.setBounds(200, 415, 80, 25);
|
||||||
|
button2.addActionListener(this);
|
||||||
|
panel.add(button2);
|
||||||
|
|
||||||
|
this.output = new JTextArea();
|
||||||
|
output.setBounds(40, 200, 400, 200);
|
||||||
|
panel.add(output);
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Aktien kaufen...");
|
||||||
|
|
||||||
|
if (e.getSource() == button) {
|
||||||
|
|
||||||
|
|
||||||
|
String aktienName = input.getText();
|
||||||
|
int anzahl = Integer.parseInt(input2.getText());
|
||||||
|
int kontonummer = Integer.parseInt(input3.getText());
|
||||||
|
|
||||||
|
boolean erg = bs.aktienKauf(kontonummer, anzahl, aktienName);
|
||||||
|
output.append("Aktienkauf" + ((!erg) ? " nicht" : "") + " erfolgreich. ");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (e.getSource() == button2) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüDepotFrame amdf = new AuswahlmenüDepotFrame(bs);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
FehlerFrame ff = new FehlerFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,146 @@
|
||||||
|
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.JPanel;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class AuswahlmenüDepotFrame implements ActionListener{
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JButton button;
|
||||||
|
private JButton button2;
|
||||||
|
private JButton button3;
|
||||||
|
private JButton button4;
|
||||||
|
private JButton button5;
|
||||||
|
private JButton button6;
|
||||||
|
private JButton button7;
|
||||||
|
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
|
||||||
|
public AuswahlmenüDepotFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Auswahlmenü Depot");
|
||||||
|
frame.setSize(400, 300);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.button = new JButton("Geld einzahlen");
|
||||||
|
button.setBounds(40, 20, 300, 25);
|
||||||
|
button.addActionListener(this);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
this.button2 = new JButton("Geld abheben");
|
||||||
|
button2.setBounds(40, 50, 300, 25);
|
||||||
|
button2.addActionListener(this);
|
||||||
|
panel.add(button2);
|
||||||
|
|
||||||
|
this.button3 = new JButton("Kontoauszug");
|
||||||
|
button3.setBounds(40, 80, 300, 25);
|
||||||
|
button3.addActionListener(this);
|
||||||
|
panel.add(button3);
|
||||||
|
|
||||||
|
this.button4 = new JButton("Saldo");
|
||||||
|
button4.setBounds(40, 110, 300, 25);
|
||||||
|
button4.addActionListener(this);
|
||||||
|
panel.add(button4);
|
||||||
|
|
||||||
|
this.button5 = new JButton("Aktien kaufen");
|
||||||
|
button5.setBounds(40, 140, 300, 25);
|
||||||
|
button5.addActionListener(this);
|
||||||
|
panel.add(button5);
|
||||||
|
|
||||||
|
this.button6 = new JButton("Aktien anzeigen");
|
||||||
|
button6.setBounds(40, 170, 300, 25);
|
||||||
|
button6.addActionListener(this);
|
||||||
|
panel.add(button6);
|
||||||
|
|
||||||
|
this.button7 = new JButton("Auswahlmenü");
|
||||||
|
button7.setBounds(40, 200, 300, 25);
|
||||||
|
button7.addActionListener(this);
|
||||||
|
panel.add(button7);
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Depot...");
|
||||||
|
|
||||||
|
if(e.getSource() == button) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
GeldEinzahlenFrame geldEinzahlenFrame = new GeldEinzahlenFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button2) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
GeldAuszahlenFrame geldAuszahlenFrame = new GeldAuszahlenFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button3) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
KontoauszugFrame kontoauszugFrame = new KontoauszugFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button4) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
SaldoFrame saldoFrame = new SaldoFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button5) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AktienKaufenFrame aktienKaufenFrame = new AktienKaufenFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button6) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AktienAnzeigenFrame aktienAnzeigenFrame = new AktienAnzeigenFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button7) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüFrame auswahlmenüFrame = new AuswahlmenüFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
FehlerFrame fehlerFrame = new FehlerFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,103 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.gui;
|
||||||
|
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class AuswahlmenüFrame implements ActionListener {
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JButton button;
|
||||||
|
private JButton button2;
|
||||||
|
private JButton button3;
|
||||||
|
private JButton button4;
|
||||||
|
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public AuswahlmenüFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Auswahlmenü");
|
||||||
|
frame.setSize(400, 300);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.button = new JButton("Konto anlegen");
|
||||||
|
button.setBounds(40, 50, 300, 25);
|
||||||
|
button.addActionListener(this);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
this.button2 = new JButton("Konten auflisten");
|
||||||
|
button2.setBounds(40, 80, 300, 25);
|
||||||
|
button2.addActionListener(this);
|
||||||
|
panel.add(button2);
|
||||||
|
|
||||||
|
this.button3 = new JButton("Konto auswählen");
|
||||||
|
button3.setBounds(40, 110, 300, 25);
|
||||||
|
button3.addActionListener(this);
|
||||||
|
panel.add(button3);
|
||||||
|
|
||||||
|
|
||||||
|
this.button4 = new JButton("Hauptmenü");
|
||||||
|
button4.setBounds(40, 170, 300, 25);
|
||||||
|
button4.addActionListener(this);
|
||||||
|
panel.add(button4);
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Auswahlmenü...");
|
||||||
|
|
||||||
|
if (e.getSource() == button) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
KontoAnlegenFrame kontoAnlegenFrame = new KontoAnlegenFrame(bs);
|
||||||
|
|
||||||
|
} else if (e.getSource() == button2) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
KontoListingFrame kontoListingFrame = new KontoListingFrame(bs);
|
||||||
|
|
||||||
|
} else if (e.getSource() == button3) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
KontoAuswahlFrame kontoAuswahlFrame = new KontoAuswahlFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (e.getSource() == button4) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
HauptmenüFrame hauptmenüFrame = new HauptmenüFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
else {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
FehlerFrame fehlerFrame = new FehlerFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,131 @@
|
||||||
|
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.JPanel;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class AuswahlmenüGirokontoFrame implements ActionListener {
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JButton button;
|
||||||
|
private JButton button2;
|
||||||
|
private JButton button3;
|
||||||
|
private JButton button4;
|
||||||
|
private JButton button5;
|
||||||
|
private JButton button6;
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public AuswahlmenüGirokontoFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Auswahlmenü Girokonto");
|
||||||
|
frame.setSize(400, 300);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.button = new JButton("Geld einzahlen");
|
||||||
|
button.setBounds(40, 50, 300, 25);
|
||||||
|
button.addActionListener(this);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
this.button2 = new JButton("Geld abheben");
|
||||||
|
button2.setBounds(40, 80, 300, 25);
|
||||||
|
button2.addActionListener(this);
|
||||||
|
panel.add(button2);
|
||||||
|
|
||||||
|
this.button3 = new JButton("Kontoauszug");
|
||||||
|
button3.setBounds(40, 110, 300, 25);
|
||||||
|
button3.addActionListener(this);
|
||||||
|
panel.add(button3);
|
||||||
|
|
||||||
|
this.button4 = new JButton("Saldo");
|
||||||
|
button4.setBounds(40, 140, 300, 25);
|
||||||
|
button4.addActionListener(this);
|
||||||
|
panel.add(button4);
|
||||||
|
|
||||||
|
this.button5 = new JButton("Überweisung");
|
||||||
|
button5.setBounds(40, 170, 300, 25);
|
||||||
|
button5.addActionListener(this);
|
||||||
|
panel.add(button5);
|
||||||
|
|
||||||
|
this.button6 = new JButton("Auswahlmenü");
|
||||||
|
button6.setBounds(40, 200, 300, 25);
|
||||||
|
button6.addActionListener(this);
|
||||||
|
panel.add(button6);
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Girokonto...");
|
||||||
|
|
||||||
|
if(e.getSource() == button) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
GeldEinzahlenFrame geldEinzahlenFrame = new GeldEinzahlenFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button2) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
GeldAuszahlenFrame geldAuszahlenFrame = new GeldAuszahlenFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button3) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
KontoauszugFrame kontoauszugFrame = new KontoauszugFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button4) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
SaldoFrame saldoFrame = new SaldoFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button5) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
ÜberweisungsFrame überweisungsFrame = new ÜberweisungsFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button6) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüFrame auswahlmenüFrame = new AuswahlmenüFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
FehlerFrame fehlerFrame = new FehlerFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,124 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.gui;
|
||||||
|
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class AuswahlmenüSparkontoFrame implements ActionListener{
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JButton button;
|
||||||
|
private JButton button2;
|
||||||
|
private JButton button3;
|
||||||
|
private JButton button4;
|
||||||
|
private JButton button5;
|
||||||
|
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public AuswahlmenüSparkontoFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Auswahlmenü Sparkonto");
|
||||||
|
frame.setSize(400, 300);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.button = new JButton("Geld einzahlen");
|
||||||
|
button.setBounds(40, 50, 300, 25);
|
||||||
|
button.addActionListener(this);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
this.button2 = new JButton("Geld abheben");
|
||||||
|
button2.setBounds(40, 80, 300, 25);
|
||||||
|
button2.addActionListener(this);
|
||||||
|
panel.add(button2);
|
||||||
|
|
||||||
|
this.button3 = new JButton("Kontoauszug");
|
||||||
|
button3.setBounds(40, 110, 300, 25);
|
||||||
|
button3.addActionListener(this);
|
||||||
|
panel.add(button3);
|
||||||
|
|
||||||
|
this.button4 = new JButton("Saldo");
|
||||||
|
button4.setBounds(40, 140, 300, 25);
|
||||||
|
button4.addActionListener(this);
|
||||||
|
panel.add(button4);
|
||||||
|
|
||||||
|
this.button5 = new JButton("Auswahlmenü");
|
||||||
|
button5.setBounds(40, 170, 300, 25);
|
||||||
|
button5.addActionListener(this);
|
||||||
|
panel.add(button5);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Sparkonto...");
|
||||||
|
|
||||||
|
if(e.getSource() == button) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
GeldEinzahlenFrame geldEinzahlenFrame = new GeldEinzahlenFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button2) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
GeldAuszahlenFrame geldAuszahlenFrame = new GeldAuszahlenFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button3) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
KontoauszugFrame kontoauszugFrame = new KontoauszugFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button4) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
SaldoFrame saldoFrame = new SaldoFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button5) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüFrame auswahlmenüFrame = new AuswahlmenüFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
FehlerFrame fehlerFrame = new FehlerFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,72 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.gui;
|
||||||
|
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JLabel;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
import javax.swing.SwingConstants;
|
||||||
|
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class FehlerFrame implements ActionListener {
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JButton button;
|
||||||
|
private JLabel label;
|
||||||
|
private JLabel label2;
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public FehlerFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Fehlermeldung");
|
||||||
|
frame.setSize(300, 200);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.label = new JLabel("Ein Fehler ist aufgetreten");
|
||||||
|
label.setBounds(-10, 20, 300, 25);
|
||||||
|
label.setHorizontalAlignment(SwingConstants.CENTER);
|
||||||
|
panel.add(label);
|
||||||
|
|
||||||
|
this.label2 = new JLabel("Bitte kehren Sie zum Hauptmenü zurück.");
|
||||||
|
label2.setBounds(-10, 40, 300, 50);
|
||||||
|
label2.setHorizontalAlignment(SwingConstants.CENTER);
|
||||||
|
panel.add(label2);
|
||||||
|
|
||||||
|
|
||||||
|
this.button = new JButton("Zurück zum Hauptmenü");
|
||||||
|
button.setBounds(45, 120, 200, 25);
|
||||||
|
button.setHorizontalAlignment(SwingConstants.CENTER);
|
||||||
|
button.addActionListener(this);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Fehlermeldung...");
|
||||||
|
|
||||||
|
if (e.getSource() == button) {
|
||||||
|
frame.dispose();
|
||||||
|
HauptmenüFrame hmf = new HauptmenüFrame(bs);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,153 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.gui;
|
||||||
|
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JLabel;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
import javax.swing.JTextArea;
|
||||||
|
import javax.swing.JTextField;
|
||||||
|
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.domain.Kontoart;
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class GeldAuszahlenFrame implements ActionListener{
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JButton button;
|
||||||
|
private JButton button2;
|
||||||
|
private JButton button3;
|
||||||
|
private JTextArea output;
|
||||||
|
private JTextArea output2;
|
||||||
|
private JTextField input;
|
||||||
|
private JTextField input2;
|
||||||
|
private JLabel label;
|
||||||
|
private JLabel label2;
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public GeldAuszahlenFrame(Banksystem bs){
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Geld auszahlen");
|
||||||
|
frame.setSize(400, 300);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
|
||||||
|
this.label = new JLabel("Kontonummer");
|
||||||
|
label.setBounds(10, 10, 100, 25);
|
||||||
|
panel.add(label);
|
||||||
|
|
||||||
|
this.input = new JTextField();
|
||||||
|
input.setBounds(140, 10, 120, 25);
|
||||||
|
panel.add(input);
|
||||||
|
|
||||||
|
this.label2 = new JLabel("Betrag (€)");
|
||||||
|
label2.setBounds(10, 40, 100, 25);
|
||||||
|
panel.add(label2);
|
||||||
|
|
||||||
|
this.input2 = new JTextField();
|
||||||
|
input2.setBounds(140, 40, 120, 25);
|
||||||
|
panel.add(input2);
|
||||||
|
|
||||||
|
this.output2 = new JTextArea();
|
||||||
|
output2.setBounds(70, 120, 250, 100);
|
||||||
|
output2.setEditable(false);
|
||||||
|
panel.add(output2);
|
||||||
|
|
||||||
|
this.button2 = new JButton("Geld auszahlen");
|
||||||
|
button2.setBounds(140, 85, 120, 25);
|
||||||
|
button2.addActionListener(this);
|
||||||
|
panel.add(button2);
|
||||||
|
|
||||||
|
this.button3 = new JButton("Zurück");
|
||||||
|
button3.setBounds(140, 230, 120, 25);
|
||||||
|
button3.addActionListener(this);
|
||||||
|
panel.add(button3);
|
||||||
|
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Geld auszahlen...");
|
||||||
|
|
||||||
|
if(e.getSource() == button){
|
||||||
|
|
||||||
|
long kontostand = bs.getKontostand(Integer.parseInt(input.getText())) / 100;
|
||||||
|
|
||||||
|
output.append("Kontostand beträgt " + kontostand + "€");
|
||||||
|
|
||||||
|
input.setText("");
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button2) {
|
||||||
|
|
||||||
|
try {
|
||||||
|
|
||||||
|
boolean erfolg = bs.geldAuszahlen(Integer.parseInt(input.getText()), (long) Double.parseDouble(input2.getText()) * 100);
|
||||||
|
long neuerKontostand = bs.getKontostand(Integer.parseInt(input.getText()));
|
||||||
|
|
||||||
|
output2.append("Auszahlung" + ((!erfolg)? " nicht" : "" ) + " erfolgreich.\tneuer Kontostand: " + neuerKontostand / 100 + "€");
|
||||||
|
|
||||||
|
input.setText("");
|
||||||
|
input2.setText("");
|
||||||
|
|
||||||
|
} catch (NumberFormatException e1) {
|
||||||
|
e1.printStackTrace();
|
||||||
|
} catch (IOException e1) {
|
||||||
|
e1.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(e.getSource() == button3) {
|
||||||
|
|
||||||
|
if(bs.checkKontoart(Integer.parseInt(input.getText())) == Kontoart.Sparkonto) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüSparkontoFrame asf = new AuswahlmenüSparkontoFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(bs.checkKontoart(Integer.parseInt(input.getText())) == Kontoart.Girokonto) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüGirokontoFrame agf = new AuswahlmenüGirokontoFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(bs.checkKontoart(Integer.parseInt(input.getText())) == Kontoart.Depot) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüDepotFrame adf = new AuswahlmenüDepotFrame(bs);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
FehlerFrame ff = new FehlerFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,134 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.gui;
|
||||||
|
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JLabel;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
import javax.swing.JTextArea;
|
||||||
|
import javax.swing.JTextField;
|
||||||
|
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.domain.Kontoart;
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class GeldEinzahlenFrame implements ActionListener {
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JLabel label;
|
||||||
|
private JLabel label2;
|
||||||
|
private JTextField input;
|
||||||
|
private JTextField input2;
|
||||||
|
private JTextArea output;
|
||||||
|
private JButton button;
|
||||||
|
private JButton button2;
|
||||||
|
private JButton button3;
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public GeldEinzahlenFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Geld einzahlen");
|
||||||
|
frame.setSize(400, 480);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.label = new JLabel("Kontonummer");
|
||||||
|
label.setBounds(10, 20, 100, 25);
|
||||||
|
panel.add(label);
|
||||||
|
|
||||||
|
this.input = new JTextField(20);
|
||||||
|
input.setBounds(140, 20, 165, 25);
|
||||||
|
panel.add(input);
|
||||||
|
|
||||||
|
this.label2 = new JLabel("Betrag (€)");
|
||||||
|
label2.setBounds(10, 50, 80, 25);
|
||||||
|
panel.add(label2);
|
||||||
|
|
||||||
|
this.input2 = new JTextField(20);
|
||||||
|
input2.setBounds(140, 50, 165, 25);
|
||||||
|
panel.add(input2);
|
||||||
|
|
||||||
|
this.output = new JTextArea();
|
||||||
|
output.setBounds(40, 100, 300, 200);
|
||||||
|
output.setEditable(false);
|
||||||
|
panel.add(output);
|
||||||
|
|
||||||
|
this.button = new JButton("Einzahlen");
|
||||||
|
button.addActionListener(this);
|
||||||
|
button.setBounds(40, 305, 300, 25);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
this.button2 = new JButton("Zurück");
|
||||||
|
button2.addActionListener(this);
|
||||||
|
button2.setBounds(40, 410, 300, 25);
|
||||||
|
panel.add(button2);
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Geld einzahlen...");
|
||||||
|
|
||||||
|
if (e.getSource() == button) {
|
||||||
|
|
||||||
|
try {
|
||||||
|
|
||||||
|
bs.geldEinzahlen(Integer.parseInt(input.getText()),
|
||||||
|
(long) (Double.parseDouble(input2.getText()) * 100));
|
||||||
|
output.append("Einzahlung von " + input2.getText() + " erfolgreich\nNeuer Kontostand beträgt "
|
||||||
|
+ (bs.getKontostand(Integer.parseInt(input.getText())) / 100) + " €\n");
|
||||||
|
|
||||||
|
} catch (IOException e1) {
|
||||||
|
e1.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (e.getSource() == button2) {
|
||||||
|
|
||||||
|
if(bs.checkKontoart(Integer.parseInt(input.getText())) == Kontoart.Sparkonto) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüSparkontoFrame asf = new AuswahlmenüSparkontoFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(bs.checkKontoart(Integer.parseInt(input.getText())) == Kontoart.Girokonto) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüGirokontoFrame agf = new AuswahlmenüGirokontoFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(bs.checkKontoart(Integer.parseInt(input.getText())) == Kontoart.Depot) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüDepotFrame adf = new AuswahlmenüDepotFrame(bs);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
FehlerFrame ff = new FehlerFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,94 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.gui;
|
||||||
|
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JLabel;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class HauptmenüFrame implements ActionListener {
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JButton button;
|
||||||
|
private JButton button2;
|
||||||
|
private JButton button3;
|
||||||
|
private JLabel label;
|
||||||
|
private JLabel label2;
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public HauptmenüFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Hauptmenü");
|
||||||
|
frame.setSize(300, 250);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.label = new JLabel(bs.getBankname());
|
||||||
|
label.setBounds(10, 10, 200, 25);
|
||||||
|
panel.add(label);
|
||||||
|
|
||||||
|
this.label2 = new JLabel("Hauptmenü");
|
||||||
|
label2.setBounds(10, 30, 200, 25);
|
||||||
|
panel.add(label2);
|
||||||
|
|
||||||
|
this.button = new JButton("Neuen Kunden anlegen");
|
||||||
|
button.setBounds(17, 80, 250, 25);
|
||||||
|
button.addActionListener(this);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
this.button2 = new JButton("Bei Kunden einloggen");
|
||||||
|
button2.setBounds(17, 110, 250, 25);
|
||||||
|
button2.addActionListener(this);
|
||||||
|
panel.add(button2);
|
||||||
|
|
||||||
|
this.button3 = new JButton("Beenden");
|
||||||
|
button3.setBounds(17, 140, 250, 25);
|
||||||
|
button3.addActionListener(this);
|
||||||
|
panel.add(button3);
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Hauptmenü...");
|
||||||
|
|
||||||
|
if (e.getSource() == button) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
KundeAnlegen kundeAnlegen = new KundeAnlegen(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (e.getSource() == button2) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
LoginFrame loginFrame = new LoginFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (e.getSource() == button3) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,105 @@
|
||||||
|
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.JPanel;
|
||||||
|
import javax.swing.JTextArea;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.domain.Kontoart;
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class KontoAnlegenFrame implements ActionListener {
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JButton button;
|
||||||
|
private JButton button2;
|
||||||
|
private JButton button3;
|
||||||
|
private JButton button4;
|
||||||
|
private JTextArea output;
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public KontoAnlegenFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Konto anlegen");
|
||||||
|
frame.setSize(400, 400);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.button = new JButton("Girokonto");
|
||||||
|
button.setBounds(10, 10, 95, 25);
|
||||||
|
button.addActionListener(this);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
this.button2 = new JButton("Sparkonto");
|
||||||
|
button2.setBounds(145, 10, 95, 25);
|
||||||
|
button2.addActionListener(this);
|
||||||
|
panel.add(button2);
|
||||||
|
|
||||||
|
this.button3 = new JButton("Depot");
|
||||||
|
button3.setBounds(280, 10, 95, 25);
|
||||||
|
button3.addActionListener(this);
|
||||||
|
panel.add(button3);
|
||||||
|
|
||||||
|
this.button4 = new JButton("Auswahlmenü");
|
||||||
|
button4.setBounds(10, 320, 120, 25);
|
||||||
|
button4.addActionListener(this);
|
||||||
|
panel.add(button4);
|
||||||
|
|
||||||
|
this.output = new JTextArea();
|
||||||
|
output.setBounds(10, 50, 365, 250);
|
||||||
|
output.setEditable(false);
|
||||||
|
panel.add(output);
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Konto anlegen...");
|
||||||
|
|
||||||
|
try {
|
||||||
|
|
||||||
|
if (e.getSource() == button) {
|
||||||
|
|
||||||
|
int kontonummer = bs.kontoAnlegen(bs.getCurrentKunde(), Kontoart.Girokonto);
|
||||||
|
output.append("Girokonto mit der Kontonummer " + kontonummer + " wurde angelegt\n");
|
||||||
|
|
||||||
|
} else if (e.getSource() == button2) {
|
||||||
|
|
||||||
|
int kontonummer = bs.kontoAnlegen(bs.getCurrentKunde(), Kontoart.Sparkonto);
|
||||||
|
output.append("Sparkonto mit der Kontonummer " + kontonummer + " wurde angelegt\n");
|
||||||
|
|
||||||
|
} else if (e.getSource() == button3) {
|
||||||
|
|
||||||
|
int kontonummer = bs.kontoAnlegen(bs.getCurrentKunde(), Kontoart.Depot);
|
||||||
|
output.append("Depot mit der Kontonummer " + kontonummer + " wurde angelegt\n");
|
||||||
|
|
||||||
|
} else if (e.getSource() == button4) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüFrame amf = new AuswahlmenüFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
catch (Exception ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,95 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.gui;
|
||||||
|
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JLabel;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
import javax.swing.JTextField;
|
||||||
|
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.domain.Kontoart;
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class KontoAuswahlFrame implements ActionListener{
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JButton button;
|
||||||
|
private JLabel label;
|
||||||
|
private JTextField input;
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public KontoAuswahlFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Kontoauswahl");
|
||||||
|
frame.setSize(300, 200);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.label = new JLabel("Kontonummer");
|
||||||
|
label.setBounds(10, 17, 80, 25);
|
||||||
|
panel.add(label);
|
||||||
|
|
||||||
|
this.input = new JTextField(20);
|
||||||
|
input.setBounds(120, 20, 80, 20);
|
||||||
|
panel.add(input);
|
||||||
|
|
||||||
|
this.button = new JButton("Login");
|
||||||
|
button.setBounds(100, 100, 80, 25);
|
||||||
|
button.addActionListener(this);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Login...");
|
||||||
|
|
||||||
|
try {
|
||||||
|
|
||||||
|
if(bs.checkKontoart(Integer.parseInt(input.getText())) == Kontoart.Sparkonto) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüSparkontoFrame auswahlmenüSparkontoFrame = new AuswahlmenüSparkontoFrame(bs);
|
||||||
|
|
||||||
|
} else if(bs.checkKontoart(Integer.parseInt(input.getText())) == Kontoart.Girokonto) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüGirokontoFrame auswahlmenüGirokontoFrame = new AuswahlmenüGirokontoFrame(bs);
|
||||||
|
|
||||||
|
} else if(bs.checkKontoart(Integer.parseInt(input.getText())) == Kontoart.Depot) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüDepotFrame auswahlmenüDepotFrame = new AuswahlmenüDepotFrame(bs);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
FehlerFrame fehlerFrame = new FehlerFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
} catch (Exception ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,84 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.gui;
|
||||||
|
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
import java.util.Arrays;
|
||||||
|
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
import javax.swing.JTextArea;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class KontoListingFrame implements ActionListener {
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JButton button;
|
||||||
|
private JButton button2;
|
||||||
|
private JTextArea output;
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public KontoListingFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Kontoliste");
|
||||||
|
frame.setSize(500, 400);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.button = new JButton("Kontoliste abrufen");
|
||||||
|
button.setBounds(10, 10, 160, 25);
|
||||||
|
button.addActionListener(this);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
this.button2 = new JButton("Auswahlmenü");
|
||||||
|
button2.setBounds(215, 10, 260, 25);
|
||||||
|
button2.addActionListener(this);
|
||||||
|
panel.add(button2);
|
||||||
|
|
||||||
|
this.output = new JTextArea();
|
||||||
|
output.setBounds(10, 60, 465, 280);
|
||||||
|
output.setEditable(false);
|
||||||
|
panel.add(output);
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Kontenliste abrufen...");
|
||||||
|
|
||||||
|
if (e.getSource() == button) {
|
||||||
|
|
||||||
|
String[] konten = bs.getKontenlisteForKunde();
|
||||||
|
|
||||||
|
if (konten.length > 0) {
|
||||||
|
|
||||||
|
Arrays.stream(konten).forEach(output::append);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
output.append("Keine Konten vorhanden.");
|
||||||
|
|
||||||
|
} else if (e.getSource() == button2) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüFrame auswahlmenü = new AuswahlmenüFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,130 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.gui;
|
||||||
|
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JLabel;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
import javax.swing.JTextArea;
|
||||||
|
import javax.swing.JTextField;
|
||||||
|
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.domain.Kontoart;
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class KontoauszugFrame implements ActionListener {
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JLabel label;
|
||||||
|
private JTextField input;
|
||||||
|
private JTextArea output;
|
||||||
|
private JButton button;
|
||||||
|
private JButton button2;
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public KontoauszugFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Kontoauszug");
|
||||||
|
frame.setSize(450, 300);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.label = new JLabel("Kontonummer");
|
||||||
|
label.setBounds(10, 20, 100, 25);
|
||||||
|
panel.add(label);
|
||||||
|
|
||||||
|
this.input = new JTextField(20);
|
||||||
|
input.setBounds(100, 20, 60, 25);
|
||||||
|
panel.add(input);
|
||||||
|
|
||||||
|
this.output = new JTextArea();
|
||||||
|
output.setBounds(10, 50, 414, 150);
|
||||||
|
output.setEditable(false);
|
||||||
|
panel.add(output);
|
||||||
|
|
||||||
|
this.button = new JButton("Kontoauszug drucken");
|
||||||
|
button.setBounds(265, 20, 160, 25);
|
||||||
|
button.addActionListener(this);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
this.button2 = new JButton("Zurück");
|
||||||
|
button2.setBounds(170, 220, 100, 25);
|
||||||
|
button2.addActionListener(this);
|
||||||
|
panel.add(button2);
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Kontoauszug drucken...");
|
||||||
|
|
||||||
|
if (e.getSource() == button) {
|
||||||
|
|
||||||
|
if (e.getSource() == button) {
|
||||||
|
|
||||||
|
String[] kontoauszug = bs.erstelleKontoauszug(Integer.parseInt(input.getText()));
|
||||||
|
|
||||||
|
if (kontoauszug.length > 0) {
|
||||||
|
|
||||||
|
for (String ka : kontoauszug) {
|
||||||
|
|
||||||
|
output.append(ka + "\n");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
output.setText("Keine Transaktionen vorhanden!");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (e.getSource() == button2) {
|
||||||
|
|
||||||
|
if (bs.checkKontoart(Integer.parseInt(input.getText())) == Kontoart.Sparkonto) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüSparkontoFrame asf = new AuswahlmenüSparkontoFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (bs.checkKontoart(Integer.parseInt(input.getText())) == Kontoart.Girokonto) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüGirokontoFrame agf = new AuswahlmenüGirokontoFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (bs.checkKontoart(Integer.parseInt(input.getText())) == Kontoart.Depot) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüDepotFrame adf = new AuswahlmenüDepotFrame(bs);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
FehlerFrame ff = new FehlerFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,119 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.gui;
|
||||||
|
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
import javax.swing.JTextArea;
|
||||||
|
import javax.swing.JTextField;
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JLabel;
|
||||||
|
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class KundeAnlegen extends JFrame implements ActionListener {
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JLabel label;
|
||||||
|
private JLabel label2;
|
||||||
|
private JLabel label3;
|
||||||
|
private JTextField input;
|
||||||
|
private JTextField input2;
|
||||||
|
private JTextField input3;
|
||||||
|
private JFrame frame;
|
||||||
|
private JButton button;
|
||||||
|
private JButton button2;
|
||||||
|
private JTextArea output;
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public KundeAnlegen(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Kunde anlegen");
|
||||||
|
frame.setSize(400, 500);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.add(panel);
|
||||||
|
frame.setResizable(false);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.label = new JLabel("Name");
|
||||||
|
label.setBounds(10, 20, 80, 25);
|
||||||
|
panel.add(label);
|
||||||
|
|
||||||
|
this.input = new JTextField(20);
|
||||||
|
input.setBounds(120, 20, 165, 20);
|
||||||
|
panel.add(input);
|
||||||
|
|
||||||
|
this.label2 = new JLabel("Nachname");
|
||||||
|
label2.setBounds(10, 50, 80, 25);
|
||||||
|
panel.add(label2);
|
||||||
|
|
||||||
|
this.input2 = new JTextField(20);
|
||||||
|
input2.setBounds(120, 50, 165, 20);
|
||||||
|
panel.add(input2);
|
||||||
|
|
||||||
|
this.label3 = new JLabel("Alter");
|
||||||
|
label3.setBounds(10, 80, 80, 25);
|
||||||
|
panel.add(label3);
|
||||||
|
|
||||||
|
this.input3 = new JTextField(20);
|
||||||
|
input3.setBounds(120, 80, 165, 20);
|
||||||
|
panel.add(input3);
|
||||||
|
|
||||||
|
this.button = new JButton("Kunde anlegen");
|
||||||
|
button.addActionListener(this);
|
||||||
|
button.setBounds(120, 400, 165, 20);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
this.button2 = new JButton("Hauptmenü");
|
||||||
|
button2.addActionListener(this);
|
||||||
|
button2.setBounds(120, 430, 165, 20);
|
||||||
|
panel.add(button2);
|
||||||
|
|
||||||
|
this.output = new JTextArea();
|
||||||
|
output.setBounds(10, 140, 365, 230);
|
||||||
|
output.setEditable(false);
|
||||||
|
panel.add(output);
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Kunde anlegen...");
|
||||||
|
|
||||||
|
if (e.getSource() == button) {
|
||||||
|
|
||||||
|
try {
|
||||||
|
|
||||||
|
bs.addNewKunde(input.getText(), input2.getText(), Integer.parseInt(input3.getText()));
|
||||||
|
|
||||||
|
output.append("Ihr Kundenkonto mit der ID [" + bs.getKundenID() + "] wurde erfolgreich angelegt.\n");
|
||||||
|
|
||||||
|
input.setText("");
|
||||||
|
input2.setText("");
|
||||||
|
input3.setText("");
|
||||||
|
|
||||||
|
} catch (Exception ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if (e.getSource() == button2) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
HauptmenüFrame hmf = new HauptmenüFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,85 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.gui;
|
||||||
|
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JLabel;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
import javax.swing.JTextField;
|
||||||
|
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.domain.Kontoart;
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class LoginFrame implements ActionListener {
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JButton button;
|
||||||
|
private JTextField input;
|
||||||
|
private JLabel label;
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public LoginFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Login");
|
||||||
|
frame.setSize(300, 200);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.label = new JLabel("Kunden-ID");
|
||||||
|
label.setBounds(10, 17, 80, 25);
|
||||||
|
panel.add(label);
|
||||||
|
|
||||||
|
this.input = new JTextField(20);
|
||||||
|
input.setBounds(120, 20, 80, 20);
|
||||||
|
panel.add(input);
|
||||||
|
|
||||||
|
this.button = new JButton("Login");
|
||||||
|
button.setBounds(100, 100, 80, 25);
|
||||||
|
button.addActionListener(this);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Login...");
|
||||||
|
|
||||||
|
|
||||||
|
try {
|
||||||
|
|
||||||
|
bs.setCurrentKunde(bs.getKunde(Integer.parseInt(input.getText())));
|
||||||
|
|
||||||
|
if (bs.getCurrentKunde() != null) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüFrame amf = new AuswahlmenüFrame(bs);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
FehlerFrame lff = new FehlerFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (Exception ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,130 @@
|
||||||
|
package de.hs_mannheim.informatik.bank.gui;
|
||||||
|
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JLabel;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
import javax.swing.JTextArea;
|
||||||
|
import javax.swing.JTextField;
|
||||||
|
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
|
||||||
|
import de.hs_mannheim.informatik.bank.domain.Kontoart;
|
||||||
|
import de.hs_mannheim.informatik.bank.facade.Banksystem;
|
||||||
|
|
||||||
|
public class SaldoFrame implements ActionListener {
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JLabel label;
|
||||||
|
private JTextField input;
|
||||||
|
private JTextField input2;
|
||||||
|
private JTextArea output;
|
||||||
|
private JButton button;
|
||||||
|
private JButton button2;
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public SaldoFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Saldo");
|
||||||
|
frame.setSize(450, 300);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.label = new JLabel("Kontonummer");
|
||||||
|
label.setBounds(10, 10, 100, 25);
|
||||||
|
panel.add(label);
|
||||||
|
|
||||||
|
this.input = new JTextField(20);
|
||||||
|
input.setBounds(100, 10, 60, 25);
|
||||||
|
panel.add(input);
|
||||||
|
|
||||||
|
this.label = new JLabel("Anzahl");
|
||||||
|
label.setBounds(10, 40, 100, 25);
|
||||||
|
panel.add(label);
|
||||||
|
|
||||||
|
this.input2 = new JTextField(20);
|
||||||
|
input2.setBounds(100, 40, 60, 25);
|
||||||
|
panel.add(input2);
|
||||||
|
|
||||||
|
this.output = new JTextArea();
|
||||||
|
output.setBounds(10, 80, 414, 170);
|
||||||
|
output.setEditable(false);
|
||||||
|
panel.add(output);
|
||||||
|
|
||||||
|
this.button = new JButton("Saldo drucken");
|
||||||
|
button.setBounds(265, 10, 160, 25);
|
||||||
|
button.addActionListener(this);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
this.button2 = new JButton("Zurück");
|
||||||
|
button2.setBounds(265, 40, 160, 25);
|
||||||
|
button2.addActionListener(this);
|
||||||
|
panel.add(button2);
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Saldo...");
|
||||||
|
|
||||||
|
try {
|
||||||
|
|
||||||
|
if (e.getSource() == button) {
|
||||||
|
|
||||||
|
long saldo = bs.saldoBestimmen(Integer.parseInt(input.getText()), Integer.parseInt(input2.getText()));
|
||||||
|
|
||||||
|
output.append(
|
||||||
|
"Der Saldo nach " + input2.getText() + " Kontobewegungen beträgt " + (saldo / 100d) + " Euro.");
|
||||||
|
|
||||||
|
} else if (e.getSource() == button2) {
|
||||||
|
|
||||||
|
if (bs.checkKontoart(Integer.parseInt(input.getText())) == Kontoart.Sparkonto) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüSparkontoFrame asf = new AuswahlmenüSparkontoFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (bs.checkKontoart(Integer.parseInt(input.getText())) == Kontoart.Girokonto) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüGirokontoFrame agf = new AuswahlmenüGirokontoFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (bs.checkKontoart(Integer.parseInt(input.getText())) == Kontoart.Depot) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüDepotFrame adf = new AuswahlmenüDepotFrame(bs);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
FehlerFrame ff = new FehlerFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
} catch (Exception ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,144 @@
|
||||||
|
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.JLabel;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
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 ÜberweisungsFrame implements ActionListener {
|
||||||
|
|
||||||
|
private JPanel panel;
|
||||||
|
private JFrame frame;
|
||||||
|
private JLabel label;
|
||||||
|
private JLabel label2;
|
||||||
|
private JLabel label3;
|
||||||
|
private JLabel label4;
|
||||||
|
private JTextField input;
|
||||||
|
private JTextField input2;
|
||||||
|
private JTextField input3;
|
||||||
|
private JTextField input4;
|
||||||
|
private JTextArea output;
|
||||||
|
private JButton button;
|
||||||
|
private JButton button2;
|
||||||
|
|
||||||
|
private Banksystem bs;
|
||||||
|
|
||||||
|
public ÜberweisungsFrame(Banksystem bs) {
|
||||||
|
|
||||||
|
this.bs = bs;
|
||||||
|
|
||||||
|
this.panel = new JPanel();
|
||||||
|
|
||||||
|
this.frame = new JFrame();
|
||||||
|
frame.setTitle(bs.getBankname() + " - Überweisung");
|
||||||
|
frame.setSize(400, 400);
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
frame.setLocationRelativeTo(null);
|
||||||
|
frame.setResizable(false);
|
||||||
|
frame.add(panel);
|
||||||
|
panel.setLayout(null);
|
||||||
|
|
||||||
|
this.label = new JLabel("Starkonto");
|
||||||
|
label.setBounds(40, 50, 80, 25);
|
||||||
|
panel.add(label);
|
||||||
|
|
||||||
|
this.input = new JTextField(20);
|
||||||
|
input.setBounds(120, 50, 165, 25);
|
||||||
|
panel.add(input);
|
||||||
|
|
||||||
|
this.label2 = new JLabel("Zielkonto");
|
||||||
|
label2.setBounds(40, 80, 80, 25);
|
||||||
|
panel.add(label2);
|
||||||
|
|
||||||
|
this.input2 = new JTextField(20);
|
||||||
|
input2.setBounds(120, 80, 165, 25);
|
||||||
|
panel.add(input2);
|
||||||
|
|
||||||
|
this.label3 = new JLabel("Betrag");
|
||||||
|
label3.setBounds(40, 110, 80, 25);
|
||||||
|
panel.add(label3);
|
||||||
|
|
||||||
|
this.input3 = new JTextField(20);
|
||||||
|
input3.setBounds(120, 110, 165, 25);
|
||||||
|
panel.add(input3);
|
||||||
|
|
||||||
|
this.label4 = new JLabel("Verwendungszweck");
|
||||||
|
label4.setBounds(40, 140, 80, 25);
|
||||||
|
panel.add(label4);
|
||||||
|
|
||||||
|
this.input4 = new JTextField(20);
|
||||||
|
input4.setBounds(120, 140, 165, 25);
|
||||||
|
panel.add(input4);
|
||||||
|
|
||||||
|
this.output = new JTextArea();
|
||||||
|
output.setBounds(40, 170, 300, 100);
|
||||||
|
output.setEditable(false);
|
||||||
|
panel.add(output);
|
||||||
|
|
||||||
|
this.button = new JButton("Überweisung durchführen");
|
||||||
|
button.setBounds(40, 280, 300, 25);
|
||||||
|
button.addActionListener(this);
|
||||||
|
panel.add(button);
|
||||||
|
|
||||||
|
this.button2 = new JButton("Zurück");
|
||||||
|
button2.setBounds(40, 310, 300, 25);
|
||||||
|
button2.addActionListener(this);
|
||||||
|
panel.add(button2);
|
||||||
|
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
|
||||||
|
System.out.println("Überweisung durchführen...");
|
||||||
|
|
||||||
|
if (e.getSource() == button) {
|
||||||
|
|
||||||
|
try {
|
||||||
|
|
||||||
|
int startkonto = Integer.parseInt(input.getText());
|
||||||
|
int zielkonto = Integer.parseInt(input2.getText());
|
||||||
|
double betrag = Double.parseDouble(input3.getText());
|
||||||
|
String verwendungszweck = input4.getText();
|
||||||
|
|
||||||
|
boolean erfolg = bs.überweisungBeauftragen(startkonto, zielkonto, (long) (betrag * 100),
|
||||||
|
verwendungszweck);
|
||||||
|
|
||||||
|
output.append("Überweisung" + ((!erfolg) ? " nicht" : "") + " erfolgreich ausgeführt.");
|
||||||
|
|
||||||
|
input.setText("");
|
||||||
|
input2.setText("");
|
||||||
|
input3.setText("");
|
||||||
|
input4.setText("");
|
||||||
|
|
||||||
|
} catch (Exception ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (e.getSource() == button2) {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
AuswahlmenüGirokontoFrame amgk = new AuswahlmenüGirokontoFrame(bs);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
frame.dispose();
|
||||||
|
FehlerFrame ff = new FehlerFrame(bs);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -1,780 +0,0 @@
|
||||||
package de.hs_mannheim.informatik.bank.ui;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.Scanner;
|
|
||||||
import java.util.stream.Stream;
|
|
||||||
|
|
||||||
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("6 -> Negativ konten anzeigen");
|
|
||||||
System.out.println("7 -> Geldbestand der Bank anzeigen");
|
|
||||||
System.out.println("8 -> Min/Max/Avg Kontostände");
|
|
||||||
System.out.println("9 -> Konten anzeigen");
|
|
||||||
System.out.println("10 -> Kunden anzeigen");
|
|
||||||
|
|
||||||
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 6:
|
|
||||||
negativKontenAnzeigen();
|
|
||||||
break;
|
|
||||||
case 7:
|
|
||||||
geldbestandAnzeigen();
|
|
||||||
break;
|
|
||||||
case 8:
|
|
||||||
minMaxAvgKontostände();
|
|
||||||
break;
|
|
||||||
case 9:
|
|
||||||
mapKontenAnzeigen();
|
|
||||||
break;
|
|
||||||
case 10:
|
|
||||||
mapKundenAnzeigen();
|
|
||||||
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 mapKundenAnzeigen() {
|
|
||||||
|
|
||||||
System.out.println("Kunden anzeigen: ");
|
|
||||||
bs.mapKundeToString();
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private void mapKontenAnzeigen() {
|
|
||||||
|
|
||||||
System.out.println("Konten anzeigen: ");
|
|
||||||
bs.mapKontoToString();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private void minMaxAvgKontostände() {
|
|
||||||
|
|
||||||
System.out.println("Min/Max/Avg Kontostände: ");
|
|
||||||
bs.getMinMaxAvgBalances();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private void geldbestandAnzeigen() {
|
|
||||||
|
|
||||||
System.out.println("Geldbestand der Bank: " + (bs.getAllBalances() / 100) + "€");
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private void negativKontenAnzeigen() {
|
|
||||||
|
|
||||||
System.out.println("Negativ Konten: ");
|
|
||||||
bs.getNegativeKontostände();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
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:");
|
|
||||||
|
|
||||||
Stream<String> stream = Arrays.stream(konten);
|
|
||||||
|
|
||||||
stream.forEach(s -> 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 {
|
|
||||||
|
|
||||||
Stream<String> stream = Arrays.stream(kontobewegungen);
|
|
||||||
|
|
||||||
stream.forEach(System.out::println);
|
|
||||||
|
|
||||||
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