Domanda

Voglio mostrare "Data di creazione" di un ordine in:

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

Al momento sto usando questo codice:

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;
    }
}
.

La linea che non funziona è questa:

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

Al momento dà NULL, ma mi aspetto di restituire la data di creazione personalizzata dell'ordine (in formato yyyy-mm-dd hh: mm: ss).Quando utilizzo Mage::getModel('sales/order')->getCollection()->getFirstItem(); $order->getCreatedAt(); restituisce il primo creato alla data del primo ordine, ma ne ho bisogno per l'ordine selezionato.

Qualcuno ha idea di ciò che è sbagliato?

È stato utile?

Soluzione

$info terrà un'istanza di Mage_Payment_Model_Info o Mage_Sales_Model_Order_Payment (che si estende Mage_Payment_Model_Info)

La data di creazione che si desidera ottenere è la data di creazione dell'ordine di vendita effettivo, ma si sta tentando di ottenerlo dal modello di informazioni.

Se chiameresti $info->getOrder()->getCreatedAt(), allora dovrebbe funzionare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top