Temporärer Artikel / Zusatzbetrag addieren

Hallo zusammen, um eine komplexere Preisberechnung abzubilden, müssen wir einen temporären Zusatzartikel mit dem berechneten Zusatzbetrag bzw. für den Orginal-Artikel (welchen der Kunde also kaufen möchte) einen berechneten Zusatzbetrag addieren können. Hat hier jemand bereits eine elegante Lösung gefunden? Viele Grüße, Rafael Kutscha

Sorry, habe es nicht versanden. Du möchtest den Preis eines vorhandenen Artikels manipulieren?

Hallo, grundsätzlich würde es ausreichen den Preis ab dem Warenkorb zu verändern. Alternativ könnte dies durch einen temporären Artikel sichergestellt werden, in dem ich mir den berechneten Preis merke. Hintergrund sind die Staffelpreise von Zubehör bei Konfiguratorartikeln. Wenn ein Kunde den Artikel A 500 mal kauft plus 500 x Artikel Z1 (Zubehörartikel 1, hat Staffelpreise) so muss der Artikel Z1 als gesonderte Position in den Warenkorb, wenn der Kunde ein zweites Mal den Artikel Z1 in den Warenkorb legt. Es darf also nicht passieren, dass hier einfach nur die Menge von Z1 im Warenkorb erhöht wird, damit die jeweils passenden Staffelpreise verwendet werden.

Gehe mal in die engine/core/class/sBasket.php und kommentiere mal folgendes aus: if ($chkBasketForArticle&&empty($sUpPriceValues)){ // Article is already in basket, update quantity $quantity += $chkBasketForArticle["quantity"]; $this-\>sUpdateArticle($chkBasketForArticle["id"],$quantity); return $chkBasketForArticle["id"]; }else { und ein bisschen weiter darunter dieses hier auskommentieren: } // If - Article is not in basket Das verhindert eigentlich genau das, nämlich dass einfach die Menge im Warenkorb erhöht wird. Jetzt wird der Artikel nochmal in den Warenkorb als einzelne Position gelegt.

1 „Gefällt mir“

Danke! Das ist genau die Basis die ich für meine Logik benötige. Zusätzlich werde ich im Warenkorb über ein noch freies DB-Feld die zu einander gehörenden Artikel verknüpfen. Somit kann ich diese Artikel dann in der Warenkorb-Klasse als “Einheit” behandeln.