Доработать сайт на VirtueMart в части скидок

Бюджет: по договоренности
Заказчик выбрал исполнителя:
Ярослав Литовченко  
Есть доработанная база. Необходимо, чтобы цены рассчитывались из новых колонок согласно новым правилам. Сделано для взаимодействия с 1С и системой установления скидок. Я сделал поля, нужно прописать взаимодействие.

Задачи по сайту: 
1. Обеспечить, чтобы цена доставки бралась из поля `y8flq_virtuemart_product_prices`.`product_shipping_price`(Цена доставки товара). Цены складываются при покупке. 
2. Обеспечить систему скидок и бонусов.(Работает если override_flag = 1) 
2.1 Если покупатель выбрал 2й товар того же поставщика, что и 1й(поле поставщика `y8flq_virtuemart_product_prices`.`product_price_supplierid`, то цена продажи должна указываться 
`y8flq_virtuemart_product_prices`.`product_shipping_price2`(Цена со скидкой 2), если она присутствует и не равна 
другим ценам(`y8flq_virtuemart_product_prices`.`product_price`(Основная цена), `y8flq_virtuemart_product_prices`.`product_override_price`(Цена со скидкой 1)). Соответственно предыдущая цена – будет перечеркнута. То же происходит и с ценой доставки ( `y8flq_virtuemart_product_prices`.`product_shipping_price2`, `y8flq_virtuemart_product_prices`.`product_shipping_price`). То есть измениться может как цена товара, так и цена доставки, что тоже должно быть отражено перечеркиванием. Если `y8flq_virtuemart_product_prices`.`product_shipping_price2` нет, то и цена доставки остается прежняя. 
2.2 Так же покупателю зачисляются бонусы при выборе товара(бонусы хранятся, но не показываются). При покупке бонусы сохраняются в базе. Если товар покупается по пункту 2.1, то из поля `y8flq_virtuemart_product_prices`.`product_bonuses2`, в остальных случаях – из поля `y8flq_virtuemart_product_prices`.`product_bonuses`. 
Алгоритм начисления бонусов: 
Если при выборе товара у покупателя ненулевой баланс бонусов, тогда берется текущая цена, от нее отнимается сумма бонусов, далее в таблице `likeshop`.`y8flq_virtuemart_product_add_discount` находится минимальная цена, не меньшая, чем получившаяся цена с учетом бонусов. Если такая запись есть – эта запись будет текущей записью продажи. Если нет – то то оставляем предыдущую запись, бонусы не расходуются. Цена доставки не меняется. 
3. Если при выборе товара оказались товары с ценой. отличной от цены сайта, то нужно уведомить об этом пользователя, что есть товары по акции для данного заказа и при подтверждении пользователя, отобразить их. 
4. Товары, у которых цена товара или доставки отличаются, должны быть выделены каким-то образом(значком "Акция!", восклицательным знаком). 

Подробности в личку или в skype. Прошу простить, но выхожу на связь вечерами ненадолго, серьезно обсудить получится в выходные. В другое время готов переписываться.
Опубликован 04.01.2017 в 16:38

Выберите способ верификации:

Обновите страницу после прохождения верификации.