Вопрос

Я хочу показать «дату создания» заказа в:

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_Info или Mage_Sales_Model_Order_Payment (который расширяет генеракодицетагCode)

Дата создания, которую вы хотите получить, это дата создания фактического заказа на продажу, но вы пытаетесь получить его из информационной модели.

Если вы позвоните Mage_Payment_Model_Info, то это должно работать.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с magento.stackexchange
scroll top