Warenkorb Klasse hinzugefügt
parent
5c876888f1
commit
d30521e9a2
|
@ -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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue