在我的网站上有一个数量为500的产品(例如),如果用户订购了600个数量的付款必须处理可用,剩余的100个数量必须在股票利用后获得支付。目前用户只能支付500个数量。
当前观察员代码(不工作):
public function myfucn($observer){
$data = $observer->getEvent()->getOrder();
$id = '40';
$qty = 600;
$_product = Mage::getModel('catalog/product')->load($id);
$cart = Mage::getModel('checkout/cart');
$cart->init();
$cart->addProduct($_product, array('qty' => $qty));
$cart->save();
Mage::getSingleton('checkout/session')->setCartWasUpdated(true);}
的Config.xml
<modules>
<Ajt_PlaceOrder>
<version>0.0.1</version>
</Ajt_PlaceOrder>
</modules>
<global>
<models>
<placeprder>
<class>PlaceOrder_Model</class>
</placeprder>
</models>
<events>
<sales_quote_save_before>
<observers>
<ajt_placeorder_model_observer>
<class>Ajt_PlaceOrder_Model_Observer</class>
<method>mymethod</method>
</ajt_placeorder_model_observer>
</observers>
</sales_quote_save_before>
</events>
</global>
上面的观察者代码我试图将产品添加到购物车。但是如果你有解决方案在下订单之前更新已经存在的商品的数量,请指导我。