PR2_3015836/TUI

104 lines
2.8 KiB
Plaintext

package ph;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
public class TUI {
public static void main(String[] args) throws ParseException, InterruptedException {
Scanner scanner=new Scanner(System.in);
System.out.println("Ich nehme als Beispiel an, dass es 180 freie Plätze gibt");
boolean run =true;
System.out.print("Einfahrt(dd.MM.yyyy,HH:mm): ");
String Einfahrt=scanner.nextLine();
System.out.print("Ausfahrt(dd.MM.yyyy,HH:mm): ");
String Ausfahrt=scanner.nextLine();
Date einfahrt=mainZeitformat(Einfahrt);
Date ausfahrt=mainZeitformat(Ausfahrt);
System.out.println("Geben Sie ihr Kennzeichen ein");
String kz=scanner.nextLine();
AUTO time=new AUTO(kz,180,0.0,einfahrt,ausfahrt);
while(run) {
System.out.println("Parkhaus");
System.out.println("1. Einfahren.");
System.out.println("2. Ausfahren.");
System.out.println("3. Zahlen.");
System.out.println("4. Parksimulator.");
System.out.println("5. Beenden");
int wahl=scanner.nextInt();
scanner.nextLine();
if(wahl<0 && wahl>5) {
System.err.println("Falsche Eingabe.");
}
switch(wahl){
case 1:{
time.einfahren();
System.out.println("Einen schönen Tag noch.");
break;
}
case 2:{
time.ausfahren();
break;
}
case 3:{
System.out.println("Geben Sie eine VISA Kartennummer ein");
String visa=scanner.nextLine();
time.cardlength(visa);
time.validCard(visa);
time.pay();
System.out.println("Dankeschön");
break;
}
case 4:{
System.out.println("Geben Sie Einfahrt und Ausfahrt ein");
System.out.print("Einfahrt: ");
String simulate1=scanner.nextLine();
System.out.print("Ausfahrt: ");
String simulate2=scanner.nextLine();
Date simein=time.Zeitformat(simulate1);
Date simaus=time.Zeitformat(simulate2);
AUTO simulate=new AUTO(simein,simaus);
System.out.println("Ist ihr Auto ein E-Auto (j/n)");
String jn=scanner.nextLine();
boolean eAuto;
if(jn.equals("j")) {
eAuto=true;
}else {
eAuto=false;
}
double kosten=simulate.parkgebuehren(eAuto);
System.out.println("Kosten: "+kosten);
break;
}
case 5:{
System.out.println("Und Tschüss");
run=false;
break;
}
}
}
scanner.close();
}
public static Date mainZeitformat(String datum) throws ParseException {
if (datum.isEmpty()) {
Date aktuellesDatum = new Date();
System.out.println("Aktuelles Datum: " + aktuellesDatum);
return aktuellesDatum;
}
String pattern = "dd.MM.yyyy,HH:mm";
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
try {
Date formatiertesDatum = sdf.parse(datum);
return formatiertesDatum;
} catch (ParseException e) {
System.err.println("Ungültiges Datumsformat. Bitte verwenden Sie das Format");
return new Date();
}
}
}