From 7edcdce39ac18250c818f9fad746629968ca2f44 Mon Sep 17 00:00:00 2001 From: Marc3308 Date: Tue, 8 Oct 2024 08:09:45 +0200 Subject: [PATCH] Einfahrt vertigstellung --- src/main/java/org/example/Main.java | 15 ++++++-- .../java/org/example/optionen/einfahren.java | 37 ++++++++++++++++++- .../org/example/optionen/informationen.java | 8 ++++ 3 files changed, 56 insertions(+), 4 deletions(-) create mode 100644 src/main/java/org/example/optionen/informationen.java diff --git a/src/main/java/org/example/Main.java b/src/main/java/org/example/Main.java index c8044fb..a18d30e 100644 --- a/src/main/java/org/example/Main.java +++ b/src/main/java/org/example/Main.java @@ -2,29 +2,37 @@ package org.example; import org.example.ticketobjekt.parkticket; +import java.text.ParseException; +import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Random; import java.util.Scanner; import static org.example.optionen.ausfahren.rausfahren; import static org.example.optionen.bezahlen.ticketbezahlen; import static org.example.optionen.einfahren.farzeugfährtein; +import static org.example.optionen.informationen.invouberlale; public class Main { //sachen die ich brauche - private static final Scanner scanner = new Scanner(System.in); + public static final Scanner scanner = new Scanner(System.in); + + public static final Random rand = new Random(); + public static final SimpleDateFormat timeformat = new SimpleDateFormat("dd.MM.yyyy, HH:mm"); public static ArrayList tiketliste=new ArrayList<>(); public static ArrayList unbezahlteticketliste=new ArrayList<>(); - public static void main(String[] args) { + public static void main(String[] args) throws ParseException { //schleife um das program am laufen zu halten while (true){ //auswahl System.out.println(" Willkommen im Parkhaus"); - System.out.println(" 1: Einfahren"); + System.out.println(" 1: Einfahren ("+(180-tiketliste.size())+" Freie Plätze)"); System.out.println(" 2: Parkgebühren Bezahlen"); System.out.println(" 3: Ausfahren"); + System.out.println(" 4: Informationen"); System.out.println(" B: Beenden"); String input=scanner.nextLine(); @@ -32,6 +40,7 @@ public class Main { case "1" -> farzeugfährtein(); case "2" -> ticketbezahlen(); case "3" -> rausfahren(); + case "4" -> invouberlale(); case "B" -> { System.out.println("Hoffe es wahren keine weiteren tickets offen"); return; diff --git a/src/main/java/org/example/optionen/einfahren.java b/src/main/java/org/example/optionen/einfahren.java index ba35897..75ac637 100644 --- a/src/main/java/org/example/optionen/einfahren.java +++ b/src/main/java/org/example/optionen/einfahren.java @@ -1,10 +1,45 @@ package org.example.optionen; +import org.example.ticketobjekt.parkticket; + +import java.text.ParseException; +import java.util.Date; + +import static org.example.Main.*; + public class einfahren { - public static void farzeugfährtein(){ + public static void farzeugfährtein() throws ParseException { + + //wenn voll dann voll + if(tiketliste.size()>180)return; + + //get kennzeichen + System.out.println("Bitte geben sie ihr kenzeichen ein (leer für zufälliges Kenzeichen)"); + String kenzeichen=scanner.nextLine(); + + String kennzeichen = kenzeichen.isEmpty() + ? rand.nextBoolean() + ? randombuchstabe()+randombuchstabe() + "-" + randombuchstabe()+randombuchstabe() + " " + (rand.nextInt(9000) + 1000)+"E" + : randombuchstabe()+randombuchstabe() + "-" + randombuchstabe()+randombuchstabe() + " " + (rand.nextInt(9000) + 1000) + : kenzeichen; + + System.out.print("Bitte geben sie die einfahtszeit ein (dd.MM.yyyy, HH:mm) (leer für aktuelle Zeit): "); + String zeitstempelEingabe = scanner.nextLine(); + Date einfahrZeit = zeitstempelEingabe.isEmpty() ? new Date() : timeformat.parse(zeitstempelEingabe); + + tiketliste.add(new parkticket(kennzeichen,einfahrZeit)); + + System.out.println("Auto: "+kennzeichen); + System.out.println("Einfahtszeit: "+einfahrZeit); } + public static String randombuchstabe(){ + String buchstabe=""; + buchstabe= String.valueOf((char) (rand.nextInt(26) + 'A')); + return buchstabe; + } + } diff --git a/src/main/java/org/example/optionen/informationen.java b/src/main/java/org/example/optionen/informationen.java new file mode 100644 index 0000000..e75eeaf --- /dev/null +++ b/src/main/java/org/example/optionen/informationen.java @@ -0,0 +1,8 @@ +package org.example.optionen; + +public class informationen { + + public static void invouberlale(){ + + } +}