drupal commerce Product скидка на основе значения поля товара магазина commerce

Главные вкладки

Аватар пользователя egoriy egoriy 23 июня 2015 в 12:54

Доброго времени суток!
Проблема в том, чтобы создать скидку на цену товара на основе значения его поля.
Может быть кто нибудь знает готовый модуль решающий эту задачу или другое какое решение.
Приму любую помощь.
Это действительно очень срочно - у меня сегодня день рождения - но я специально выделил время
Спасибо!

Комментарии

Аватар пользователя jvb jvb 25 июня 2015 в 12:43

С Днем рождения! У меня тоже 23.06 ДР.
Теперь по сути.
1.Создал словарь таксономии с наименованиями скидок. Термины выглядят так:
Скидка 1%
Скидка 2%
...
Скидка 30%
2.Хитрость состоит в том , что бы каждому термину словаря руками установить его weight - Вес термина, по которому термины сортиртируются в словаре и который равен самой скидке. Т.е. у термина "Скидка 15%" Вес должен быть 15, у термина "Скидка 12%"- 12.
3. Вторая хитрость, что Вес - это число и до него можно добраться и использовать в правиле пр расчете скидки например по формуле:
цена= цена - цена*(Вес/100).
4 Правило вешаете на событие "Расчет стоимости товара"
5. Создаете поле в товаре с сылкой на этот словарь таксономии.
В правиле проверяете , если этом поле установлено значение из списка терминов созданного словаря , тогда рассчитываете стоимость товара по формуле, которую я указал выше.
Вкратце так.
P.S. Дисконтные правила я не использовал в данном случае, рассчитывая формулу цены самостоятельно, а не с помощью "черного ящика" предоставленного дисконтными правилами.

Аватар пользователя jvb jvb 25 июня 2015 в 13:33

ХулиGUN wrote:
"jvb" wrote:
2.Хитрость состоит в том , что бы каждому термину словаря руками установить его weight -

"jvb" wrote:
5. Создаете поле в товаре с сылкой на этот словарь таксономии.

Что мешает просто взять значение, а не вес? и не термин таксономии, а простое числовое поле?

Отсутствие визуализации.Возможноть некорректного задания величины скидки.

Аватар пользователя jvb jvb 25 июня 2015 в 16:10

Если я не ошибаюсь, то скидку в словаре задать один раз и проверить можно. А когда, например , более 300-т товарных позиций и нужна скидка на 100 позиций. И ее желательно менять раз в день -два , то поле для ошибки становится широким. И дело не термине таксономии и не в разукраске способа реализации, а в самом способе. По этому , наше обсуждение мне напоминает сдачу курсового по "Базам и банкам данных", когда преп-ль спрашивает: А какая у Вас модель БД применена в Вашем курсовом проекте?(реляц., иерархическая или сетевая, например), а студент отвечает : А вот посмотрите какие я часики классные приделал, тут внизу...

Аватар пользователя vbard vbard 25 июня 2015 в 17:12

"ХулиGUN" wrote:

Ладно тебе, чувак придумал приколюшку, для тёток удобнее же, особенно если скидок не много Smile Ну и VBO с таксономией работает. От задачи зависит: если скидка может быть 78,6% - то не удобно, если 10%, 20%, 30% - удобно.
Я вот как-то заморачивался скидку из поля профиля пользователя брать рулсами - не победил.

Аватар пользователя jvb jvb 25 июня 2015 в 20:16

Я для определенного клиента скидку делал через роль. Присвоил клиенту роль , а рулс на роль настроил(клиент имеет такую-то роль, если да -получи скидку). Клиент сразу цены видит со своей скидкой после того как залогинился, разлогинился - видит общие цены.
Событие тоже самое "Расчет стоимости товара".