注文内にバックオーダーされているすべてのアイテムを表示しますか?
-
12-12-2019 - |
質問
Magento EE 1.9を使用すると、バックローダーが有効になっていますが、販売/順序グリッドビューのバックオーダー付きアイテムが含まれているかどうかを確認する方法はありません。
注文が行われた後にアイテムがバックオーダー化されたかどうかを確認しますか?
(コードベースの解決策が大丈夫です。)
解決
このようなもの:
$items = array();
$order = Mage::getModel('sales/order')->load($orderId);
$orderItems = $order->getAllVisibleItems();
foreach ($orderItems as $orderItem) {
$sumBackordered = 0;
$children = array();
if ($orderItem->getHasChildren()) {
foreach ($orderItem->getChildrenItems() as $childItem) {
$sumBackordered += (float)$childItem->getQtyBackordered();
$children[] = array(
'name' => $childItem->getName(),
'qty_backordered' => (float)$childItem->getQtyBackordered()
);
}
}
$items[] = array(
'name' => $orderItem->getName(),
'qty_backordered' => $orderItem->getHasChildren() ? $sumBackordered : (float)$orderItem->getQtyBackordered(),
'children' => $orderItem->getHasChildren() ? $children : null
);
}
Zend_Debug::dump($items);
. 所属していません magento.stackexchange