구입 한 Downlodable 제품 ID에서 주문 ID를 얻으십시오
-
13-12-2019 - |
문제
구입 한 Downlodable 제품에서 주문 ID를 어떻게 얻을 수 있습니까?
아래 코드를 확인하십시오 :
$purchased = Mage::getResourceModel('downloadable/link_purchased_collection')
->addFieldToFilter('customer_id', $customer_id)
->addOrder('created_at', 'desc');
$purchasedItems = Mage::getResourceModel('downloadable/link_purchased_item_collection')
->addFieldToFilter('purchased_id', array('in' => $purchasedIds))
->addFieldToFilter('status',
array(
'nin' => array(
Mage_Downloadable_Model_Link_Purchased_Item::LINK_STATUS_PENDING_PAYMENT,
Mage_Downloadable_Model_Link_Purchased_Item::LINK_STATUS_PAYMENT_REVIEW
)
)
)
->setOrder('item_id', 'desc');
foreach ($items as $item)
{
-- Here I wand to get Order id of each items ---
}
. 해결책
이것은 루프에로드가 포함되어 있지만 아무것도 아닌 것보다 낫습니다.
foreach ($items as $item)
{
$orderItemId = $item->getOrderItemId();
$orderItem = Mage::getModel('sales/order_item')->load($orderItemId);
$orderId = $orderItem->getOrderId();//this is what you need
}
. 다른 팁
간단한 쿼리가 당신을 위해 쉽게 작동하는 것을 쉽게 작동한다고 생각합니다
$readConnection = Mage::getSingleton('core/resource')->getConnection('core_read');
$sfoi = Mage::getSingleton("core/resource")->getTableName('sales_flat_order_item');
foreach ($items as $item)
{
$itemId=$item->getId();
$query="SELECT order_id FROM $sfoi WHERE item_id=$itemId";
$results = $readConnection->fetchAll($query);
$orderId=$results[0]['order_id'];
}
. 제휴하지 않습니다 magento.stackexchange