Разработка класса обработчика доставки или заказа

3 1 500
Нужно написать класс доставки или свой msOrderHandler для следующей задачи.
Если покупатель сам забирает товар из магазина, то за самовывоз получает скидку 5% от суммы заказа.
Сейчас стоит стандартный способ доставки «Самовывоз» со стоимостью минус 5%, он считает минус 5% от общей суммы заказа.
Нужно, чтобы 5% скидка не считалась на товары с уже существующей скидкой (msDiscount: товар либо входит в группу товаров со скидкой, либо если у покупателя есть персональная скидка, либо используется купон)
Например: в корзине товар с учетом акционной скидки за 1000 руб. и товар без скидки за 500 руб., total_cost=1500, но скидка 5% считается только от 500 руб.
В итоге должно получиться: сумма заказа — 1500 руб, сумма к оплате — 1475 руб
Alexey T
Alexey T
12 августа 2015, 16:42
modx.pro
1 537