Получить остаток к оплате

Автор Kirik1982, 30 июля 2017, 22:33:46

« назад - далее »

Kirik1982

Добрый день. Подскажите как получить остаток к оплате Престашоп 1.6 . Формула Итого - предоплата. Не могу реализовать. Подскажите пожалуйста

Миколас

Какая формула? Одна переменная минус вторая равно третья.

Kirik1982

Код примера у вас есть у меня не получается?

Kirik1982

#3
Правлю AdminOrdersController.php
Выводим так
$remainder = здесь что?

$this->fields_list[$remainder]  = array(
'title' => $this->l('Остаток к оплате'),
'align' => 'left',
);

Adik

'название переменной' => array(
        'title' => $this->l('Текст заголовка'),
        'align' => 'выравниванье',
        'type' => 'тип переменной',
        'orderby' => 'сортировка',
        'callback' => 'функция обратного вызова'
),

Kirik1982

Как сумму посчитать двух массивов???

DarinSr

Массивы можно объединить функцией array_merge или сложить.
$result = $array1 + $array2;

Kirik1982

Пробовал. Выводит пустое поле.

PrestaMan

Цитата: Kirik1982 от 31 июля 2017, 10:24:46
Как сумму посчитать двух массивов???
Для вывода разницы цены нужно высчитывать разницу между 2-мя переменными, а не массивами.
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!

Kirik1982

Вы пример можете показать. Я пробовал разные варинты

Adik

Так пробывали?
$sum = $array['первый'] + $array['второй'];

Kirik1982

#11
Вот код. Не работает.

$sum = $array['total_paid_tax_incl'] + $array['total_paid_real'];
$this->fields_list = array_merge($this->fields_list, array(
         

'total_products_wt' => array(
                'title' => $this->l('Цена без услуг'),
                 'align' => 'text-right',
                'type' => 'price',
                'currency' => true,
                'callback' => 'setOrderCurrency',
                'badge_success' => true
            ),

'total_paid_real' => array(
                'title' => $this->l('Предоплата'),
                 'type' => 'price',
                  'align' => 'text-right',
                'currency' => true
               
               
               
            ),

'total_paid_tax_incl' => array(
                'title' => $this->l('Total'),
                'align' => 'text-right',
                'type' => 'price',
                'currency' => true,
                'callback' => 'setOrderCurrency',
                'badge_success' => true
            ),
$sum => array(
                'title' => $this->l('Остаток к оплате'),
                'align' => 'text-right',
                'type' => 'price',
                'currency' => true,
                'callback' => 'setOrderCurrency',
                'badge_success' => true
            )
        ));

Adik

Показ ошибок включите когда что-то делаете с prestashop. Сразу легче будет.
fields_list массив и добавлять новые элементы нужно
'sum' => array(
             'title' => $this->l('Остаток к оплате'),
             ....

Если переменная не описаниа в классе Order, переменную шаблона инициализируют в методе renderList
$this->tpl_list_vars['sum'] = $total_paid_tax_incl + $total_paid_real;

Kirik1982

Неверный SQL запрос
Unknown column 'sum' in 'field list'

Adik

Цитата: Kirik1982 от 31 июля 2017, 12:46:59
Неверный SQL запрос
Unknown column 'sum' in 'field list'
Потому что в классе (модели) нет такой переменной.
Если переменная не описаниа в классе Order, переменную шаблона инициализируют в методе renderList