2013-10-14 4 views
1

Я использовал это для создания плагина http://www.silksoftware.com/magento-module-creator/, он работает отлично, и итоговая сумма отображается правильно; Но когда пользователи платят, не видите эту сумму, включенную в это;Magento некорректная сумма при оплате

Можете ли вы сообщить мне, что может быть неправильным?

Спасибо!

Total screenshot

Вы можете видеть, что итоги будут добавлены в итоге, но когда пользователи платят они не видят сумму на возвращаемый/Loss депозит; Вот почему он по-прежнему поступает как должное.

+0

какая сумма? отсутствуют налоги? доставка отсутствует? Мы не можем читать ваши мысли – Soundz

+0

Я создал модуль выше указанной ссылки; Это обычная сумма; Я загружаю pic в свой пост; –

+1

вы не можете создать модуль сверху данной ссылки, я имею в виду, что это просто скелет (файлы и папки), а не реальное рабочее расширение с бизнес-логикой внутри –

ответ

1

Я нашел проблему; Он исходит из сгенерированного расширения от silksoftware;

Если у вас есть аналогичная проблема; открыть файл в этом каталоге

/WWW/приложение/код/​​местные/Компания/ExtraFee/Model/Order/счета/Total

и заменить эту строку

$DepositTotal = $order->getDepositTotal(); 
if ($DepositTotal&&count($order->getInvoiceCollection())==0) { 

с

$orderDepositTotal= $order->getDepositTotal(); 
if ($orderDepositTotal&&count($order->getInvoiceCollection())==0) { 

:)

Спасибо, ребята, за помощь: p Я закончил тем, что отлаживал его сам и чувствовал прет ty good: p

<?php 
    class Comapny_ExtraFee_Model_Order_Invoice_Total_Deposit 
    extends Mage_Sales_Model_Order_Invoice_Total_Abstract 
    { 
      public function collect(Mage_Sales_Model_Order_Invoice $invoice) 
     { 
     $order=$invoice->getOrder(); 
    $DepositTotal = $order->getDepositTotal(); 
    if ($DepositTotal&&count($order->getInvoiceCollection())==0) { 
     $invoice->setGrandTotal($invoice->getGrandTotal()+$orderDepositTotal); 
     $invoice->setBaseGrandTotal($invoice->getBaseGrandTotal()+$orderDepositTotal); 
    } 
    return $this; 
} 
    }