2017-02-06 26 views
1

我想爲現有的prestashop網站添加每個訂單2歐元的固定稅額。我已經將它添加到客戶端的每一步,直到我無法完成的最後一步:將固定稅額添加到prestashop訂單

我想要修改的文件是「modules/bankwire/views/templates/hook/payment_return.tpl」在我這一行:

{l s='Amount' mod='bankwire'}: <span class="price"><strong>{$total_to_pay}</strong> 

如果我改變以往的行:

{l s='Amount' mod='bankwire'}: <span class="price"><strong>{$total_to_pay+2}</strong> 

我最終顯示的價格呈圓形,並且沒有出現€符號(例如,如果我的總價格是54.50€ ,當我加2歐元時,它變成了56而不是56,50€)

我該如何管理它?

感謝

+0

更改模板只對您沒有任何好處。當客戶下訂單時,稅款將不會按順序計算。 – TheDrot

回答

1

$total_to_pay是bankwire模塊定義的格式的價格( 「€56,90」,而不是 「56.90」):

public function hookPaymentReturn($params) 
{ 
    if (!$this->active) 
     return; 

    $state = $params['objOrder']->getCurrentState(); 
    if (in_array($state, array(Configuration::get('PS_OS_BANKWIRE'), Configuration::get('PS_OS_OUTOFSTOCK'), Configuration::get('PS_OS_OUTOFSTOCK_UNPAID')))) 
    { 
     $this->smarty->assign(array(
      'total_to_pay' => Tools::displayPrice($params['total_to_pay'], $params['currencyObj'], false), 
      'bankwireDetails' => Tools::nl2br($this->details), 
      'bankwireAddress' => Tools::nl2br($this->address), 
      'bankwireOwner' => $this->owner, 
      'status' => 'ok', 
      'id_order' => $params['objOrder']->id 
     )); 
     if (isset($params['objOrder']->reference) && !empty($params['objOrder']->reference)) 
      $this->smarty->assign('reference', $params['objOrder']->reference); 
    } 
    else 
     $this->smarty->assign('status', 'failed'); 
    return $this->display(__FILE__, 'payment_return.tpl'); 
} 

你可以得到的價格像這樣使用訂單對象:

{displayPrice price=$objOrder->getOrdersTotalPaid()} 
相關問題