Сделайте так, чтобы creditmemo отображал отрицательные цены


В creditmemo все цены отображаются в виде положительных сумм, чтобы сделать разницу между счетом-фактурой и creditmemo более понятной, я хотел бы отобразить цены в виде отрицательных значений. Есть ли способ показать отрицательные цены на кредитные карты?

Author: Vladimir Kerkhoff, 2013-07-04

1 answers

Хороший способ:

Перепишите метод базового класса Mage_Directory_Model_Currency formatTxt с помощью этого кода:

public function formatTxt($price, $options=array())
    {
        $price = parent::formatTxt($price,$options);
        if ( Mage::app()->getRequest()->getControllerName() == "sales_order_creditmemo" ) {
            return "-".$price;
        }
        return $price;
    }

credit_memo_negative-display-prices

Более грязный способ:

Если вы просто хотите, чтобы это было визуальное (отображаемое) изменение, вы можете просто отредактировать файлы .phtml и поместить - перед выводом цены.

Вам нужно будет отредактировать много мест в файле и несколько файлов (creditmemo, пакеты, загружаемые файлы, настраиваемые файлы - у меня в голове) - см., Например adminhtml/по умолчанию/по умолчанию/шаблон/продажи/заказ/creditmemo/просмотр/товары/визуализатор/по умолчанию.phtml

РЕДАКТИРОВАТЬ: Я обновил процедуру, чтобы сначала фактически вызвать родительский метод ядра, таким образом, вы сохраняете функциональность ядра (если и когда основной код изменится при любых обновлениях)

 5
Author: ProxiBlue, 2013-08-13 22:28:52