• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/access/user/usersubordinate.php
  • Класс: BitrixMainAccessUserUserSubordinate
  • Вызов: UserSubordinate::getDepartmentsManagers
private function getDepartmentsManagers($departments, bool $recursive = false): array
{
	$managersIds = [];

	$deps = [];
	foreach ($departments as $depId)
	{
		$deps[] = $depId;
		if ($recursive)
		{
			$deps = array_merge($deps, self::getParentDepartments($depId));
		}
	}
	$deps = array_unique($deps);

	$structure = self::getStructure();
	foreach ($structure['DATA'] as $row)
	{
		if (in_array($row['ID'], $deps))
		{
			$id = (int) $row['UF_HEAD'];
			$managersIds[$id] = $id;
		}
	}

	return $managersIds;
}