Warenkorb Klasse hinzugefügt

main
elarturo 2024-10-22 10:44:52 +02:00
parent 5c876888f1
commit d30521e9a2
1 changed files with 56 additions and 0 deletions

View File

@ -0,0 +1,56 @@
package de.hs_mannheim.informatik.domain;
import java.util.HashMap;
public class Warenkorb {
private final HashMap<Produkt, Integer> produktanzahl = new HashMap<>();
public HashMap<Produkt, Integer> getProduktanzahl() {
return produktanzahl;
}
public void produktHinzufuegen(Produkt produkt, int anzahl) {
produktanzahl.put(produkt, anzahl);
}
public double gewichtBerechnen() {
double finalesGewicht = 0;
for (Produkt produkt : produktanzahl.keySet()) {
int anzahl = produktanzahl.get(produkt);
double gewicht = produkt.getGewicht() * anzahl;
finalesGewicht += gewicht;
}
return finalesGewicht;
}
public double preisBerechnen() {
double finalerPreis = 0;
for (Produkt produkt : produktanzahl.keySet()) {
int anzahl = produktanzahl.get(produkt);
double preis = produkt.getPreis() * anzahl;
finalerPreis += preis;
}
return finalerPreis;
}
public double versandkostenBerechnen() {
// Berechne das Gesamtgewicht des Warenkorbs
double gesamtgewicht = 0;
for (Produkt produkt : produktanzahl.keySet()) {
int anzahl = produktanzahl.get(produkt);
gesamtgewicht += produkt.getGewicht() * anzahl; // Gewicht * Anzahl der Produkte
}
// Versandkosten basierend auf dem Gesamtgewicht
if (gesamtgewicht <= 1000) { // Bis zu 1kg
return 5.0;
} else if (gesamtgewicht <= 2500) { // Bis zu 2,5kg
return 8.0;
} else { // Über 2,5kg
return 10.0;
}
}
}