EmployeeToUpdate

message EmployeeToUpdate
{
    optional EmployeePermissionsPatch Permissions = 1;
    optional EmployeePositionPatch Position = 2;
    optional EmployeeCanBeInvitedForChatPatch CanBeInvitedForChat = 3;
}

Структура содержит информацию о данных сотрудника, которые необходимо изменить. Принимается методом UpdateEmployee.

  • Permissions - структура для изменения разрешений

  • Position - структура для изменения должности

  • CanBeInvitedForChat - структура для изменения необходимости отображать сотрудника в списке получателей Сообщений в веб-интерфейсе

Необходимо заполнить только те поля структуры, которые соотвествуют данным, требующим изменения.

EmployeePermissionsPatch

message EmployeePermissionsPatch
{
    optional EmployeeDepartmentPatch Department = 1;
    optional EmployeeIsAdministratorPatch IsAdministrator = 2;
    optional EmployeeDocumentAccessLevelPatch DocumentAccessLevel = 3;
    optional EmployeeSelectedDepartmentsPatch SelectedDepartments = 4;
    repeated EmployeeAction Actions = 5;
    optional AuthorizationPermissionPatch AuthorizationPermission = 6;
}

Структура содержит информацию о настройках разрешений сотрудника, которые необходимо изменить.

  • Department - структура для изменения подразделения

  • IsAdministrator - структура для изменения права администрировать организацию

  • DocumentAccessLevel - структура для изменения уровня доступа к документам

  • SelectedDepartments - структура для изменения списка подразделений, к которым имеет доступ сотрудник (играет роль только в случае DocumentAccessLevel = SelectedDepartments)

  • Actions - действия сотрудника, права на которые требуется добавить или убрать

  • AuthorizationPermission - структура с информацией о наличии ограничения доступа сотрудника к сервису

Необходимо заполнить только те поля структуры, которые соотвествуют данным, требующим изменения.

EmployeeDepartmentPatch

message EmployeeDepartmentPatch
{
    required string DepartmentId = 1;
}

Структура для изменения подразделения сотрудника.

  • DepartmentId - идентификатор подразделения, в которое необходимо переместить сотрудника

EmployeeIsAdministratorPatch

message EmployeeDepartmentPatch
{
    required bool IsAdministrator = 1;
}

Структура для изменения права сотрудника администрировать организацию.

  • IsAdministrator - имеет ли право сотрудник администрировать организацию

EmployeeDocumentAccessLevelPatch

message EmployeeDocumentAccessLevelPatch
{
    required DocumentAccessLevel DocumentAccessLevel = 1;
}

Структура для изменения уровня доступа сотрудника к документам.

EmployeeSelectedDepartmentsPatch

message EmployeeSelectedDepartmentsPatch
{
    repeated string SelectedDepartmentIds = 1;
}

Структура для изменения списка подразделений, к которым имеет доступ сотрудник (играет роль только в случае DocumentAccessLevel = SelectedDepartments).

  • SelectedDepartmentIds - новый список подразделений, к которым имеет доступ сотрудник

EmployeePositionPatch

message EmployeePositionPatch
{
    optional string Position = 1;
}

Структура для изменения должности сотрудника.

  • Position - новая должность сотрудника

EmployeeCanBeInvitedForChatPatch

message EmployeeCanBeInvitedForChatPatch
{
    required bool CanBeInvitedForChat = 1;
}

Структура для изменения необходимости отображать сотрудника в списке получателей Сообщений в веб-интерфейсе.

  • CanBeInvitedForChat - нужно ли отображать сотрудника в списке получателей Сообщений в веб-интерфейсе

AuthorizationPermissionPatch

message AuthorizationPermissionPatch
{
    required bool IsBlocked = 1;
    optional string Comment = 2;
}

Структура для изменения данных об ограничении доступа пользователя к сервису.

  • IsBlocked - флаг наличия ограничения доступа пользователя к сервису (false - доступ разрешен, true - доступ ограничен)

  • Comment - причина ограничения доступа пользователя к сервису. Длина не более 500 символов.