2016-03-23 5 views
1

Привет, у меня есть атрибут, который вычисляет маржу продукта во всех наборах атрибутов. Вопрос в том, как я могу установить правило, чтобы предотвратить проверку клиента, если маржа (или прибыль) корзины меньше требуемой?Magento margin/profit rules, чтобы разрешить или запретить проверку

+0

Я голосующий, чтобы закрыть этот вопрос как не по теме, потому что Stack Overflow - это [связанный с программированием] (http://stackoverflow.com/help/on-topic) сайт Q & A. Ваш вопрос не в программировании. Возможно, вам стоит разместить его на http://magento.stackexchange.com? – Enigmativity

ответ

1

Вы можете создать observer для события controller_action_predispatch_checkout_onepage_index - это сработает, когда клиент начнет процесс проверки одной страницы.

Это может быть достигнуто, как это в вашем модулей config.xml:

 <events> 
     <controller_action_predispatch_checkout_onepage_index> 
      <observers> 
       <YOUR_MODULE_checkout_onepage_index> 
        <type>singleton</type> 
        <class>YOUR_MODULE_Model_Observer</class> 
        <method>calculateProductMargin</method> 
       </YOUR_MODULE_checkout_onepage_index> 
      </observers> 
     </controller_action_predispatch_checkout_onepage_index> 
    </events> 

Если вы не знаете о том, как создать модуль затем look here

Так что в вашем приложения/код/​​местные/ВАШ/МОДУЛЬ/Модель/Observer.php:

class YOUR_MODULE_Model_Observer extends Varien_Event_Observer { 
    public function setStore($observer) { 

     // Your logic here 
    } 
} 

здесь вы можете $cart = Mage::getModel('checkout/cart')->getQuote(); и перебрать товары по корзине, рассчитать маржу вашего продукта и _goBack() потенциально, если это не соответствует вашим требованиям.

Наслаждайтесь! Надеюсь, это поможет.

+0

P.s. [Это отличный cheatsheet] (https://www.nicksays.co.uk/magento-events-cheat-sheet-1-7/) для любых будущих событий, которые вы, возможно, захотите наблюдать! –

 Смежные вопросы

  • Нет связанных вопросов^_^