Сайт:
Доработка 1:
Добавить в ограничения службы доставки новый тип ограничения по ID категории. Можно просто текстовое поле со списком категорий через запятую. Соответственно чтобы данная служба доставки применялась только к товарам из указанных категорий.
Доработка 2:
Добавить в форму оформления заказа услугу «Подъем на этаж»
В идеале, сделать по аналогии с модулем «системы оплаты»
Принцип работы:
Рассчитывать этаж и прочее не нужно. Стоимость подъема фиксированная, привязана к категории товара и не зависит от этажа. Базово, у нас такие варианты:
Без подъема (0 руб), Тип 1 (300 руб), тип 2 (500), тип 3 (1500 руб)
Соответственно в админке модуля должны создаваться типы подъема, по аналогии с системами оплаты, которые так же привязываются к службам доставки (так как не для всех служб возможен подъем)
Для каждого типа подъема в админке вводим несколько параметров:
- название, описание, стоимость, список id категорий для товаров которых он будет активен, картинка.
Для каждого типа указываем, с какими службами доставки они работают
Правила модуля:
1) Если в заказе товары из категорий, которым не соответствует ни одна категория из указанных в модуле то блок подъема не выводим при оформлении заказа вообще
2) Если соответствует всегда выводим 2 типа на выбор выбор:
Без подъема (выводим всегда)
Тип подъема, который соответствует категории товара
По умолчанию стоит 2-й пункт.
При этом к итоговой стоимости заказа прибавляется стоимость подъема.
Поле выводиться в итоговой части после стоимости доставки «Подъем: 500 руб.»
Если покупатель выбирает без подъема то «Подъем: 0 руб.»
Если в заказе несколько товаров с разными типам подъема выводим больший из них
При оформлении заказа, блок с выбором типа подъема визуально сделать таким же, как доставка и оплата, поместить после доставки, перед оплатой.
В админке заказа вывести в блок «данные для доставки» параметры подъема для заказа, с возможностью его изменения менеджером (выпадающий список со стоимостью подъемов).