Observer to remove all cart items based on a condition

Sometimes when we submit a quote we may need to reset the cart with clearing all submitted quote fields, So we need to use an event

<event name="sales_quote_remove_item">

Observer code to remove all items


        $quote = $this->checkoutSession->getQuote();
        $request=$this->cart->getQuote()->getRequestQuoteId();
        if($request>0){
            $this->cart->getQuote()->setRequestQuoteId(null);
            $this->cart->save();
            $logger->info($request);
            $cartItems = $this->cart->getItems();
            foreach ($cartItems as $item)
            {
                $quote->removeItem($item->getId())->save();
            }
        }

Repos must be added in the observer to get the data

Leave a comment

Your email address will not be published. Required fields are marked *