A cart price rule is set in the magento ,so when an order is being prepared in an extension a rule is applied on the quote due to which a discount is applied on the final order,I don't want to remove the cart rule,but need to change make some changes in the extension while generating quote,so that no cart-rule can get applied on the final order.
Already Tried
quote->setAppliedRuleIds(' ')
quote->setcouponcode(' ')
quote->setDiscount('0')
removed quote->collecttotal->save()
Discount is getting applied on the final price of the order
Try This One :
After Preparing Quote And Before Submitting To Get Order Object
try {
// Override CartPrice Rules On Quote :
$quote->setCouponCode('');
$quote->setAppliedRuleIds('');
// end
$quote->collectTotals()->save();
// Setting Discount on items :
foreach ($quote->getAllItems() as $item) {
$item->setDiscountAmount(0);
$item->setBaseDiscountAmount(0);
$item->save();
}
// end
// Submitting Quote To get Order Object
/** @var \Magento\Quote\Api\CartManagementInterface */
$order = $this->cartManagementInterface->submit($quote);
// end
// Override CartPrice Rules On Order :
$order->setCouponCode('');
$order->setAppliedRuleIds('');
// end
// Setting Discount Amount on Order
$order->setDiscountAmount(0);
$order->setBaseDiscountAmount(0);
// end
$order->save();
} catch (\Exception $exception) {
// Silence Or Log The Error/Exception
}
Click on 'Kudos' & Accept as Solution to encourage to write more answers !