我需要在下订单时停止减少库存, 只有在成功付款后我才需要执行此活动。以编程方式停止减少库存数量,同时在magento中下订单
5
A
回答
6
是的,我们可以禁用这个数量减少务实
如何?
扩展Mage_Checkout_Model_Type_Onepage和重写方法saveOrder
变化
在上述方法中下面的行之前,将围绕#740至#742
$service = Mage::getModel('sales/service_quote', $this->getQuote());
$service->submitAll();
添加
$quote = $this->getQuote();
# Ref: Mage_CatalogInventory_Model_Observer::subtractQuoteInventory
$quote->setInventoryProcessed(true);
这将通知Magento的是不处理库存的报价,所以它不会减少数量,即使它被配置这样做。
5
0
你可以只禁用库存管理在管理,除非有您需要做特别的理由这条路?
你可以设置一个观测到成功的付款后添加到数量: 您可以在这里获得Magento的事件列表中,您可以连接到:http://www.nicksays.co.uk/magento_events_cheat_sheet/
<events>
<sales_order_payment_pay>
<observers>
<my_observer>
<type>singleton</type>
<class>my/observer</class>
<method>addQty</method>
</my_observer>
</observers>
</sales_order_payment_pay>
</events>
然后你的观察者会加数量回来..
<?php
class Company_My_Model_Observer
{
public function addQty($event)
{
$order = $event->getInvoice()->getOrder(); // Mage_Sales_Model_Order
$items = $order->getAllVisibleItems();
foreach($items as $item) {
$qty = $item->getQtyOrdered(); // Amount to add back on
$product = Mage::getModel('catalog/product')->load($item->getProductId());
/**
* Here you would load the product and add this amount back on
*/
}
return $this;
}
}
这可能不会按原样工作,但你明白了。您需要注意magento和付款类型事件,因为不同的付款模块可以稍微不同地处理这些事件。
+0
嗨,谢谢你的回复。 我实际上有三个网站在我的magento安装 所以我不想更改股票期权配置,因为我需要此配置为其他网站。 我需要编程方式停止下降数量,当下订单。 –
1
对于谁想要找到有关的订货减法的详细信息任何人,只需要在这两个Magento的EE/CE
sales_model_service_quote_submit_before
相关问题
- 1. 产品数量库存在订单下降时不会减少
- 2. 下订单时减少数量
- 3. 如何在Magento中取消订单时停止添加库存
- 4. Flash以编程方式减少行数
- 5. 库存数量未在magento中下订单后更新
- 6. 以编程方式在Magento中创建订单
- 7. Magento:以编程方式创建Magento订单
- 8. 以编程方式将Magento 1订单导入Magento 2网站
- 9. Magento - 以编程方式重新订购
- 10. Magento 1.8减少挂单的库存
- 11. 在画布中减少停止变量
- 12. Magento以编程方式编辑订单付款
- 13. Magento:以编程方式创建订单中的问题
- 14. Java - 在内存不足时以编程方式减少应用程序负载
- 15. 以编程方式暂停/停止MediaPlayer Android在给定时间
- 16. 使用wget以编程方式停止/暂停下载
- 17. 以编程方式更改现有订单中的Magento送货方式
- 18. Magento如何以编程方式发送订单?
- 19. 如何以编程方式将订单导入Magento?
- 20. 如何以编程方式标记订单失败 - Magento
- 21. Magento - 区分正常订单和以编程方式创建的订单
- 22. 编程方式创建出货(对选定的项目/订单数量)在Magento
- 23. 当我以编程方式创建订单时,未在magento中发送订单电子邮件
- 24. Magento以可编程的方式通过可下载的产品创建订单
- 25. Magento:订购代码后产品库存减少?
- 26. 如何以编程方式停止java.util.logging?
- 27. 以编程方式停止导航
- 28. 以编程方式停止请求
- 29. 如何以编程方式停止ServletRequestListener?
- 30. 以编程方式停止PlayFramework作业
非常感谢!有用 ! –
@Manaf PM,@ Bijeesh K G这没有为我工作....我使用的任何其他解决方案授权.net支付模块,并不想减少付款失败时的数量... – ravisoni