PR2-Demo-Repo/PR2GitDemo/src/defaultt/TUI.java

100 lines
3.0 KiB
Java

package defaultt;
import java.text.SimpleDateFormat;
import java.time.*;
import java.util.*;
import java.text.SimpleDateFormat;
import java.time.format.DateTimeFormatter;
public class TUI extends Parkhaus{
static Scanner sc = new Scanner(System.in);
public static void main(String[] args){
}
public static void start() {
while(true) {
System.out.println();
System.out.println("(1) Einfahren");
System.out.println("(2) Ausfahren ohne zu zahlen");
System.out.println("(3) Bezahlung");
System.out.println("(4) Parkhausinformationen");
System.out.println("(5) Zahlungsgeschichte");
System.out.println("(6) Beenden");
System.out.print("Eingabe: ");
int nutzerEingabe = sc.nextInt();
sc.nextLine();
switch (nutzerEingabe) {
case 1:
String kennzeichenEin = kennzeichenEingabe();
LocalDateTime einfahrtsZeit = zeitEingabe();
Parkhaus.einfahrt(kennzeichenEin, einfahrtsZeit);
System.out.println("Kennzeichen " + kennzeichenEin + " eingefahren um " + einfahrtsZeit);
for(Auto a : geparkteAutos) {
}
break;
case 2:
String kennzeichenAus = kennzeichenEingabe();
LocalDateTime ausfahrtsZeit = zeitEingabe();
Parkhaus.ausfahrt(kennzeichenAus, ausfahrtsZeit);
System.out.println("Kennzeichen " + kennzeichenAus + " ausgefahren um " + ausfahrtsZeit);
break;
case 3:
String[] zahlungsDaten = zahlungStart();
Parkhaus.zahlung(zahlungsDaten);
System.out.println("Kennzeichen " + zahlungsDaten[0] + " hat gezahlt um " + zahlungsDaten[1]);
break;
case 4:
auflisten();
break;
case 5:
Parkhaus.zahlungen();
case 6:
return;
}
}
}
public static String kennzeichenEingabe() {
System.out.print("Geben Sie ihr Kennzeichen ein: ");
String kennzeichenString = sc.nextLine();
return kennzeichenString;
}
public static LocalDateTime zeitEingabe() {
System.out.print("Geben Sie die Uhrzeit ein (DD.MM.YYYY HH:MM): ");
String uhrzeitEingabe = sc.nextLine();
if (uhrzeitEingabe.trim().isEmpty()) {
return LocalDateTime.now();
}
return LocalDateTime.parse(uhrzeitEingabe, DateTimeFormatter.ofPattern("dd.MM.yyyy HH:mm"));
}
private static String[] zahlungStart() {
String kennzeichenZahlung = kennzeichenEingabe();
LocalDateTime bezahlZeit = zeitEingabe();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy HH:mm");
String zeitAlsString = bezahlZeit.format(formatter);
String[] zahlungsDaten = {kennzeichenZahlung, zeitAlsString};
return zahlungsDaten;
}
public static void auflisten(){
int count = geparkteAutos.size();
for(Auto a : geparkteAutos){
System.out.println(" ");
System.out.println("Autos im Parkhaus: " + count);
System.out.println("Kennzeichen: " + a.findeKennzeichen());
System.out.println("Einfahrtsdatum und Uhrzeit: " + a.findeEinfahrtUhrzeit());
System.out.println("Schulden " + a.findeSchulden());
System.out.println("E-Auto: " + a.istEAuto());
System.out.println(" ");
count--;
}
}
}