[msDellin2] - расчет доставки ТК. "Деловые линии"

msDellin2 — рассчитывает стоимость доставки, с учетом веса, объема и стоимости продуктов для перевозок транспортной компаний «Деловые линии»


Особенности
  • работа только с новым miniShop2 (version =>2.4.0-beta2)
  • сниппет для расчета стоимости корзины
  • сниппет для расчета стоимости продукта
  • адаптация с GeoLocation для определения города покупателя
демо: delivery.vgrish.ru/


Типы доставки
  • от адреса до терминала
  • от терминала до терминала
  • от терминала до адреса
  • от адреса до адреса
Установка
После установки компонента доступны 4 метода доставки.

Включите необходимые вам методы.

Точки доставки
Точки доставки (города) доступны на вкладке метода доставки. Их можно обновить, отключить или удалить.


Терминалы доставки
Терминалы доставки доступны на вкладке метода доставки. Их можно обновить, отключить или удалить.


сниппет msDellin.Order — расчет стоимости корзины
параметры
  • elements — cписок сниппетов через запятую, которые нужно запустить.
  • pointName — имя точки доставки
Практически сниппет обертка, выполняет необходимые действия, данные выставляет в плейсходеры, затем запускает поочередно сниппеты из списка elements. Последним необходимо указать родной сниппет msOrder.
Так же можно указать предпочтительную точку доставки через параметр pointName, если стоит компонент GeoLocation точка автоматически будет получена оттуда.

пример вызова
[[!msDellin.Order?
]]
сниппет msDellin.Product.cost — расчет стоимости продукта
параметры
  • product- Идентификатор продукта.
  • delivery — идентификатор доставки.
  • pointName — имя точки доставки
пример вызова
[[!msDellin.Product.cost?
    &delivery=`46`
]]

пример вызова через AjaxSnippet
[[!AjaxSnippet?
    &snippet=`msDellin.Product.cost`
    &delivery=`50`
    &as_target=`.msdellin-product-cost`
]]

События
Доступны
  • msDellinOnGetProductOption — получение опций продукта
  • msDellinOnBeforeRequest — перед отправкой запроса к api
  • msDellinOnAfterRequest — после отправки запроса к api
Информация о доставке
Вся информация о доставке пишется в поле properties msOrderAddress.
Так же доступна в админке на странице заказов.


Важно
Компонент предназначен для работы с новым miniShop2 версии >= 2.4.0-beta2
Другие компоненты по расчету стоимости доставки будут переписаны по аналогии, на данный момент они не совместимы.
Для работы компонента необходимо получить ключ api — выдается при регистрации.

Совместимость
пример вызова корзины для доставки msDellin2 и msKit
[[!msDellin.Order?
    &elements=`msKit.Order,msOrder`
    &tpl=`msAll.order`
]]

ps. Всем спасибо за внимание!
Володя
17 июля 2016, 15:04
modx.pro
1
3 057
+4
Поблагодарить автора Отправить деньги

Комментарии: 12

Stan Ezersky
02 августа 2016, 17:55
0
Использовал предыдущую версию компонента, но эта версия довольная мощная вышла.

Порадовало то, что не надо переписывать обработчики, многое упростилось, добавилась карта.

Спасибо за компонент!
    Володя
    02 августа 2016, 22:37
    0
    Пожалуйста!
    Степан Прищепенко
    11 ноября 2016, 18:48
    0
    Привет, шерстил исходники и чет я не нашел как объем груза выставляется, я правильно понимаю что единственный вариант это ловить msDellinOnGetProductOption либо заранее менять total_volume??? С «партнером» — красавчик! )
      Володя
      11 ноября 2016, 18:59
      0
      прив.
      Сначала берется если есть поле объем статусе корзины, если нет пытается получить из массива продуктов и там уже срабавтывает событие getProductOption и можно выставить его динамически.
      ну все правильно ты понял да.
        Степан Прищепенко
        11 ноября 2016, 20:47
        0
        а вот такого поля в ms2 вроде нет?
          Володя
          12 ноября 2016, 11:04
          0
          нет, но minishop же позволяет легко расширить класс корзины и добавить нужное поле, все будет работать.
            Степан Прищепенко
            12 ноября 2016, 11:52
            0
            Спасибо за разъяснения! у меня создается ощущение, что большинство кто пользуется компонентами доставки просто не в курсе, что объем не учитывается, и надо не много подшаманить, было бы не плохо дописать инфу в доках MS2 на этот счет, ну это так мысли в слух )
              Володя
              12 ноября 2016, 12:00
              0
              пожалуйста!
              Объем в любом случае учитывается, без него нет расчета, просто он учитывается по дефолту.
              У всех различные магазины и каждый извращается как хочет. У кого то это опция продукта, у кого то это неиспользуемое поле, у кого то тв… всех варианты учесть невозможно.
              Для того и есть ТП…
      Степан Прищепенко
      11 ноября 2016, 18:50
      0
      Кстати mscDistance чет криво встал нет системных настроек, ставил на голую, шоп 2.4.5 кажись.
        Володя
        11 ноября 2016, 19:00
        0
        а там помоему и нет никаких настроек по дефолту. все на странице настроек доставки магазина.
      Илья
      12 декабря 2018, 13:27
      0
      Приветствую! Автор, подскажи, хотим сделать скидку на доставку для клиентов, можно ли как то это прописать? Что бы считал api как есть, а выдавалось с вычетом скидки, ну и соответсвенно, чтоб в заказ уходила нужная сумма.
      Спасибо)
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        12