Фрилансеры предложат решение вашей задачи уже через несколько минут!
Публикация заказа не займет много времени.
Дарид Петров
41 год, Беларусь
9 лет в сервисе
Был онлайн 5 месяцев назад

Задача:
Нужно реализовать механизм включения стоимости доставки в зависимости от пункта назначения в итоговую стоимость товара в корзине.

Что имеем сейчас:
Сайт на битрикс-бизнес. Товар добавляется в корзину и покупатель выбирает способ доставки (“Самовывоз” или “Доставка транспортной компанией”).  Стоимость доставки никак не учитывается при формировании итоговой цены.

Что должно быть:
Покупатель формирует корзину. И если выбирает способ доставки “Доставка транспортной компанией”, то система должна предложить выбрать населенный пункт доставки из имеющегося списка. Далее указывается точный адрес в
выбранном населенном пункте. Далее если цена товара более 500 рублей, то доставка бесплатная. Если Стоимость товара менее 500 рублей, то далее рассчитывается стоимость доставки исходя из  веса заказанного товара (он есть в карточке товара) и стоимости доставки для выбранного населенного пункта.  Стоимость доставки для каждого населенного пункта  хранится в админке и правится вручную.  Эта стоимость скажем за 1 кг товара. А далее умножается на коэффициент в зависимости от массы заказываемого товара.

Все переменные (сумма корзины более которой доставка бесплатная, коэффициент на который умножается цена за 1кг если вес больше 1кг., список населенных пунктов и цена доставки за 1 кг. для каждого нас.пункта) должны вводиться в админке а не просто забиваться в коде.

На пример: Доставка в Витебск 1 кг стоит 10 рублей.  Если заказ составляет Х кг то общая стоимость доставки включаемая в цену товара будет рассчитываться по формуле:
10руб+(1,08*Х). Где 1,08 – постоянный коэффициент. Если масса менее 1 кг то доставка берется равной цене как за 1 кг.

1кг=10 руб
2кг=10+(1,08*2)=12.16 руб

3кг=10+(1,08*3)=13.24 руб

5кг=10+(1,08*5)=15.40 руб

10кг=10+(1,08*10)=20.80 руб

20кг=10+(1,08*20)=31.60 руб

Далее стоимость доставки отображается в корзине и плюсуется с итоговой стоимостью товара. И человек оплачивает выбранным способом оплаты (способы оплаты уже реализованы).