From 5eaf8853bfc7fb305a51cdd6d49554793a347c98 Mon Sep 17 00:00:00 2001 From: Oliver Hummel Date: Tue, 23 Apr 2024 15:33:32 +0200 Subject: [PATCH] Initialer Commit --- ImmoMApp/.gitignore | 3 ++ ImmoMApp/.settings/.gitignore | 1 + ImmoMApp/src/domain/Mietgesuch.java | 30 +++++++++++++++++ ImmoMApp/src/facade/ImmoMApp.java | 28 ++++++++++++++++ ImmoMApp/src/tui/MainMenu.java | 51 +++++++++++++++++++++++++++++ ImmoMApp/src/tui/MietgesucheUI.java | 48 +++++++++++++++++++++++++++ 6 files changed, 161 insertions(+) create mode 100644 ImmoMApp/.gitignore create mode 100644 ImmoMApp/.settings/.gitignore create mode 100644 ImmoMApp/src/domain/Mietgesuch.java create mode 100644 ImmoMApp/src/facade/ImmoMApp.java create mode 100644 ImmoMApp/src/tui/MainMenu.java create mode 100644 ImmoMApp/src/tui/MietgesucheUI.java diff --git a/ImmoMApp/.gitignore b/ImmoMApp/.gitignore new file mode 100644 index 0000000..3eaf567 --- /dev/null +++ b/ImmoMApp/.gitignore @@ -0,0 +1,3 @@ +/bin/ +/.classpath +/.project diff --git a/ImmoMApp/.settings/.gitignore b/ImmoMApp/.settings/.gitignore new file mode 100644 index 0000000..b012ade --- /dev/null +++ b/ImmoMApp/.settings/.gitignore @@ -0,0 +1 @@ +/org.eclipse.core.resources.prefs diff --git a/ImmoMApp/src/domain/Mietgesuch.java b/ImmoMApp/src/domain/Mietgesuch.java new file mode 100644 index 0000000..05069ef --- /dev/null +++ b/ImmoMApp/src/domain/Mietgesuch.java @@ -0,0 +1,30 @@ +package domain; + +public class Mietgesuch { + private int zimmer; + private int größe; + private int miete; + private String ort; + private String text; + + // hier Daten zum Mietinteressenten später vielleicht ähnlich zum Vermieter -> Person-Klasse? + private String mail; + // private String name; + // private String telefonnummer + + public Mietgesuch(int zimmer, int größe, int miete, String ort, String text, String mail) { + this.zimmer = zimmer; + this.größe = größe; + this.miete = miete; + this.ort = ort; + this.text = text; + this.mail = mail; + } + + @Override + public String toString() { + return "Mietgesuch [zimmer=" + zimmer + ", größe=" + größe + ", miete=" + miete + ", ort=" + ort + ", text=" + + text + ", mail=" + mail + "]"; + } + +} diff --git a/ImmoMApp/src/facade/ImmoMApp.java b/ImmoMApp/src/facade/ImmoMApp.java new file mode 100644 index 0000000..feddaf9 --- /dev/null +++ b/ImmoMApp/src/facade/ImmoMApp.java @@ -0,0 +1,28 @@ +package facade; + +import java.util.ArrayList; + +import domain.Mietgesuch; + +public class ImmoMApp { + private ArrayList mietgesuche; + + public ImmoMApp() { + mietgesuche = new ArrayList<>(); + } + + public void mietgesuchAnlegen(int zimmer, int größe, int miete, String ort, String text, String mail) { + mietgesuche.add(new Mietgesuch(zimmer, größe, miete, ort, text, mail)); + } + + public String[] mietgesucheAbfragen() { + String[] mietgesuchTexte = new String[mietgesuche.size()]; + + for (int i = 0; i < mietgesuche.size(); i++) { + mietgesuchTexte[i] = mietgesuche.get(i).toString(); + } + + return mietgesuchTexte; + } + +} diff --git a/ImmoMApp/src/tui/MainMenu.java b/ImmoMApp/src/tui/MainMenu.java new file mode 100644 index 0000000..9632bc0 --- /dev/null +++ b/ImmoMApp/src/tui/MainMenu.java @@ -0,0 +1,51 @@ +package tui; + +import java.util.Scanner; + +import facade.ImmoMApp; + +public class MainMenu { + private ImmoMApp app; + private MietgesucheUI mgui; + static Scanner kb = new Scanner(System.in); + + public static void main(String[] args) { + new MainMenu(); + } + + public MainMenu() { + app = new ImmoMApp(); + mgui = new MietgesucheUI(app); + + menüAnzeigen(); + } + + public void menüAnzeigen() { + System.out.println("Willkommen bei ImmoMApp!"); + System.out.println(); + + boolean exit = false; + do { + System.out.println("Hauptmenü ImmoMApp"); + System.out.println("1) Mietgesuch anlegen"); + System.out.println("2) Mietgesuche ansehen"); + + System.out.println("9) Exit"); + + System.out.println(); + System.out.print("> "); + String input = kb.nextLine(); + + switch (input) { + case "1" -> mgui.datenEingeben(); + case "2" -> mgui.mietgesucheAnzeigen(); + case "9" -> exit = true; + } + + System.out.println(); + } while(!exit); + + System.out.println("Auf Wiedersehen!"); + } + +} diff --git a/ImmoMApp/src/tui/MietgesucheUI.java b/ImmoMApp/src/tui/MietgesucheUI.java new file mode 100644 index 0000000..57d1b23 --- /dev/null +++ b/ImmoMApp/src/tui/MietgesucheUI.java @@ -0,0 +1,48 @@ +package tui; + +import facade.ImmoMApp; + +public class MietgesucheUI { + ImmoMApp app; + + public MietgesucheUI(ImmoMApp app) { + this.app = app; + } + + public void datenEingeben() { + System.out.println("Bitte Daten für das Mietgesuch eingeben."); + System.out.println(); + + System.out.println("Zimmeranzahl (+ Küche und Bad): "); + int zimmer = Integer.parseInt(MainMenu.kb.nextLine()); + + System.out.println("Wunschgröße (qm): "); + int größe = Integer.parseInt(MainMenu.kb.nextLine()); + + System.out.println("Miete (EUR): "); + int miete = Integer.parseInt(MainMenu.kb.nextLine()); + + System.out.println("Ort: "); + String ort = MainMenu.kb.nextLine(); + + System.out.println("Beschreibung: "); + String text = MainMenu.kb.nextLine(); + + System.out.println("Ihre Mail-Adresse: "); + String mail = MainMenu.kb.nextLine(); + + app.mietgesuchAnlegen(zimmer, größe, miete, ort, text, mail); + + System.out.println("Vielen Dank, Mietgesuch abgespeichert."); + } + + public void mietgesucheAnzeigen() { + System.out.println("Übersicht der Mietgesuche"); + + String[] mietgesuche = app.mietgesucheAbfragen(); // TODO hier später noch Suchparameter angeben + + for (String s : mietgesuche) { + System.out.println(s); + } + } +} \ No newline at end of file