Документация для разработчиков
Темная тема

findByUserIdAndRoleXmlIds

?\Bitrix\HumanResources\Item\NodeMember public
\Bitrix\HumanResources\Public\Service\Node\UserService::findByUserIdAndRoleXmlIds(
	int $userId,
	array $roleXmlIds
);

Метод возвращает первое найденное вхождение пользователя в узел организационной структуры с одной из указанных ролей. Нестатический метод.

Параметры

ПараметрОписание
$userIdИдентификатор пользователя
$roleXmlIdsМассив XML-идентификаторов ролей из значений перечисления \Bitrix\HumanResources\Type\NodeMemberRole. Неизвестные значения игнорируются

Возвращаемое значение

Метод возвращает объект \Bitrix\HumanResources\Item\NodeMember или null, если вхождение пользователя с указанной ролью не найдено либо массив не содержит допустимых ролей.

Пример

<?php

use Bitrix\HumanResources\Public\Service\Container;
use Bitrix\HumanResources\Type\NodeMemberRole;
use Bitrix\Main\Engine\CurrentUser;
use Bitrix\Main\Loader;

if (!Loader::includeModule('humanresources'))
{
	echo 'Модуль humanresources не установлен';
	return;
}

$userId = (int)CurrentUser::get()->getId();
if ($userId <= 0)
{
	echo 'Пользователь не авторизован';
	return;
}

$nodeMember = Container::getUserService()->findByUserIdAndRoleXmlIds(
	$userId,
	[NodeMemberRole::Head->value, NodeMemberRole::DeputyHead->value],
);

echo $nodeMember === null
	? 'Пользователь не руководит подразделением'
	: 'Идентификатор подразделения: ' . $nodeMember->nodeId;


© «Битрикс», 2001-2026, «1С-Битрикс», 2026