События связанные с заказами
1. OnBeforeAprixSendOrderToMS
Это событие вызывается перед отправкой запроса в МойСклад на создание заказа. В обработчике события можно модифицировать тело запроса перед отправкой его в МойСклад.
Пример обработчика события (init.php):
\Bitrix\Main\EventManager::getInstance()->addEventHandler(
'design2u.syncms',
'OnBeforeAprixSendOrderToMS',
'OnBeforeAprixSendOrderToMSHandler'
);
/**
* @param string $action действие на которое срабатывает событие. На данный момент только "CREATE"
* @param array &$arOrderJSON массив тела запроса (передается по ссылке и может быть модифицирован)
* @return void
*/
function OnBeforeAprixSendOrderToMSHandler(string $action, array &$arOrderJSON)
{
// код обработчика
}
2. OnAprixAddBasketItems
Это событие вызывается перед добавлением товаров в корзину при выгрузке заказа из МойСклад на сайт. Оно предназначено для предотвращения добавления в корзину той или иной позиции.
Пример обработчика события (init.php):
\Bitrix\Main\EventManager::getInstance()->addEventHandler(
'design2u.syncms',
'OnAprixAddBasketItems',
'OnAprixAddBasketItemsHandler'
);
/**
* @param int $idOrder идентификатор заказа на сайте
* @param array &$excludedProductIds пустой массив, который передаётся по ссылке. Добавленные в него идентификаторы товаров будут исключены из позиций заказа на сайте.
* @return void
*/
function OnAprixAddBasketItemsHandler(int $idOrder, array &$excludedProductIds )
{
// код обработчика
}
$this->orderSite['ID'], &$not_deleted_item_ids