• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/services/company/restrictions/delivery.php
  • Класс: Bitrix\Sale\Services\Company\Restrictions\Delivery
  • Вызов: Delivery::extractParams
static function extractParams(Sale\Internals\Entity $entity)
{
	$result = array();

	/** @var Sale\ShipmentCollection|null  $shipmentCollection  */
	$shipmentCollection = null;

	if ($entity instanceof Sale\Shipment)
	{
		$shipmentCollection = $entity->getCollection();
	}
	elseif ($entity instanceof Sale\Payment)
	{
		/** @var \Bitrix\Sale\PaymentCollection $paymentCollection */
		$paymentCollection = $entity->getCollection();
		if ($paymentCollection)
		{
			/** @var \Bitrix\Sale\Order $order */
			$order = $paymentCollection->getOrder();
			if ($order)
				$shipmentCollection = $order->getShipmentCollection();
		}
	}
	elseif ($entity instanceOf Sale\Order)
	{
		$shipmentCollection = $entity->getShipmentCollection();
	}

	if ($shipmentCollection !== null)
	{
		/** @var \Bitrix\Sale\Shipment $shipment */
		foreach ($shipmentCollection as $shipment)
		{
			if ($shipment->isSystem())
			{
				continue;
			}

			if ($deliveryId = $shipment->getDeliveryId())
			{
				$result[] = $deliveryId;
			}
		}
	}

	return $result;
}