• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/exchange/onec/importcollision.php
  • Класс: BitrixSaleExchangeOneCCollisionOrder
  • Вызов: CollisionOrder::getCollision
public function getCollision(EntityImport $item)
{
	$result = array();

	/** @var ImportSettings $settings */
	$settings = $item->getSettings();

	/** @var Order $order */
	$order = $item->getEntity();
	if(!empty($order))
	{
		$collisionTypes = $settings->getCollisionResolve($item->getOwnerTypeId());

		if(is_array($collisionTypes))
		{
			foreach ($collisionTypes as $collisionType)
			{
				switch($collisionType)
				{
					case EntityCollisionType::OrderFinalStatusName:
						if($order->getField('STATUS_ID') == $settings->finalStatusIdFor($item->getOwnerTypeId()))
							$result[] = EntityCollisionType::resolveID($collisionType);
						break;
					case EntityCollisionType::OrderIsPayedName:
						if($order->isPaid())
							$result[] = EntityCollisionType::resolveID($collisionType);
						break;
					case EntityCollisionType::OrderIsShippedName:
						if($order->isShipped())
							$result[] = EntityCollisionType::resolveID($collisionType);
						break;
				}
			}
		}
	}

	return $result;
}