SaleschannelContext RuleIds ist leer

Hallo,

ich versuche manuell ein SaleschannelContext zu erstellen:

$this->salesChannelContext = $this->salesChannelContextFactory->create(
                    Uuid::randomHex(),
                    $customer->getSalesChannelId(),
                    [
                        SalesChannelContextService::CUSTOMER_ID => $customer->getId(),
                        SalesChannelContextService::LANGUAGE_ID => $customer->getSalesChannel()->getLanguageId(),
                        SalesChannelContextService::CUSTOMER_GROUP_ID => $customer->getGroupId(),
                        SalesChannelContextService::PERMISSIONS => self::ADMIN_EDIT_ORDER_PERMISSIONS
                    ]
                );

Aber die RuleIds sind null. Gäbe es einen Weg, dass ich die hinbekommen könnte?
Das bräuchte ich für die Produktpreise.

Danke im Vorab!

Könntest du nicht den SalesChannelContextRestorer verwenden, um anhand der Customer ID einen SalesChsbbelContext zu erstellen?
Bin der Meinung, dass die Rule IDs dann auch gefüllt werden.

Vielen Dank!
Deine Antwort hat mir sehr weitergeholfen.

Wüsstet Du vllt, was passieren würde, wenn die Regeln zwischenzeitlich geändert würden?

Naja kann dir auch nur sagen, dass die eigentlichen Regeln während der Zeit halt nicht angewendet werden können.
Hier ist es aber wichtig, wo du die Regeln ändern willst, denke ich. Denn z. B. der CartProzessor wird mehrmals durchlaufen. Daher müsste deine Änderung für alle CartProzessoren gelten.

1 „Gefällt mir“