quoteRepository = $quoteRepository; $this->checkoutSession = $checkoutSession; } /** * Update store id in active quote after store view switching. * * @param StoreCookieManagerInterface $subject * @param null $result * @param StoreInterface $store * @return void * @SuppressWarnings(PHPMD.UnusedFormalParameter) */ public function afterSetStoreCookie( StoreCookieManagerInterface $subject, $result, StoreInterface $store ) { $storeCodeFromCookie = $subject->getStoreCodeFromCookie(); if (null === $storeCodeFromCookie) { return; } $quote = $this->checkoutSession->getQuote(); if ($quote->getIsActive() && $store->getCode() != $storeCodeFromCookie) { $quote->setStoreId( $store->getId() ); $this->quoteRepository->save($quote); } } }