2024-10-06 11:08:24 +02:00
|
|
|
package pr2parkhaus;
|
|
|
|
|
2024-10-07 09:55:19 +02:00
|
|
|
import java.util.Scanner;
|
|
|
|
|
2024-10-06 11:08:24 +02:00
|
|
|
import java.util.Date;
|
|
|
|
|
|
|
|
|
|
|
|
public class ParkhausController {
|
|
|
|
|
|
|
|
private Parkhaus parkhaus;
|
|
|
|
|
2024-10-07 09:55:19 +02:00
|
|
|
private String tarife;
|
|
|
|
|
|
|
|
Scanner in = new Scanner(System.in);
|
|
|
|
|
2024-10-06 11:08:24 +02:00
|
|
|
|
|
|
|
public ParkhausController() {
|
|
|
|
|
|
|
|
this.parkhaus = new Parkhaus(180);
|
|
|
|
|
2024-10-07 09:55:19 +02:00
|
|
|
this.setTarife("Die ersten 15 min Parken sind kostenfrei.\r\n"
|
|
|
|
+ "Jede angefangene Stunde kostet 1 Euro, die erste Stunde beginnt erst nach den freien 15 min.\r\n"
|
|
|
|
+ "Zwischen 20 und 6 Uhr kostet das Parken maximal 5 Euro. \r\n"
|
|
|
|
+ "Der Preis ist pro Tag auf 15 Euro gedeckelt.\r\n"
|
|
|
|
+ "E-Autos erhalten 20% Rabatt.");
|
|
|
|
|
2024-10-06 11:08:24 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
public void Einfahrt() {
|
|
|
|
|
2024-10-07 09:55:19 +02:00
|
|
|
//Erfassen der Daten
|
2024-10-06 11:08:24 +02:00
|
|
|
System.out.println("Ihr Nummernschild: ");
|
2024-10-07 09:55:19 +02:00
|
|
|
String nummernschild = parkhaus.nummernschildErkennen();
|
2024-10-06 11:08:24 +02:00
|
|
|
System.out.println("Ihre Einfahrtszeit: ");
|
2024-10-07 09:55:19 +02:00
|
|
|
Date einfahrtszeit = parkhaus.zeitErkennen();
|
2024-10-06 11:08:24 +02:00
|
|
|
|
2024-10-07 09:55:19 +02:00
|
|
|
//Auto ins Parkhaus System aufnehmen
|
|
|
|
System.out.println("Geparkt auf Platznummer: " + parkhaus.autoParken(nummernschild, einfahrtszeit));
|
2024-10-06 11:08:24 +02:00
|
|
|
|
|
|
|
}
|
|
|
|
|
2024-10-07 09:55:19 +02:00
|
|
|
public void Ausfahrt() {
|
|
|
|
|
|
|
|
double gebührInCent;
|
|
|
|
String kreditkarte = null;
|
|
|
|
|
|
|
|
//Erfassen der Daten
|
|
|
|
System.out.println("Ihr Nummernschild: ");
|
|
|
|
String nummernschild = parkhaus.nummernschildErkennen();
|
|
|
|
System.out.println("Ihre Ausfahrtszeit: ");
|
|
|
|
Date ausfahrtszeit = parkhaus.zeitErkennen();
|
|
|
|
|
|
|
|
gebührInCent = parkhaus.parkhausVerlassen(nummernschild, ausfahrtszeit); //Berechnen der Gebühr
|
|
|
|
|
|
|
|
System.out.println("Ihre Gebühr in Cent beträgt: " + gebührInCent);
|
|
|
|
|
2024-10-08 10:17:01 +02:00
|
|
|
System.out.println("Möchten Sie diese Gebuehr jetzt bezahlen? (ja/nein)");
|
2024-10-07 09:55:19 +02:00
|
|
|
|
2024-10-08 10:17:01 +02:00
|
|
|
String auswahl = in.nextLine();
|
2024-10-07 09:55:19 +02:00
|
|
|
|
2024-10-08 10:17:01 +02:00
|
|
|
switch (auswahl) {
|
|
|
|
case "ja":
|
|
|
|
|
|
|
|
System.out.println("Bitte geben Sie Ihre Kreditkartennummer ein: ");
|
|
|
|
|
|
|
|
kreditkarte = in.nextLine();
|
|
|
|
int l = kreditkarte.length();
|
|
|
|
|
|
|
|
|
|
|
|
if (l == 16) {
|
|
|
|
System.out.println("Stüss, gute Fahrt!");
|
|
|
|
} else {
|
|
|
|
System.out.println("Falsche Eingabe");
|
|
|
|
}
|
|
|
|
break;
|
2024-10-07 09:55:19 +02:00
|
|
|
|
2024-10-08 10:17:01 +02:00
|
|
|
case "nein":
|
|
|
|
|
|
|
|
parkhaus.merkeSchulden(nummernschild, gebührInCent); // Schulden speichern
|
|
|
|
|
|
|
|
break;
|
2024-10-07 09:55:19 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
public String getTarife() {
|
|
|
|
return tarife;
|
|
|
|
}
|
|
|
|
|
|
|
|
public void setTarife(String tarife) {
|
|
|
|
this.tarife = tarife;
|
|
|
|
}
|
|
|
|
|
2024-10-06 11:08:24 +02:00
|
|
|
|
|
|
|
}
|
2024-10-08 10:17:01 +02:00
|
|
|
|