api.employee
Персональные настройки сотрудника
-
api.employee.getPersonalSettings(employeeUuid)
Получение персональных настроек для пользователя.
Параметр метода:
- employeeUuid — идентификатор пользователя или суперпользователя. String.
Возвращает объект с персональными настройками:
- Если у сотрудника или суперпользователя заданы персональные настройки, тогда возвращаются они.
- Если персональных настроек нет, то проверяется наличие глобальных настроек заданных в интерфейсе администратора и если они есть, то возвращаются они.
-
Если глобальных настроек тоже нет, то при получении настроек будут возвращены настройки по умолчанию:
- локаль по умолчанию = 'ru';
- тема в операторе по умолчанию = 'system#default';
- часовой пояс по умолчанию = null;
- домашняя страница = null.
Методы для получения различных настроек, связанных с пользователем:
- getLocale() — получение локали;
- getTimeZone() — получение часового пояса;
- getThemeOperator() — получение кода темы в интерфейсе оператора;
- getThemeAdmin() — получение кода темы в интерфейсе администратора;
- getHomePage() — получение URL домашней страницы.
Пример 1. Работа с обычным пользователем:
def settings = api.employee.getPersonalSettings('employee$123') // получение объекта персональных настроек для пользователя 'employee$123' String locale = settings.getLocale() // получение кода локали ('ru', 'en' и другие) String timeZoneCode = settings.getTimeZone() // получение кода часового пояса ('Asia/Ekaterinburg' и другие) String theme = settings.getThemeOperator() // получение кода темы в интерфейсе оператора ('blue', 'site' и другие)
Пример 2. Работа с суперпользователем:
def settings = api.employee.getPersonalSettings('superUser$nick') // получение объекта персональных настроек для суперпользователя 'nick' String locale = settings.getLocale() // получение кода локали ('ru', 'en' и другие) String timeZoneCode = settings.getTimeZone() // получение кода часового пояса ('Asia/Ekaterinburg' и другие) String theme = settings.getThemeOperator() // получение кода темы в интерфейсе оператора ('blue', 'site' и другие)
-
api.employee.getTimeZone(employeeUuid)
Получение объекта часового пояса.
Данный метод может использоваться в том случае, если часовой пояс в настройках сотрудника является элементом справочника "Часовые пояса".
Параметр метода:
- employeeUuid — идентификатор пользователя. String.
Возвращает:
- объект часового пояса;
- null — если часовой пояс в настройках пользователя не указан или не является элементом справочника "Часовые пояса".
Методы для получения параметров часового пояса:
- timeZone.code — получение кода часового пояса;
- timeZone.title — получение названия часового пояса.
-
api.employee.setTimeZone(employee, timeZoneId)
Установка часового пояса для конкретного сотрудника.
Параметры метода:
- employee — объект сотрудника или его идентификатор. Object;
- timeZoneId — идентификатор часового пояса. String
Пример:
api.employee.setTimeZone('employee$123', 'Asia/Ekaterinburg')
-
api.employee.setTimeZoneEntireOu(employee, timeZoneAttrCode)
Установка часовых поясов вложенным сотрудникам отдела согласно значению, указанному в головном отделе.
Параметры метода:
- employee — объект сотрудника или его идентификатор. Object;
- timeZoneAttrCode — код атрибута типа "Элемент справочника", в котором хранится информация о часовом поясе String.
Возвращает сообщение об успешной установке часовых поясов.
Пример.
api.employee.setTimeZoneEntireOu('ou$123', 'timeZoneAttr')
-
api.employee.setTimeZoneAccordingToLocation(object, timeZoneAttrCode, relatedLocationAttrCode)
Установка часовых поясов вложенным сотрудникам отдела согласно значению, указанному в связанном объекте.
Параметры:
- object — объект отдела или его идентификатор. Object;
- timeZoneAttrCode — код атрибута типа "Элемент справочника", в котором хранится информация о часовом поясе. String;
- relatedLocationAttrCode — код атрибута типа "Ссылка на БО", в котором хранится информация об объекте с указанным часовым поясом. String.
Возвращает сообщение об успешной установке часовых поясов.
Пример:
api.employee.setTimeZoneAccordingToLocation('ou$123', 'timeZoneAttr', 'relatedAttrWithTimeZoneAttr')
-
api.employee.setHomePage(employee, homePage)
Установка домашней страницы для конкретного сотрудника.
Страницей по умолчанию является часть ссылки после `#`. Метод поддерживает следующие форматы задания значения:
- Полный или частичный адрес с символом решетки (#) - 'http://example.ru/sd/operator/#uuid:ou$123' или '#uuid:ou$123' (домашней страницей станет - uuid:ou$123).
- Ожидаемая страница по умолчанию (часть после #) - 'uuid:ou$123'.
Параметры метода:
- employee — объект отдела или его идентификатор. Object;
- homePage — домашняя страница. String;
Пример:
api.employee.setHomePage('employee$123', 'uuid:ou$123')
-
api.employee.setLocale(employee, locale)
Установка локали для конкретного сотрудника.
Параметры метода:
- employee — объект отдела или его идентификатор. Object;
- locale — код локали. String;
Пример:
api.employee.setLocale(subject, 'en')
-
api.employee.setTheme(employee, themeCode)
Установка темы для всех интерфейсов для конкретного сотрудника.
Параметры метода:
- employee — объект отдела или его идентификатор. Object;
-
themeCode — код темы. String;
Коды тем: 'blue' (основная), 'site' (фирменная), 'scheme1' (сине-фиолетовая), 'scheme2' (сине-оранжевая), 'scheme3' (сиреневая), 'scheme4' (оранжевая), 'scheme5' (светлая), 'scheme6' (бронзовая), 'system#default' (тема по умолчанию).
Пример:
api.employee.setTheme(subject, 'scheme1')
-
api.employee.setTheme(employee, themeCode, module)
Установка темы для конкретного интерфейса для конкретного сотрудника.
Параметры метода:
- employee — объект отдела или его идентификатор. Object;
-
themeCode — код темы. String;
Коды тем: 'blue' (основная), 'site' (фирменная), 'scheme1' (сине-фиолетовая), 'scheme2' (сине-оранжевая), 'scheme3' (сиреневая), 'scheme4' (оранжевая), 'scheme5' (светлая), 'scheme6' (бронзовая), 'system#default' (тема по умолчанию).
- module — модуль ('admin' - для технолога, 'operator' - для оператора). String;
Пример:
api.employee.setTheme(subject, 'scheme2', 'admin')
Поиск активных пользователей
-
api.employee.getActiveEmployees()
Получение активных пользователей (исключая суперпользователей).
-
api.employee.getActiveEmployeesUUIDs()
Получение идентификаторов активных пользователей (исключая суперпользователей).
Возвращает UUID'ы активных пользователей.
-
api.employee.getLicensesUsage()
Получение информации об использовании лицензий. Метод для поиска числа активных пользователей, отсортированных по лицензиям, в том числе нелицензированных пользователей.
Возвращает ассоциативный список: ключ — код лицензии, значение — число активных пользователей.