diff --git a/.project b/.project new file mode 100644 index 0000000..c0b5719 --- /dev/null +++ b/.project @@ -0,0 +1,11 @@ + + + Bank-System2 + + + + + + + + diff --git a/Bank-Beispiel/.classpath b/Bank-Beispiel/.classpath index 57bca72..d171cd4 100644 --- a/Bank-Beispiel/.classpath +++ b/Bank-Beispiel/.classpath @@ -1,10 +1,6 @@ - - - - - - - - - - + + + + + + diff --git a/Bank-Beispiel/src/Infrastruktur/Persistenz.java b/Bank-Beispiel/src/Infrastruktur/Persistenz.java new file mode 100644 index 0000000..54ca7e3 --- /dev/null +++ b/Bank-Beispiel/src/Infrastruktur/Persistenz.java @@ -0,0 +1,5 @@ +package Infrastruktur; + +public class Persistenz { + +} diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/Main.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/Main.java index b075558..2cfb4bb 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/Main.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/Main.java @@ -6,7 +6,7 @@ import de.hs_mannheim.informatik.bank.ui.UI; public class Main { public static void main(String[] args) { - Banksystem bs = new Banksystem("Spaßkasse Mannheim"); + Banksystem bs = new Banksystem("Sparkasse Mannheim"); UI ui = new UI(bs); } diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Bank.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Bank.java index 0b66d3d..bf9fa25 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Bank.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Bank.java @@ -1,26 +1,26 @@ -package de.hs_mannheim.informatik.bank.domain; - -import java.util.Collection; -import java.util.HashMap; - -public class Bank { - private String name; - private HashMap konten = new HashMap<>(); - - public Bank(String name) { - this.name = name; - } - - public void addKonto(Konto k) { - konten.put(k.getKontonummer(), k); - } - - public String getName() { - return name; - } - - public Collection getKontenliste() { - return konten.values(); - } - -} +package de.hs_mannheim.informatik.bank.domain; + +import java.util.Collection; +import java.util.HashMap; + +public class Bank { + private String name; + private HashMap konten = new HashMap<>(); + + public Bank(String name) { + this.name = name; + } + + public void addKonto(Konto k) { + konten.put(k.getKontonummer(), k); + } + + public String getName() { + return name; + } + + public Collection getKontenliste() { + return konten.values(); + } + +} diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Konto.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Konto.java index 654d503..ad86b3f 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Konto.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/Konto.java @@ -1,24 +1,45 @@ -package de.hs_mannheim.informatik.bank.domain; - -public class Konto { - private static int kontozähler = 0; - - private int nummer; - private long stand = 0; - private String inhaber; - - public Konto(String inhaber) { - nummer = 1000 + kontozähler++; - this.inhaber = inhaber; - } - - public int getKontonummer() { - return nummer; - } - - @Override - public String toString() { - return "Konto [nummer=" + nummer + ", inhaber=" + inhaber + "]"; - } - -} +package de.hs_mannheim.informatik.bank.domain; + +public class Konto { + private static int kontozähler = 0; + + private int nummer; + private long stand = 0; + private String inhaber; + + public Konto(String inhaber) { + nummer = 1000 + kontozähler++; + this.inhaber = inhaber; + } + + public int getKontonummer() { + return nummer; + } + + public void geldEinzahlen(long betrag) { + if(betrag<= 0) + throw new IllegalArgumentException("Vorgang abgebrochen."); + + stand+= betrag; + } + + public void geldAuszahlen(long betrag) { + if(betrag<= 0) + throw new IllegalArgumentException("Vorgang abgebrochen."); + + stand-=betrag; + + } + + public long getKontoStand(long stand) { + return stand; + } + + + + @Override + public String toString() { + return "Konto [nummer=" + nummer + ", inhaber=" + inhaber + " Kontostand= "+ stand +"]"; + } + +} \ No newline at end of file diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/KontoAuszug.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/KontoAuszug.java new file mode 100644 index 0000000..20cbc1a --- /dev/null +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/domain/KontoAuszug.java @@ -0,0 +1,16 @@ +package de.hs_mannheim.informatik.bank.domain; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; + +public class KontoAuszug { + + + ArrayList auszug = new ArrayList(); + + + + + +} diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java index 821c2a9..572ce24 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java @@ -1,37 +1,74 @@ -package de.hs_mannheim.informatik.bank.facade; - -import java.util.Collection; - -import de.hs_mannheim.informatik.bank.domain.Bank; -import de.hs_mannheim.informatik.bank.domain.Konto; - -public class Banksystem { - private Bank bank; - - public Banksystem(String bankname) { - this.bank = new Bank(bankname); - } - - public int kontoAnlegen(String name) { - Konto k = new Konto(name); - bank.addKonto(k); - - return k.getKontonummer(); - } - - public String[] getKontenliste() { - Collection konten = bank.getKontenliste(); - String[] liste = new String[konten.size()]; - - int i = 0; - for (Konto k : konten) { - liste[i++] = k.toString(); - } - - return liste; - } - - public String getBankname() { - return bank.getName(); - } -} +package de.hs_mannheim.informatik.bank.facade; + +import java.util.Collection; + +import de.hs_mannheim.informatik.bank.domain.Bank; +import de.hs_mannheim.informatik.bank.domain.Konto; + +public class Banksystem { + private Bank bank; + + public Banksystem(String bankname) { + this.bank = new Bank(bankname); + } + + public int kontoAnlegen(String name) { + Konto k = new Konto(name); + bank.addKonto(k); + + return k.getKontonummer(); + } + + public String[] getKontenliste() { + Collection konten = bank.getKontenliste(); + String[] liste = new String[konten.size()]; + + int i = 0; + for (Konto k : konten) { + liste[i++] = k.toString(); + } + + return liste; + } + + public double geldEinzahlen(int kontonummer, long betrag) { + + long ende = 0; + + Collection konten = bank.getKontenliste(); + for (Konto k : konten) { + + if (k.getKontonummer() == kontonummer) { + + k.geldEinzahlen(betrag); + + + ende =k.getKontoStand(betrag); + + } + } + return ende; + + } + + public double geldAuszahlen(int kontonummer, long betrag) { + + long schluss = 0; + + Collection konten = bank.getKontenliste(); + + for(Konto k: konten) { + + if(k.getKontonummer()== kontonummer) { + + schluss = k.getKontoStand(betrag); + } + } + + return schluss; + } + + public String getBankname() { + return bank.getName(); + } +} diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/ui/UI.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/ui/UI.java index d6eb6e9..017ca80 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/ui/UI.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/ui/UI.java @@ -1,64 +1,139 @@ -package de.hs_mannheim.informatik.bank.ui; - -import java.util.Scanner; - -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("1 -> Konten anzeigen"); - System.out.println("2 -> Konto anlegen"); - System.out.println("9 -> Beenden"); - System.out.println(); - - System.out.print("> "); - int input = Integer.parseInt(sc.nextLine()); - System.out.println(); - - switch(input) { - case 1: kontenAnzeigen(); break; - case 2: kontoAnlegen(); break; - case 9: break mainloop; - } - } - - System.out.println("Auf Wiedersehen!"); - - } // hauptmenü - - private void kontenAnzeigen() { - String[] konten = bs.getKontenliste(); - if (konten.length > 0) { - System.out.println("Folgende Konten sind aktuell verfügbar:"); - for (String s : konten) { - System.out.println(s); - } - } else { - System.out.println("Bisher keine Konten angelegt."); - } - } - - private void kontoAnlegen() { - System.out.println("Bitte den Namen des Kontoinhabers angeben: "); - String name = sc.nextLine(); - - int kontonummer = bs.kontoAnlegen(name); - System.out.println("Konto mit der Nummer " + kontonummer + " neu angelegt."); - } - -} +package de.hs_mannheim.informatik.bank.ui; + +import java.util.Scanner; + +import de.hs_mannheim.informatik.bank.domain.Konto; +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("1 -> Konten anzeigen"); + System.out.println("2 -> Konto anlegen"); + System.out.println("3 -> Geld einzahlen"); + System.out.println("4 -> Konto anzeigen mit der Kontonummer"); + System.out.println("5 -> Geld auzahlen"); + System.out.println("6 -> Kontoauszug anzeigen"); + System.out.println("9 -> Beenden"); + System.out.println(); + + System.out.print("> "); + int input = Integer.parseInt(sc.nextLine()); + System.out.println(); + + switch (input) { + case 1: + kontenAnzeigen(); + break; + case 2: + kontoAnlegen(); + break; + case 3: + geldEinzahlen(); + break; + case 4: + KontonummerAnzeigen(); + break; + case 5: + geldAuszahlen(); + break; + case 6: + kontoAuszugAnzeigen(); + break; + case 9: + break mainloop; + } + } + + System.out.println("Auf Wiedersehen!"); + + } // hauptmenü + + private void kontenAnzeigen() { + String[] konten = bs.getKontenliste(); + if (konten.length > 0) { + System.out.println("Folgende Konten sind aktuell verfügbar:"); + for (String s : konten) { + System.out.println(s); + } + } else { + System.out.println("Bisher keine Konten angelegt."); + } + } + + private void kontoAnlegen() { + System.out.println("Bitte den Namen des Kontoinhabers angeben: "); + String name = sc.nextLine(); + + int kontonummer = bs.kontoAnlegen(name); + System.out.println("Konto mit der Nummer " + kontonummer + " neu angelegt."); + } + + private void geldEinzahlen() { + + System.out.println("Bitte geben sie ihre Kontonummer an"); + int kontonummer = Integer.parseInt(sc.nextLine()); + System.out.println("Bitte geben sie den Gelbetrag den sie einzahelen möchten ein:"); + long betrag = Long.parseLong(sc.nextLine()); + System.out.println(); + + long kontoStand = (long) bs.geldEinzahlen(kontonummer, betrag); + + System.out.println("Der neue Kontostand beträgt: " + kontoStand); + } + + private void KontonummerAnzeigen() { + + System.out.println("Bitte geben sie ihre Kontonummer an:"); + String kontonummer = sc.nextLine(); + + String[] konten = bs.getKontenliste(); + + for (String nummer : konten) { + + if (nummer.equals(kontonummer)) + ; + + System.out.println(nummer); + } + } + + private void geldAuszahlen() { + + System.out.println("Bitte geben sie ihre Kontonummer ein:"); + int kontonummer = Integer.parseInt(sc.nextLine()); + System.out.println("Biite geben sie den betrag den sie abheben möchten an:"); + long betrag = Long.parseLong(sc.nextLine()); + System.out.println(); + + long kontoStand = (long) bs.geldAuszahlen(kontonummer, betrag); + + System.out.println("Der neue Kontostand beträgt :" + kontoStand); + } + + private void kontoAuszugAnzeigen() { + + System.out.println("Bitte geben sie ihre Kontonummer ein:"); + int kontonummer = Integer.parseInt(sc.nextLine()); + System.out.println(); + + + + + + } + +} \ No newline at end of file