ShipmentsRepository::getShipmentStages

  1. Bitrix24 API (v. 23.675.0)
  2. crm
  3. ShipmentsRepository
  4. getShipmentStages
  • Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/deal/shipmentsrepository.php
  • Класс: Bitrix\Crm\Deal\ShipmentsRepository
  • Вызов: ShipmentsRepository::getShipmentStages
public function getShipmentStages(array $dealIds): array
{
	if (empty($dealIds))
	{
		return [];
	}

	static $result = [];

	$dealIdsForLoadingStages = [];
	foreach ($dealIds as $dealId)
	{
		if (!isset($result[$dealId]))
		{
			$dealIdsForLoadingStages[] = $dealId;
		}
	}

	if ($dealIdsForLoadingStages)
	{
		$result += $this->loadShipmentStages($dealIdsForLoadingStages);
	}

	$dealIdsAsKey = array_fill_keys($dealIds, true);

	return array_filter(
		$result,
		static function ($key) use ($dealIdsAsKey)
		{
			return isset($dealIdsAsKey[$key]);
		},
		ARRAY_FILTER_USE_KEY
	);
}

Добавить комментарий