Конвертируйте бонусные баллы в купоны на скидку во время оформления заказа


Я интегрировал расширение, которое вознаграждает клиента некоторыми кредитными баллами, когда он возвращает какой-либо товар. Эти точки назначаются только из серверной части.

Теперь клиент может использовать эти Кредитные баллы во время любой покупки. Но в случае, если Общая сумма Заказа превышает Кредитный лимит, то клиент вынужден выбрать какой-либо другой способ оплаты.

Но вместо этого я хочу конвертировать эти кредитные баллы в купон на скидку и позволить клиенту чтобы разместить заказ. Как я могу это реализовать??

Любая помощь будет признательна. Я использую следующее расширение: http://www.magentocommerce.com/magento-connect/credit-point-payment-4321.html

Author: Helly, 2013-12-16

1 answers

Я думаю, что вы создаете свой модуль, и вы должны предоставить скидку в качестве кода купона.

Найдите в своем модуле NameSpace/ModuleName/Model/Quote/Address/Total/Discount.php Файл или вы можете найти этот файл в папке Mage/core.Найдите в этом метод ниже.

public function collect(Mage_Sales_Model_Quote_Address $address)
{
     parent :: collect($address);
     $items = $this->_getAddressItems($address);
     if (!count($items)) {
        return $this;
     }
     $quote= $address->getQuote();

     //amount definition
     /*
     You have to give discount as a coupons so you have to create one method in your 
     data.php file and called as below.in that file you have to create the logic for 
     the coupen and assign hear it will add to your Total. 
     */
     $discountAmount =  Mage::helper('creditpoints')->calculateDiscount();

     //amount definition
     $discountAmount = $quote -> getStore() -> roundPrice($discountAmount);
     $this -> _setAmount($discountAmount) -> _setBaseAmount($discountAmount);
     $address->setData('discount_total',$discountAmount);

     return $this;
 }
 1
Author: Keyul Shah, 2013-12-16 09:24:04