Задача [API39]: API для делегирования без учета положения в орг. структуре

Формулировка проблемы: для реализации партнерами внешнего модуля интеграции требуется API для делегирования прав без учета положения в орг. структуре.

Связанные задачи: при реализации данной задачи необходимо учитывать реализацию задачи 2.61.RM2.

Решение: необходимо реализовать три новых метода API, которые должны позволять:

Метод, возвращающий список прав, которые делегировал авторизованный пользователь

URL метода: rest/api/delegation/delegated_actions. Типа запроса: GET.

Метод принимает параметр:

Метод возвращает json со следующими массивами:

Каждый массив содержит следующие поля:

Значения параметров actionID и actionName:

Ежедневник:

actionID actionName

6

просмотр

1

создание

2

редактирование

3

удаление

4

изменение статуса

Работы:

actionID actionName

111

просмотр

101

создание

104

редактирование

106

изменение процента выполнения

107

удаление

108

изменение статуса

156

согласование/рассмотрение

157

утверждение

Проекты:

actionID actionName

130

просмотр

129

редактирование

132

комментирование

102

назначение ответственных

Пример возвращаемых массивов:


{
  "delegatedTasks": [
    {
      "userId": "id",
      "userName": "Фамилия И.",
      "actions":[{"actionId" :6, "actionName": "Просмотр" }]
    }
  ],
  "delegatedActions": [
    {
      "userId": "id",
      "userName": "Фамилия И.",
      "actions":[{"actionId" :130, "actionName": "Просмотр" }]
    }
  ],
  "delegatedAssignments": [
    {
      "userId": "id",
      "userName": "Фамилия И.",
      "actions":[{"actionId" :111, "actionName": "Просмотр" }]
    }
  ]
}

Метод, позволяющий добавлять делегирование прав

URL метода: rest/api/delegation/add_delegated_actions. Типа запроса: POST.

Метод принимает следующие параметры:

Альтернативные потоки событий:

Метод, позволяющий удалять делегирование прав

URL метода: rest/api/delegation/delete_delegated_actions. Типа запроса: POST.

Метод принимает следующие параметры:

Альтернативные потоки событий: