Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”
Шаги "оформление заказа"

Автор atachРаздел Шаблоны TPL

Ответов: 11
Просмотров: 6607
Последний ответ 14 Августа 2013, 16:59:21
от admin
Вывести сумму заказа на странице "Заказ поступил в обработку"

Автор AxiomateriaРаздел Шаблоны XSLT

Ответов: 2
Просмотров: 3767
Последний ответ 07 Ноября 2014, 23:46:49
от Axiomateria
Перенаправление на страницу регистрации покупателя перед оформлением заказа

Автор AxiomateriaРаздел Шаблоны XSLT

Ответов: 16
Просмотров: 10032
Последний ответ 11 Марта 2013, 11:54:29
от Axiomateria
Проблемы уведомления клиента при смене статуса заказа и доставки

Автор stud_maiРаздел Шаблоны XSLT

Ответов: 7
Просмотров: 4261
Последний ответ 05 Января 2016, 00:59:01
от admin
Не суммировать скидку на товар с общей скидкой от суммы заказа

Автор smartwebРаздел Шаблоны TPL

Ответов: 3
Просмотров: 2638
Последний ответ 19 Декабря 2016, 12:29:09
от aghigay

0 Пользователей и 1 Гость просматривают эту тему.

*

muldy

  • ***
  • 222
  • +9/-1
    • Просмотр профиля
Здравствуйте!
Возникла необходимость в правке файла orderItem.php, а именно установка цены на конкретный товар от определенных условий, те на данный момент от суммы заказа. В моейм случае скидка не проходит тк стоит цена нулевая и цены выводятся при помощи опционной цены.
Так вот собственно вопрос, как получить сумму заказа в методе refresh(), который располагается в файле orderItem.php?

*

ilyar

Re:Получение стоимости заказа в orderItem.php?
« Ответ #1 : 22 Июля 2014, 00:36:10 »
Рекомендую для этих целей использовать событие umiObjectProperty_loadPriceValue

classes/modules/emarket/custom_events.php
<?php
new umiEventListener("umiObjectProperty_loadPriceValue", "emarket", "onGetPrice");

classes/modules/emarket/__custom.php
<?php
abstract class __emarket_custom {
    /**
     * Handler get the cost of goods
     * @param umiEventPoint $event
     */
    public function onGetPrice(umiEventPoint $event)
    {
        $objectId = $event->getParam('object_id'); // id goods
        $price = &$event->getRef('price'); // link


        $basketOrder = $this->getBasketOrder(); /** @var order $basketOrder */
        $actualPrice = $basketOrder->getActualPrice();
       
        if($actualPrice >= 1000) {
            $price = 666;
        }
    }
};
« Последнее редактирование: 22 Июля 2014, 09:00:17 от ilyar »