我正在使用集合在Magento中手动构建报告,我正在尝试使用订单完成日期而不是订单创建日期。
我目前的代码是:
$orders = Mage::getModel('sales/order')->getCollection()
->addAttributeToFilter('created_at', array('from'=>$fromDate, 'to'=>$toDate))
->addAttributeToFilter('status', array('eq' => Mage_Sales_Model_Order::STATE_COMPLETE))
->addAttributeToFilter('store_id', array('eq' => 2));
我发现了以下问题:用户建议手动记录每个订单的所有状态更改。
Finding out when an order status has been set to completed
由于我想在集合中使用它,我不相信这是一种合适的方式,我也有点期望在Magento中可以访问这类信息。
谢谢,
答案 0 :(得分:7)
您可以检索订单状态历史记录更新的集合:
$collection = Mage::getResourceModel('sales/order_status_history_collection')
->addAttributeToSelect('created_at', 'parent_id')
->addAttributeToFilter('status', array('eq'=>'complete'))
->load();
之后,您可以迭代$ collection并提取parent_id和created_at以获取所需的信息。