diff --git a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ByPercent.php b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ByPercent.php index 836e1fc8956dc..f4e1d18e22029 100644 --- a/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ByPercent.php +++ b/app/code/Magento/SalesRule/Model/Rule/Action/Discount/ByPercent.php @@ -1,7 +1,7 @@ validator->getItemBaseOriginalPrice($item); $_rulePct = $rulePercent / 100; - $discountData->setAmount(($qty * $itemPrice - $item->getDiscountAmount()) * $_rulePct); - $discountData->setBaseAmount(($qty * $baseItemPrice - $item->getBaseDiscountAmount()) * $_rulePct); - $discountData->setOriginalAmount(($qty * $itemOriginalPrice - $item->getDiscountAmount()) * $_rulePct); + $discountData->setAmount($this->priceCurrency->round(($qty * $itemPrice - $item->getDiscountAmount()) * $_rulePct)); + $discountData->setBaseAmount($this->priceCurrency->round(($qty * $baseItemPrice - $item->getBaseDiscountAmount()) * $_rulePct)); + $discountData->setOriginalAmount($this->priceCurrency->round(($qty * $itemOriginalPrice - $item->getDiscountAmount()) * $_rulePct)); $discountData->setBaseOriginalAmount( - ($qty * $baseItemOriginalPrice - $item->getBaseDiscountAmount()) * $_rulePct + $this->priceCurrency->round(($qty * $baseItemOriginalPrice - $item->getBaseDiscountAmount()) * $_rulePct) ); if (!$rule->getDiscountQty() || $rule->getDiscountQty() >= $qty) {