Իմ խնդիրն այն է, որ երբ փորձում եմ զեղչ կիրառել վճարումից պատվերի վրա, այն կկիրառի ճիշտ ընդհանուր զեղչը magento-ի ադմինիստրատորի պատվերի էջի ներքևում, բայց տողերի ապրանքները ցույց են տալիս $0 զեղչ:
Օրինակ, ենթադրենք, որ ես ակցիա ունեմ 50% ամեն ինչի համար, և ինչ-որ մեկը գնում է 2 ապրանք, Apple-ը $10-ով և Orange-ը $5-ով, զամբյուղի ընդհանուր գումարը կկազմի 15 - 50% = $7,50, ինչն արդեն տեղի է ունենում, բայց հետո, երբ նայում եք տողին. երկու ապրանքների զեղչը սահմանված է $0, որտեղ այն պետք է լինի. խնձորի քանակ. 1 գին $10 զեղչ $5 ընդհանուր $5 նարնջագույն քանակ. ահա իմ կոդը.
$couponCode = (string) $this->getRequest()->getParam('coupon_code');
if ($this->getRequest()->getParam('remove') == 1) {
$couponCode = '';
}
$oldCouponCode = $this->_getQuote()->getCouponCode();
if (!strlen($couponCode) && !strlen($oldCouponCode)) {
$this->_goBack();
return;
}
try {
$this->_getQuote()->getShippingAddress()->setCollectShippingRates(true);
$this->_getQuote()->setCouponCode(strlen($couponCode) ? $couponCode : '')
->collectTotals()
->save();
if ($couponCode) {
if ($couponCode == $this->_getQuote()->getCouponCode()) {
$this->_getSession()->addSuccess(
$this->__('Coupon code "%s" was applied.', Mage::helper('core')->htmlspecialchars($couponCode))
);
}
else {
$this->_getSession()->addError(
$this->__('Coupon code "%s" is not valid.', Mage::helper('core')->htmlspecialchars($couponCode))
);
}
} else {
$this->_getSession()->addSuccess($this->__('Coupon code was canceled.'));
}
echo $this->_getReviewHtml();
exit;