You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 14 Next »

Данный класс предоставляет методы для взаимодействия с информацией о текущем пользователе. Доступ к информации о пользователе осуществляется быстрее при помощи запросов SimpleUser API, чем SimpleRecord.


Свойства

s_user.accessToken


Используйте данное свойство класса, чтобы получить токен доступа текущего пользователя.


Возвращаемое значение:

ТипОписание
StringТокен доступа текущего пользователя.
s_user.accessToken
const url = new URL(`${API_BASE_URL}/export/json/${s_list.getTablesName()[0]}`);
url.searchParams.set('access-token', s_user.accessToken);
url.searchParams.set('condition', s_list.getQuery());
window.open(url, "_blank");

s_user.firstName


Это свойство возвращает имя текущего пользователя. 


Возвращаемое значение:

ТипОписание
StringИмя текущего пользователя.


Пример:

s_user.firstName
console.log(s_user.firstName);
//Иван


s_user.lastName


Данное свойство возвращает фамилию текущего пользователя.


Возвращаемое значение:

ТипОписание
StringФамилия текущего пользователя.


Пример:

s_user.lastName
console.log(s_user.lastName);
//Иванов

s_user.userID


Используйте данное свойство, чтобы получить ID текущего пользователя.


Возвращаемое значение:

ТипОписание
StringЗначение sys_id текущего пользователя


Пример:

s_user.userID
const currentCaller = new SimpleRecord(s_user.user.essence);
currentCaller.get(s_user.userID, ()=> {
  s_form.setValue('email', currentCaller.email);
});

s_user.user


Данное свойство хранит объект с данными о текущем пользователе, такими как имя, фамилия, значение sys_id и другими. 


Возвращаемое значение:

ТипОписание
ObjectОбъект, содержащий информацию о пользователе.


Пример:

s_user.user
console.log(JSON.stringify(s_user.user, null, 2));
/*"{
  "sys_id": "155931135900000001",
  "first_name": "Admin",
  "last_name": "Admin",
  "username": "admin",
  "essence": "user",
  "timezone": "Europe/Moscow",
  "language": "en",
  "photo_path": null,
  "elevate_access": -1,
  "version": "1.3.6",
  "dictionary": {...},
  "impersonate_state": null
}"*/

s_user.userName


Данное свойство позволяет получить логин (username) текущего пользователя (например, helpdesk.agent).


Возвращаемое значение:

ТипОписание
StringЛогин текущего пользователя

Пример:

s_user.userName
console.log(s_user.userName);
//"admin"

Методы

s_user.getPreference(name)


Используйте этот метод, чтобы получить указанные значения настроек для текущего пользователя. 

Данный метод является асинхронным. Для оптимальной работы используйте ключевое слово await, как в примере ниже.


Параметр:

НазваниеТипОбязательныйЗначение по умолчанию
nameArray of StringsДаНет

Возвращаемое значение:

ТипОписание
ObjectЭтот метод возвращает объект Promise, содержащий массив строк.

Строкой можно передать название только одной пользовательской настройки. Для того чтобы передать названия большего количества настроек, используйте тип Array, как показано ниже.

Пример:

getPreference (String type)
const getMyPreference = async () => {
    const response = await s_user.getPreference('preference_name');
};
getPreference (Array type)
const getMyPreference = async () => {
    const response = await s_user.getPreference(['preference_name', 'preference2_name']);
};

s_user.getFullName()


Используйте этот метод, чтобы получить полное имя текущего пользователя (значения полей Имя и Фамилия).


Возвращаемое значение:

ТипОписание
StringИмя и фамилия текущего пользователя

s_user.setPreference(name, value)


Данный метод позволяет установить значение указанной настройки для текущего пользователя. Для того чтобы получить ранее заданное значение настройки, используйте метод s_user.getPreference(name).


Данный метод является асинхронным. Для оптимальной работы используйте ключевое слово  await, как в примере ниже.


Параметры:

НазваниеТипОбязательныйЗначение по умолчанию
nameStringДаНет
valueStringДаНет


Возвращаемое значение:

ТипОписание
ObjectМетод возвращает объект Promise, содержащий данные.


Пример:

setPreference
const setMyPreference = async () => {
    const response = await s_user.setPreference('menu.tab', 1);
};

  • No labels