Devtoid

Определение нахождения сотрудника в отделе или подотделе

UserSubordinate

use Bitrix\Intranet\CurrentUser;
use Bitrix\Main\Access\User\UserSubordinate;

$userDepartments = CurrentUser::get()->getDepartmentIds();
if ($userDepartments === null) {
    return;
}

foreach ($userDepartments as $departmentId) {
    $userDepartments = array_merge($userDepartments, UserSubordinate::getParentDepartments($departmentId));
}

$targetDepartmentId = 13;
if (!in_array($targetDepartmentId, $userDepartments)) {
    return;
}