0

HI I am developing an API where I faced a challenge in my cart listing api, I need to apply cart rule and add it in quote and need to update quote accordingly.

The Problem here is my quote do get updated but on 2nd refresh. I mean when I try to hit the Api first time the rule doesnt get applies but after second time I refresh the Api, the quote gets updated and refreshes it.

I am not sure whether my cart rule was not being applied or not but I tried and debugged the code and found out rule was being applied but I think quote is not being updated.

Any reason why this happens. Below is my code snippet which I tried but couldnt achieve the desired result.

if($firstOrder == 1)
        {
            $cartResult1 = $this->quoteRepository->getActiveForCustomer($customerId);
            $quote = $this->quoteRepository->get($cartResult1['quote']['id']);
            $this->customerCondition->setData('customer_first_order', $firstOrder);
            $quote->collectTotals();
            $quote->setCustomerId($customerId);
            $quote->save();
            //echo json_encode($quote->getData()); die;
            $cartResult = $this->quoteRepository->getActiveForCustomer($customerId);
            //print_r(json_encode($cartResult['quote'])); die;
        }

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.