Du kannst in Shopware eigene Bedingungen und Berechnungen in den Versandkosten hinterlegen. Verwende hierzu das Feld Eigene Berechnung im Tab Erweiterte Einstellungen in den Versandkosten-Details.
Um beispielsweise deine Versandkosten nach Gewicht zu berechnen, würdest du im Shopware Standard im Feld Eigene Berechnung folgende Abfrage verwenden:
IF(
SUM(b.quantity * d.weight) > 30,
9.95,
4.95
)
Da das Modul die Werte des Artikels auf der Datenbank verwendet, ist dieser für die Stückliste nicht korrekt und deine Abfrage muss angepasst werden. Ersetze daher
b.quantity * d.weight
durch folgendes:
b.quantity *
CASE WHEN (at.viison_setarticle_active = 1)
THEN (
SELECT SUM(sad.weight * savs.quantity)
FROM s_articles_details sad
LEFT JOIN s_articles_viison_setarticles savs ON savs.articledetailid = sad.id
WHERE savs.setid = d.id
)
ELSE d.weight
END