Substitutions – замещения
<< Click to Display Table of Contents >> Объектная модель > CoreEntities – администрирование Substitutions – замещения |
Замещение позволяет передавать права доступа пользователя на время его отсутствия другому сотруднику компании. Например, когда сотрудник уезжает в командировку, уходит в отпуск или на больничный, для него назначается замещающий. Чтобы выполнять срочную работу за отсутствующего сотрудника, замещающему передаются права доступа на сущности и типы сущностей.
Замещение настраивается и хранится в справочнике Замещения. Просматривать справочник могут все пользователи. Создавать и изменять записи в справочнике – только администраторы или пользователи с соответствующими правами.
Также в системе настроено автоматическое или системное замещение. Например, руководитель подразделения получает права доступа всех сотрудников своего подразделения. Системное замещение используется для передачи прав одного пользователя другому системой. В списке записей справочника системное замещение не отображается. Также в этом случае папка «Входящие» отсутствующего сотрудника не отображается в проводнике у замещающего.
ВАЖНО. Системные замещения можно создавать только программно. Для этого при создании замещения нужно установить значение признака IsSystem в True.
Для программной работы с замещениями предназначен репозиторий Sungero.CoreEntities.Substitutions. Наследник от Sungero.CoreEntities.DatabookEntry.
Методы
Имя |
Описание |
---|---|
Получить список действующих пользователей, которые замещают заданного пользователя |
|
UsersWhoSubstitute() |
Получить список всех пользователей, которые замещают заданного пользователя |
Свойства
Имя |
Тип |
Описание |
---|---|---|
ActiveSubstitutedUsers |
IEnumerable<IUser> |
Список действующих пользователей, которых замещает текущий пользователь |
ActiveSubstitutedUsersWithoutSystem |
IEnumerable<IUser> |
Список действующих пользователей, которых замещает текущий пользователь без учета системных замещений |
SubstitutedUsers |
IEnumerable<IUser> |
Список пользователей, которых замещает текущий пользователь |
SubstitutedUsersWithoutSystem |
IEnumerable<IUser> |
Список пользователей, которых замещает текущий пользователь без учета системных замещений |
SubstitutionFolders |
IEnumerable<IFolder> |
Список папок отсутствующих пользователей |
ISubstitution – замещение
Информация о замещении.
Свойства
Имя |
Тип |
Описание |
---|---|---|
AccessRights |
Права доступа |
|
Comment |
string |
Описание |
DelegateStrictRights |
bool |
Признак того, что нужно делегировать строгий доступ |
DisplayValue |
string |
Отображаемое имя сущности |
EndDate |
Nullable<DateTime> |
Дата окончания замещения |
History |
История работы с сущностью |
|
Id |
long |
Идентификатор |
Info |
Информация о типе сущности |
|
IsSystem |
Nullable<bool> |
Признак того, что замещение системное |
Name |
string |
Имя |
StartDate |
Nullable<DateTime> |
Дата начала замещения |
State |
Состояние типа сущности |
|
Status |
Nullable<Enumeration> |
Состояние сущности. Возможные значения: Действующая, Закрытая |
StatusAllowedItems |
EnumerationItems |
Доступные значения для свойства Status |
Substitute |
Замещающий пользователь. Не должен быть служебным |
|
User |
Отсутствующий пользователь, для которого настраивается замещение |
Пример. Создание системного замещения
/// </summary>
/// <param name="substitutedUser">Отсутствующий пользователь.</param>
/// <param name="substitute">Замещающий пользователь.</param>
public static void CreateSystemSubstitution(IUser substitutedUser, IUser substitute)
{
if (Equals(substitutedUser, substitute))
return;
var substitution = Substitutions.Create();
substitution.User = substitutedUser;
substitution.Substitute = substitute;
substitution.IsSystem = true;
// Передавать права на документы со строгим доступом.
substitution.DelegateStrictRights = true;
substitution.Save();
}
© Компания Directum, 2024 |