• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/classes/general/crm_document.php
  • Класс: \CCrmDocument
  • Вызов: CCrmDocument::GetUsersFromUserGroup
static function GetUsersFromUserGroup($group, $documentId)
{
	$documentInfo = static::getDocumentInfo($documentId);
	if (empty($documentInfo))
	{
		return [];
	}
	$entityID = isset($documentInfo['ID']) ? intval($documentInfo['ID']) : 0;
	$responsibleId = 0;

	if ($group === static::GROUP_RESPONSIBLE_HEAD || $group === static::GROUP_AUTHOR)
	{
		$responsibleId = \CCrmOwnerType::loadResponsibleId(
			\CCrmOwnerType::ResolveID($documentInfo['TYPE']),
			$entityID,
			false
		);
	}

	$groupLc = mb_strtolower($group);
	if ($group === static::GROUP_RESPONSIBLE_HEAD)
	{
		$userService = \CBPRuntime::GetRuntime()->getUserService();

		return $responsibleId ? $userService->getUserHeads($responsibleId) : [];
	}
	if ($groupLc === static::GROUP_AUTHOR)
	{
		return array_filter([$responsibleId]);
	}
	elseif ($groupLc == 'ungrouped')
	{
		return isset(self::$UNGROUPED_USERS[$documentId]) ? self::$UNGROUPED_USERS[$documentId] : array();
	}

	$group = (int)$group;
	if ($group <= 0)
		return array();

	$arResult = array();
	$dbUsersList = CUser::GetList(
		'ID',
		'ASC',
		['GROUPS_ID' => $group, 'ACTIVE' => 'Y', 'IS_REAL_USER' => true],
		['FIELDS' => ['ID']]
	);

	while ($arUser = $dbUsersList->Fetch())
	{
		$arResult[] = $arUser['ID'];
	}

	return $arResult;
}