2012-02-06 94 views
1

我已經創建了新的付款方式(網關)。在這個網關我發送信息到銀行的信用付款,我使用一些額外的支付選項,如名稱/人年齡/人利潤/信貸期限/ ...Magento付款信息塊

通過此字段我計算信用期限併發送所有這些數據去銀行。

我想在付款方式信息塊(默認主題的右側欄)中顯示此信息,但我不希望將此字段保存到數據庫(所以在管理員區域後面我會有像它是標準支票/匯票付款和只是付款方式的名稱將是另一個)

我無法在付款方式信息塊中顯示此字段,因爲它只顯示存儲在數據庫中的字段,只有我發現的方式 - 將此數據存儲在覈心/會話,然後在信息塊檢索此數據回

我在付款模式中做這樣的事情:

class OS_LacPayCS_Model_Payment extends Mage_Payment_Model_Method_Abstract 
{ 
... 
public function assignData($data) 
{ 
    parent::assignData($data); 
    $session = Mage::getSingleton('core/session'); 
    $session->setData('payment_additional', $data); 
    return $this; 
} 
... 
} 

,然後得到它

class OS_LacPayCS_Block_Payment_Info extends Mage_Payment_Block_Info 
{ 
... 
public function getPaymentInfo() 
{ 
    $session = Mage::getSingleton('core/session'); 
    return $session->getData('payment_additional'); 
} 
... 
} 

是否有另一種方式來獲得這些數據?

而且我希望在結帳時在訂單審閱選項卡中添加一些額外的行,如何添加它們而不用重寫審閱模板和塊?

感謝名單

回答

2

Magento的支付API定義保存爲序列化數組DB additional_information的領域,而且可以用於存儲數據時,你可能需要顯示。你可以通過assignData($ data)方法設置數據到那裏