From 45105f342636673b71b8166f5ab2b5dda92ec3e2 Mon Sep 17 00:00:00 2001 From: dustineversmann Date: Wed, 2 Oct 2024 11:53:21 +0200 Subject: [PATCH] berechnen der Parkzeit --- src/main/java/de/deversmann/Parkhaus.java | 41 +++++++++++++++++------ 1 file changed, 31 insertions(+), 10 deletions(-) diff --git a/src/main/java/de/deversmann/Parkhaus.java b/src/main/java/de/deversmann/Parkhaus.java index f6add5e..8046bba 100644 --- a/src/main/java/de/deversmann/Parkhaus.java +++ b/src/main/java/de/deversmann/Parkhaus.java @@ -1,22 +1,18 @@ package de.deversmann; - +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.time.Duration; +import java.util.Date; public class Parkhaus { - + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd.MM.yyyy, HH:mm"); private boolean geöffnet; private int anzahlParkplätze; - - public int getBelegteParkplätze() { - return belegteParkplätze; - } - - public void setBelegteParkplätze(int belegteParkplätze) { - this.belegteParkplätze = belegteParkplätze; - } + private int parkdauer; private int belegteParkplätze; private double kosten; @@ -67,5 +63,30 @@ public class Parkhaus { this.maxTagessatz = maxTagessatz; } + public int getBelegteParkplätze() { + return belegteParkplätze; + } + + public void setBelegteParkplätze(int belegteParkplätze) { + this.belegteParkplätze = belegteParkplätze; + } + + + public String berechneParkdauer(String einfahrtZeit, String ausfahrZeit){ + String dauer = ""; + try { + Date einfahrtZeitDate = simpleDateFormat.parse(einfahrtZeit); + Date ausfahrZeitDate = simpleDateFormat.parse(ausfahrZeit); + Duration duration = Duration.ofMillis(Math.abs(ausfahrZeitDate.getTime()-einfahrtZeitDate.getTime())); + long days = duration.toDays(); + long hours = duration.toHours() % 24; + long minutes = duration.toMinutes() % 60; + dauer = "Parkdauer:" + days + " Tage " + hours + " Stunden " + minutes + " Minuten "; + } catch (ParseException e) { + System.out.println("Fehler beim Parsen der Daten"+ e.getMessage()); + } + + return dauer; + } }