【发布时间】:2016-03-11 11:15:55
【问题描述】:
我必须创建一个扩展,其中当购物车中允许的最小数量 > 库存时,其设置的购物车中允许的最小数量 = 数量。
事件在保存订单后生效。
我的代码如下:
public function updateminqtynew(Varien_Event_Observer $observer)
{
$quote = $observer->getEvent()->getOrder();
$orderIncrementId = $quote->getIncrementId();
$order = Mage::getModel('sales/order')->loadByIncrementId($orderIncrementId);
$items = $order->getAllItems();
$itemcount=count($items);
foreach ($items as $itemId => $item)
{
$sku = $item->getSku();
$_Pdetails = Mage::getModel('catalog/product')->loadByAttribute('sku',$sku);
$stock = Mage::getModel('cataloginventory/stock_item')->loadByProduct($_Pdetails->getId());
$minqty = $stock->getMinSaleQty();
$allqty = $stock->getQty();
// Mage::log("minqty".$_Pdetails->getId().round($minqty), null, 'logfileif.log');
//Mage::log("allqty".round($allqty), null, 'logfileif.log');
if(intval($minqty)>intval($allqty))
{
Mage::log("if working", null, 'logfileif.log');
$stock->setMinSaleQty($allqty);
$stock->setQtyIncrements($stock->getQty());
$stock->save();
Mage::log("save", null, 'logfileif.log');
}
else
{
//Mage::log("NO", null, 'logfileif.log');
}
}
}
值在日志文件中打印,但在数据库中不更新。
【问题讨论】:
标签: magento