Управление режимом редактирования оргструктуры по внешнему ID
PUT/api/v1/clients/:clientId/orgStructuresByExternalId/:externalId/editLock
Описание метода
Захватывает либо освобождает режим редактирования оргструктуры, найденной по externalId — в зависимости от query-параметра action.
Для опубликованной оргструктуры (status = PUBLISHED) ACQUIRE перенаправляется на связанную копию-черновик: если копии ещё нет, бэк создаёт её (полнаЛНА (Локальный нормативный акт). Локальный нормативный акт — внутренний документ организации, с которым сотрудники знакомятся через HRlink. Управляется через отдельный набор API-методов.я глубокая копия дерева узлов и сотрудников оригинала) и сразу захватывает на ней режим редактирования. redirectToDraftId в ответе указывает на IDidВнутренний идентификатор сущности в формате UUID, генерируемый HRlink при создании. Неизменяемый, используется во всех внутренних операциях. копии, на которую должен перейти UI; structure в этом случае — данные копии, а не исходной опубликованной записи.
Итоговое состояние операции возвращается в поле state:
-
ACQUIRED— режим захвачен инициатором (или уже принадлежал ему — no-op). -
OCCUPIED— захват не удался: режим уже занят другим пользователем (force=false). -
TAKEN_OVER— режим перехвачен у другого пользователя (force=true). Прежнему держателю лока отправляется WebSocket-уведомлениеORG_STRUCTURE_EDIT_LOCK_TAKEN_OVER. -
RELEASED— режим освобождён (или был свободен — no-op).
Валидации запроса
-
Тело запроса задано.
-
Query-параметр
actionраспознан какACQUIREлибоRELEASE. -
IDidВнутренний идентификатор сущности в формате UUID, генерируемый HRlink при создании. Неизменяемый, используется во всех внутренних операциях. клиента соответствует формату UUID, клиент существует, не удалён, к нему относится пользователь, выполняющий операцию.
-
У пользователя клиента есть право
ORG_STRUCTURES_UPDATE. -
Оргструктура с заданным
externalIdсуществует, принадлежит клиенту, не является Юридической. -
Если
versionзадана — совпадает с актуальной версией в БД (оптимистичная блокировка). -
Оргструктура не находится в статусе
ARCHIVED(проверяется для обоихaction). -
Для
action=RELEASE— режим редактирования свободен либо удерживается инициатором операции. -
Функционал оргструктур включён в настройках клиента.
Request
Responses
- 200
- 400
- 401
- 403
- 429
Успешная операция.
Ошибка при валидации данных запроса.
Запрос не аутенифицирован.
Для заданного пользователя доступ к ресурсу запрещен.
Превышен разрешенный лимит запросов за период.