Sylius - Как определить продукт с опциями, влияющими на цену?

В Sylius я могу создать вариант товара, например 3 размера футболки, каждый размер имеет разную цену. Это хорошее решение, если у меня есть продукт с одной вещью, которая влияет на цену.

Как насчет ситуации, когда у меня есть футболка, у которой есть много вариантов, влияющих на цену, например:

  • Размер
  • Материал
  • Цвет
  • и еще несколько

Я не могу создать продукт с вариантами каждой конфигурации. Например, это должно быть таким образом, чтобы этот конкретный вариант влиял на цену, добавляя к ней некоторую сумму денег или %. Думаю, это похоже на адаптацию. Но как использовать его для продуктов?

----ПОДРОБНЕЕ-------- Мне нужно определить продукт с некоторыми параметрами, влияющими на цену, такими как корректировки. Затем, когда пользователь добавляет товар в корзину, он выбирает некоторые параметры. Каждый из этих вариантов меняет цену товара. Таким образом, базовый продукт имеет цену 20 долларов. Но когда пользователь добавляет его в корзину, измените 3 параметра, тогда цена должна быть 35 долларов. И этот товар стоимостью 35$ надо добавить в корзину, а потом в заказ.


person Tom    schedule 03.02.2014    source источник


Ответы (2)


Вы можете прослушать сообщение о создании продукта или варианта, а затем в своем прослушивателе проверить, какие параметры установлены, и скорректировать цену в соответствии с параметрами.

person umpirsky    schedule 04.02.2014
comment
Я думаю, что мое описание было не правильно написано. Мне нужно определить продукт с некоторыми параметрами, влияющими на цену, такими как корректировки. Затем, когда пользователь добавляет товар в корзину, он выбирает некоторые параметры. Каждый из этих вариантов меняет цену товара. Таким образом, базовый продукт имеет цену 20 долларов. Но когда пользователь добавляет его в корзину, измените 3 параметра, тогда цена должна быть 35 долларов. И этот товар стоимостью 35$ надо добавить в корзину, а потом в заказ. - person Tom; 04.02.2014

Возможно, вы можете использовать собственный PriceCalculator, который должен использовать CalculatorInterface. В этом классе может быть реализована вся пользовательская логика, зависящая от продукта.

person ZAYEC77    schedule 19.02.2015
comment
Пожалуйста, уточните ответ немного подробнее. - person kenorb; 20.02.2015