UMIhelp

Разработка сайта на UMI.CMS => Шаблоны TPL => Тема начата: Masalkinn от 03 Марта 2012, 23:54:07

Название: Скидка для пользователей
Отправлено: Masalkinn от 03 Марта 2012, 23:54:07
Добрей день, подскажите как можно такое реализовать.
На сайте есть панель для пользователей.
На этой панели должна отображаться скидка, которой обладает пользователь. Только вот как это сделать, ума не приложу.
Обычно скидка прописывается к ID товара. А тут товара нет ни какого. Тут надо как то вытащить скидку от пользователя.
Название: Re:Скидка для пользователей
Отправлено: admin от 04 Марта 2012, 04:03:06
Скидки бывают разных типов, если у вас скидки назначаются на пользователей, то...

надо писать кастом,
1. который будет делать выборку по правилу скидки (чтобы было равно "по пользователю"),
2. потом из полученных правил делать массив с id этих правил
3. затем делать выборку скидок у которых правила скидки равно массиву (полученному на предыдущем шаге)
4. затем перебираем все полученные скидки и беря у каждой id модификатора цены брать объект модификатора скидки и находить большую скидку.

В итоге у нас есть максимальная скидка для данного пользователя и объекс самой скидки из которой можно вытянуть описание, имя и т.п.
Название: Re:Скидка для пользователей
Отправлено: albion от 07 Марта 2012, 12:11:59
admin, а разве нельзя проще. Если описание скидки можно выводить к товарам, и я так понимаю, у пользователя скидка сразу на все товары,  то можно в определенном месте вывести описание определенного товара со скидкой, а потом просто из шаблона убрать данные о товаре и оставить только данные о скидке, а именно процент этой скидки.
Название: Re:Скидка для пользователей
Отправлено: admin от 07 Марта 2012, 12:18:42
это действительно проще, но будет работать в очень ограниченном количестве случаев , так  как необходимо чтобы соблюдались условия...


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

возможно что-то упустил, но уже и этого хватит чтобы понять что вариант очень удобен, но далеко не всегда его можно будет использовать