Вы здесь

Как в commerce сделать стоимость за несколько товаров в упаковке?

0

Всем привет!

Такая задача, есть карточка товара, в ней указывается стоимость за одну единицу товара. Магазин оптовый, и продает упаковками. Есть в карточке товара поле "количество в упаковке", необходимо пользователю в карточке показывать стоимость за единицу и стомость за упаковку(которая должна рассчитаться на основе данных количества в упаковке), а при добавлении в корзину, чтобы добавлялась только стоимость за упаковку. Как лучше реализовать?

Пока только в голову пришла мысль сделать два поля цены, и при сохранении ноды умножать количество за цену за единицу и прописывать в поле. Может есть варианты лучше?

Версия Drupal: 
7.x
Связанные проекты: 
Commerce Kickstart
Вопрос задан 09.07.2018 - 08:41
Аватар пользователя im
im
28

Решил без доп поля цены - рулсами. Перерасчет стоимости на основе поля, а в карточку вывожу базовый прайс и пересчитанный.

Комментарий оставлен 09.07.2018 - 09:11

хотя не все так гладко как в теории. Ибо поля с количеством упаковок, рулс не видит, хотя условие добавлено - сущность имеет поле.

Комментарий оставлен 09.07.2018 - 13:07

Ответы

0

Наковырял методом проб и ошибок, может кому полезно будет, такой рулс получился

Событие:
Расчёт стоимости товара

Условие:
1 - Сущность имеет поле Параметр: Сущность: [commerce-line-item], Поле: commerce_product
2 - А теперь уже тянем поле с кол-вом бутылок Сущность имеет поле Параметр: Сущность: [commerce-line-item: commerce_product] Поле: field_quantity

Дейсвия:

Умножить стоимость за единицу на некое значение
Параметр: Строка: [commerce_line_item], Количество: [ommerce-line-item: commerce_product:field_quantity]

Ответ дан 09.07.2018 - 13:44
Аватар пользователя im
im
28

Будьте внимательны если решите использовать скидки/купоны, в Rules присутсвует Race Condition.

Комментарий оставлен 17.07.2018 - 11:46