我想显示订单的"创建日期":

Sales -> Orders -> User -> Information -> Payment methods

目前我正在使用此代码:

class Company_Module_Block_Info extends Mage_Payment_Block_Info
{
    protected function _prepareSpecificInformation($transport = null)
    {
        if (null !== $this->_paymentSpecificInformation) {
            return $this->_paymentSpecificInformation;
        }

        $info = $this->getInfo();
        //Zend_Debug::dump($info); //List with created_at date

        $transport = new Varien_Object();
        $transport = parent::_prepareSpecificInformation($transport);
        $transport->addData(array(
            Mage::helper('payment')->__('Expiration date') => $info->getExpireDate(),
            Mage::helper('sales')->__('Creation date') => $info->getCreatedAt(),
            Mage::helper('payment')->__('Picked up by') => $info->getPickupCustomer()
        ));

        return $transport;
    }
}

不起作用的线是这条:

Mage::helper('sales')->__('Creation date') => $info->getCreatedAt(),

此刻它给 NULL, ,但我期望返回订单的自定义创建日期(格式为yyyy-mm-dd hh:mm:ss)。当我使用 Mage::getModel('sales/order')->getCollection()->getFirstItem(); $order->getCreatedAt(); 它返回第一个订单的日期创建的第一个订单,但我需要它为选定的订单。

有人知道什么是错的吗?

有帮助吗?

解决方案

$info 将持有的实例 Mage_Payment_Model_InfoMage_Sales_Model_Order_Payment (其中延伸 Mage_Payment_Model_Info)

您想要获取的创建日期是实际销售订单的创建日期,但您正在尝试从info模型中获取它。

如果你愿意打电话 $info->getOrder()->getCreatedAt() 那就行了。

许可以下: CC-BY-SA归因
scroll top