• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/delivery/requests/helper.php
  • Класс: BitrixSaleDeliveryRequestsHelper
  • Вызов: Helper::getShipmentsByIds
static function getShipmentsByIds(array $shipmentIds)
{
	if(empty($shipmentIds))
		return array();

	$registry = SaleRegistry::getInstance(SaleRegistry::REGISTRY_TYPE_ORDER);
	/** @var SaleOrder $orderClass */
	$orderClass = $registry->getOrderClassName();

	$result = array();

	$res = InternalsShipmentTable::getList(array(
		'filter' => array(
			'=ID' => $shipmentIds
		),
		'select' => array('ID', 'ORDER_ID')
	));

	while($shp = $res->fetch())
	{
		$order = $orderClass::load($shp['ORDER_ID']);

		foreach($order->getShipmentCollection() as $shipment)
		{
			if($shp['ID'] != $shipment->getId())
				continue;

			if(!in_array($shp['ID'], $shipmentIds))
				continue;

			$result[$shp['ID']] = $shipment;
			break;
		}
	}

	return $result;
}