Qualifier_Teil_2_Parkhaus/ParkhausController

97 lines
2.2 KiB
Plaintext

package pr2parkhaus;
import java.util.Scanner;
import java.util.Date;
public class ParkhausController {
private Parkhaus parkhaus;
private String tarife;
Scanner in = new Scanner(System.in);
public ParkhausController() {
this.parkhaus = new Parkhaus(180);
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.");
}
public void Einfahrt() {
//Erfassen der Daten
System.out.println("Ihr Nummernschild: ");
String nummernschild = parkhaus.nummernschildErkennen();
System.out.println("Ihre Einfahrtszeit: ");
Date einfahrtszeit = parkhaus.zeitErkennen();
//Auto ins Parkhaus System aufnehmen
System.out.println("Geparkt auf Platznummer: " + parkhaus.autoParken(nummernschild, einfahrtszeit));
}
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);
System.out.println("Möchten Sie diese Gebuehr jetzt bezahlen? (ja/nein)");
String auswahl = in.nextLine();
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;
case "nein":
parkhaus.merkeSchulden(nummernschild, gebührInCent); // Schulden speichern
break;
}
}
public String getTarife() {
return tarife;
}
public void setTarife(String tarife) {
this.tarife = tarife;
}
}