- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/tradingplatform/ebay/ebay.php
- Класс: BitrixSaleTradingPlatformEbayEbay
- Вызов: Ebay::onAfterUpdateShipment
static function onAfterUpdateShipment(BitrixMainEvent $event, array $additional)
{
$data = array();
$ebay = self::getInstance();
$settings = $ebay->getSettings();
$deliveryName = "Other";
if(
!empty($settings[$additional["SITE_ID"]]["MAPS"]["SHIPMENT"])
&& is_array($settings[$additional["SITE_ID"]]["MAPS"]["SHIPMENT"])
)
{
$map = array_flip($settings[$additional["SITE_ID"]]["MAPS"]["SHIPMENT"]);
if(isset($map[$additional['DELIVERY_ID']]))
{
$deliveryName = $map[$additional['DELIVERY_ID']];
if(mb_substr($deliveryName, 0, 3) == "RU_")
$deliveryName = mb_substr($deliveryName, 3);
}
}
if(
!empty($additional["PARAMS"]["ORDER_LINES"])
&& is_array($additional["PARAMS"]["ORDER_LINES"])
&& !empty($additional["PARAMS"]["ORDER_ID"])
)
{
foreach($additional["PARAMS"]["ORDER_LINES"] as $lineId)
{
$data[] = array(
"ORDER_ID" => $additional["PARAMS"]["ORDER_ID"],
"ORDER_LINE_ITEM_ID" => $lineId,
"DELIVERY_NAME" => $deliveryName,
"TRACKING_NUMBER" => $additional['TRACKING_NUMBER']
);
}
}
if(!empty($data))
{
$ebayFeed = BitrixSaleTradingPlatformEbayFeedManager::createFeed("SHIPMENT", $additional["SITE_ID"]);
$ebayFeed->setSourceData(array($data));
$ebayFeed->processData();
BitrixSaleTradingPlatformEbayAgent::add('SHIPMENT', $additional["SITE_ID"], 1, true);
}
}