• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/entity/entitybase.php
  • Класс: Bitrix\Crm\Entity\EntityBase
  • Вызов: EntityBase::buildPermissionSqlForCategories
private function buildPermissionSqlForCategories(int $userId, Options $builderOptions, ?array $categoryIds = null): Result
{
	$permEntityTypeHelper = new PermissionEntityTypeHelper($this->getEntityTypeID());


	if (is_null($categoryIds))
	{
		$permEntities = $permEntityTypeHelper->getAllPermissionEntityTypesForEntity();
	}
	else
	{
		$permEntities = [];
		foreach ($categoryIds as $categoryId)
		{
			$permEntities[] = $permEntityTypeHelper->getPermissionEntityTypeForCategory((int)$categoryId);
		}
	}

	$queryBuilder = \Bitrix\Crm\Service\Container::getInstance()
		->getUserPermissions($userId)
		->createListQueryBuilder($permEntities, $builderOptions)
	;

	return $queryBuilder->build();
}