Online_schop/Bestellung.java

44 lines
1.4 KiB
Java

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
public class Bestellung {
private Warenkorb warenkorb;
private float versandkosten;
private LocalDateTime bestellDatum;
public Bestellung(Warenkorb warenkorb, float versandkosten) {
if (warenkorb == null) {
throw new IllegalArgumentException("Warenkorb darf nicht null sein.");
}
if (versandkosten < 0) {
throw new IllegalArgumentException("Versandkosten dürfen nicht negativ sein.");
}
this.warenkorb = warenkorb;
this.versandkosten = versandkosten;
this.bestellDatum = LocalDateTime.now(); // Bestelldatum setzen
}
public Warenkorb getWarenkorb() {
return warenkorb;
}
public float getVersandkosten() {
return versandkosten;
}
public LocalDateTime getBestellDatum() {
return bestellDatum;
}
public float berechneGesamtpreis() {
return warenkorb.berechneGesamtPreis() + versandkosten;
}
@Override
public String toString() {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy HH:mm:ss");
return String.format("Bestellung am %s:\n%sVersandkosten: %.2f Euro\nGesamtpreis: %.2f Euro",
bestellDatum.format(formatter), warenkorb.toString(), versandkosten, berechneGesamtpreis());
}
}