如何获得Magento订单中装运的商品数量?

时间:2014-02-27 20:43:52

标签: php magento model-view-controller

我想获得以Magento订单发货的商品数量。例如,一个人订购10件物品。 4已发货。在这种情况下,我想获得4号,然后与第二批货物中的其余6件物品结合使用。检查4 + 6是否等于物品总数10,如果第二批运输批次全部运出6,则将订单状态更改为完成。如果没有,请更改为“部分装运”。

1 个答案:

答案 0 :(得分:4)

$order = Mage::getModel('sales/order')->load($orderId);
$total_ordered_items = $order->getData('total_qty_ordered');
$num_of_shipped_items = 0;

foreach ($order->getAllVisibleItems() as $item){
   //$item->getQtyOrdered() // Number of item ordered
   $num_of_shipped_items += $item->getQtyShipped();  
   //$item->getQtyInvoiced()
}

if($num_of_shipped_items == $total_ordered_items){
    // set status to complete
}
else{
    // Partial 
}