====== Отгрузка отправлений ======
Интернет-магазины работают со службами доставки, и для ускорения обмена данными между ними службы доставки предоставляют собственные API, которые позволяют создавать отправления на основе заказов, сделанных покупателями в интернет-магазинах.
Для интеграции службы доставки с интернет-магазином на HostCMS разработан класс и его реализации для некоторых служб доставки, файлы решения доступны по ссылке ниже:
** {{ :private:koding:hostcms:modules:shop:order:dispatcher.tar.gz |Файлы решения}}**, на данный момент реализована интеграция с PickPoint и Hermes.
===== Описание работы =====
При оплате пользователем заказ будет отправляться в выбранную службу доставки.
===== Установка =====
- Необходимо скачать файлы решения и загрузить их в директорию /modules/shop/order.
- Подключить наблюдатель, разместив в bootstrap.php следующий код:Shop_Order_Observer_Dispatch::attach();
- Настроить наблюдатель **Shop_Order_Observer_Dispatch**, указав соответствия между способом доставки HostCMS и службой доставки, например, так:switch ($oShopOrder->shop_delivery_id)
{
// Pickpoint
case 6:
Shop_Order_Dispatcher::factory('pickpoint')
->debug(self::$_debug)
->dispatch($oClonedShopOrder);
break;
// Hermes
case 11:
Shop_Order_Dispatcher::factory('hermes')
->debug(self::$_debug)
->dispatch($oClonedShopOrder);
break;
}
===== Структура файлов решения ======
Решение имеет правильную структуру с базовым классом, реализациями под каждую службу доставки и конфигурациями, при необходимости поддержки какой-то другой службы доставки нужно будет написать новую реализацию для работы с конкретным API, уже имеющиеся службы доставки это не затронит.
/dispatcher/ // Реализации для различных служб доставки
----/config/
--------config.php // Конфигурации для служб доставки
----hermes.php
----pickpoint.php
/observer/ // Наблюдатели для заказа
dispatcher.php // Основной класс
Страницу создал Максим Засорин 31.07.17 в 11:59