- Главная [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
- Начало работы
- Как решить вашу задачу
-
API
-
Типы объектов
- DispositionType
- ProcessInstanceState
- ProcessTaskState
- ApplicationItemRegistration
- ApplicationProjectItem
- ApplicationProjectItemRef
- ApplicationProjectPlanElementItem
- ApplicationProjectPlanElementItemRef
- BaseApplicationItem
- BaseApplicationItemRef
- BaseItem
- BaseItemData
- CurrentUserItem
- DirectoryData
- DirectoryItem
- EmployeeItemData
- EmployeeItemParams
- EmployeeItemProcesses
- FileData
- FileItem
- FileItemRef
- FileVersionData
- FileVersionItem
- ImageData
- ImageItem
- ImageItemRef
- InstanceAddr
- Item
- ItemData
- ItemRef
- MailMessageData
- MailMessageItem
- MailMessageItemRef
- OrganisationStructureData
- OrganisationStructureItem
- OrganisationStructureItemRef
- ParamsItem
- ProcessInstanceData
- ProcessInstanceItem
- ProcessInstanceItemRef
- ProcessTaskData
- ProcessTaskItem
- ProcessTaskItemRef
- ProcessTemplate
- ProcessTimer
- ReminderData
- ReminderItem
- ReplacementData
- ReplacementItem
- StatusHistoryData
- StatusHistoryItem
- StatusHistoryItemRef
- TaskItemExit
- UserData
- UserGroupData
- UserGroupItem
- UserGroupItemRef
- UserItem
- UserItemRef
- ApplicationItem
- ApplicationItemRef
- Типы данных
- Глобальные константы
- Работа с приложениями
- Веб-запросы
- Права доступа
- Документооборот
- Линии
- Виджет «Код»
- Подписи
- Рабочие календари
- Интеграция с IP-телефонией
- Интеграция с сервисами рассылок
-
Типы объектов
Объект пользователя
Type parameters
I: Item<ItemData>
I: Item<ItemData>
Hierarchy
Properties
Readonly code
Код приложения цели ссылки (код приложения).
Readonly data
Значения полей объекта.
Readonly fields
Описание полей объекта.
Readonly id
Идентификатор цели ссылки.
Readonly namespace
Пространство имен цели ссылки (код раздела приложения).
Readonly timezone
Часовой пояс со смещением времени в часах.
Если у пользователя не определен часовой пояс, используется часовой пояс компании.
Пример использования:
const currentUser = await System.users.getCurrentUser(); const userTimezone = currentUser.timezone;
Methods
assignToPosition
Метод позволяет назначить пользователя на должность.
После использования этого метода необходимо сохранить объект пользователя.
Parameters
position: OrganisationStructureItem
Returns void
block
Метод блокирует учётную запись пользователя.
await Context.data.user.block();
Returns Promise<void>
fetch
Запрос полных данных объекта-ссылки.
Returns Promise<UserItem>
getChiefs
Метод получает всех руководителей пользователя.
Метод рассчитывает руководителей всех элементов оргструктуры, на которые назначен пользователь. Руководителем считается первая должность, по пути к корню дерева оргструктуры, на которую назначен пользователь. Если пользователь не назначен на должность, то вернётся пустой список. Если пользователь сопоставлен корню дерева оргуструтуры, то вернётся он сам.
const chiefs = await Context.data.__createdBy.getChiefs(); Context.data.approver = chiefs[0];
Returns Promise<UserItemRef[]>
getLocale
Метод позволяет получить локаль пользователя.
Локаль состоит из двух частей, разделенных при помощи дефиса:
Примеры:
const currentUser = await System.users.getCurrentUser(); const userLocale = await currentUser.getLocale(); if (userLocale.startsWith('ru-')) { Context.data.message = "Привет мир!"; } else if (userLocale.startsWith('es-')) { Context.data.message = "Hola mundo!"; } else { Context.data.message = "Hello world!"; }
Returns Promise<string>
Строковое значение локали.
normalize
Удаление дублирующихся данных в массивах.
Выполнить удаление дубликатов в полях, в которых хранятся массивы ссылок на объекты системы (пользователи, файлы, элементы приложений, документы).
Этот метод, например, можно вызвать после массового изменения данных в объекте.
const app1 = await Context.data.app1.fetch(); const app2 = await Context.data.app2.fetch(); app1.data.executors.push(app2.data.executors); app1.normalize(); // Далее перебираем элементы нового массива app1.data.executors.forEach( ... );
Returns void
positions
Метод позволяет получить список должностей, на которые назначен пользователь.
const currentUser = await System.users.getCurrentUser(); const positions = await currentUser.positions();
Returns Promise<OrganisationStructureItem[]>
removeFromPosition
Метод позволяет снять пользователя с должности.
После использования этого метода необходимо сохранить объект пользователя.
Parameters
position: OrganisationStructureItem
Returns void
save
Метод сохраняет объект пользователя.
Метод позволяет обновлять текущего пользователя и приглашать новых пользователей. Поля, доступные для редактирования:
fullname
,mobilePhone
,workPhone
,birthDate
,hireDate
,avatar
,timezone
,accounts
,displayedPosition
иadditionalData
. Для приглашения нового пользователя обязательным полем являетсяemail
.Обновление:
const user = await Context.data.user.fetch(); const timezones = System.timezones.all().filter( timezone => timezone.name === "Africa/Bujumbura" ) user.data.timezone = timezones[0].name; user.data.mobilePhone!.tel = "9655555555"; user.data.fullname!.firstname = "Игорь"; await user.save();
Для отправки приглашения новому пользователю необходимо его инициализировать:
const user = System.users.create(); user.data.email = "example@example.com"; user.data.fullname = { lastname: "Иванов", firstname: "Иван", middlename: "Иванович" } await user.save();
Returns Promise<void>
setLocale
Метод позволяет изменить локаль (язык) пользователя.
В качестве аргумента
locale
передаётся код локали, состоящий из двух частей, разделённых при помощи дефиса:Примеры:
Если среди доступных в компании нет локали, переданной в метод, работа метода будет завершена с ошибкой.
// получаем новую локаль пользователя из контекста const locale = Context.data.new_locale; if (!locale) { throw new Error('Не указана новая локаль пользователя'); } // получаем текущего пользователя const user = await System.users.getCurrentUser(); // меняем локаль пользователея await user.setLocale(locale);
Parameters
locale: string
Returns Promise<void>
setPositions
Метод позволяет задать список должностей, на которые назначен пользователь.
При этом предудущие значения должностей пользователя будут потеряны. После использования этого метода необходимо сохранить объект пользователя.
Parameters
positions: OrganisationStructureItem[]
Returns void
unblock
Метод позволяет разблокировать учётную запись пользователя.
await Context.data.user.unblock();
Returns Promise<void>
Properties
Methods