Провайдер структуры компании
Провайдер структуры компании
Сущность "отдел" или "департамент" имеет идентификатор department
и реализуется классом Bitrix\Intranet\Integration\UI\EntitySelector\DepartmentProvider
.
Провайдер автоматически добавляет в диалог вкладку "Отделы" с древовидной структурой компании.
Структура компании имеет несколько режимов выбора:
- Выбор только пользователей.
- Выбор только отделов.
- Выбор пользователей и отделов, где для отделов возможны следующие варианты:
- Все сотрудники с подотделами.
- Только сотрудники отдела.
Провайдер структуры компании
const tagSelector = new TagSelector({ dialogOptions: { context: 'MY_MODULE_CONTEXT', entities: [ { id: 'department', options: { selectMode: 'departmentsOnly', // только выбор отделов } }, ], } }); tagSelector.renderTo(document.getElementById('container'));
Диалог выбор пользователя
const button = document.getElementById('responsible-button'); const dialog = new Dialog({ targetNode: button, enableSearch: true, context: 'MY_MODULE_CONTEXT', entities: [ { id: 'user', // пользователи }, { id: 'department', // структура компании: выбор только пользователей }, ], }); button.addEventListener('click', function() { dialog.show(); });
Настройки провайдера
selectMode: string
Режим выбора отделов. Доступны следующие значения:
-
usersOnly
— выбор только пользователей. -
usersAndDepartments
— выбор пользователей и отделов. -
departmentsOnly
— выбор только отделов.
По умолчанию режим
usersOnly
- выбор только пользователей.-
allowFlatDepartments: bool
Для режима выбора пользователей и отделов (
usersAndDepartments
), данная опция включает выбор "Только сотрудник отдела". По умолчаниюfalse
.allowSelectRootDepartment: bool
Разрешает выбор корневого отдела компании. По умолчанию для режима выбора "только отделы" задано значение
true
, для остальных режимовfalse
.userOptions: array
Настройки вывода пользователей в структуре компании. Если в диалоге указан провайдер выбора пользователей, то настройки вывода пользователей по умолчанию берутся из данного провайдера. Опции
userOptions
имеет смысл указывать только для случая, когда указан только провайдер структуры компании.