1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-08-10 22:41:43 +02:00

Реализация api методов блока "Скрам"

https://apidocs.bitrix24.ru/api-reference/sonet-group/scrum/index.html
This commit is contained in:
Hertuno
2025-07-27 21:24:31 +05:00
parent a650e310c4
commit 36d1fd9497

View File

@@ -5114,6 +5114,856 @@
#КонецОбласти
#Область РаботаСоСкрамом
#Область Бэклог
// Добавить бэклог
// Добавляет бэклог в Скрам по структуре полей
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.backlog.add](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/backlog/tasks-api-scrum-backlog-add.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// СтруктураПолей - Структура Из КлючИЗначение - Структура полей бэклога (см. ПолучитьДоступныеПоляБэклога) - fields
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ДобавитьБэклогВСкрам(Знач URL, Знач СтруктураПолей, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.backlog.add");
OPI_Инструменты.ДобавитьПоле("fields", СтруктураПолей, "Коллекция", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Обновить бэклог
// Обновляет бэклог в Скрам по структуре полей
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.backlog.update](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/backlog/tasks-api-scrum-backlog-update.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDБэклога - Число,Строка - ID бэклога - backlog
// СтруктураПолей - Структура Из КлючИЗначение - Структура полей бэклога (см. ПолучитьДоступныеПоляБэклога) - fields
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ОбновитьБэклог(Знач URL, Знач IDБэклога, Знач СтруктураПолей, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.backlog.update");
OPI_Инструменты.ДобавитьПоле("id" , IDБэклога , "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("fields", СтруктураПолей, "Коллекция", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Получить бэклог
// Получает поля бэклога (см. ПолучитьДоступныеПоляБэклога) по идентификатору рабочей группы Скрама
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.backlog.get](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/backlog/tasks-api-scrum-backlog-get.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDГруппы - Число,Строка - ID рабочей группы - group
// СтруктураПолей - Структура Из КлючИЗначение - Структура полей задачи (см. ПолучитьДоступныеПоляБэклога) - fields
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ПолучитьЗначениеПолейБэклога(Знач URL, Знач IDГруппы, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.backlog.get");
OPI_Инструменты.ДобавитьПоле("id", IDГруппы, "Строка", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Удалить бэклог
// Удаляет бэклог по идентификатору
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.backlog.delete](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/backlog/tasks-api-scrum-backlog-delete.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDБэклога - Число,Строка - ID бэклога - backlog
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция УдалитьБэклог(Знач URL, Знач IDБэклога, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.backlog.delete");
OPI_Инструменты.ДобавитьПоле("id", IDБэклога, "Строка", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Получить список доступных полей
// Получает список доступных полей бэклога
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.backlog.getFields](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/backlog/tasks-api-scrum-backlog-get-fields.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ПолучитьДоступныеПоляБэклога(Знач URL, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.backlog.getFields");
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
#КонецОбласти
#Область КанбанСкрама
// Создать стадию канбана Скрама
// Создает стадию канбана Скрама по структуре полей (см. ПолучитьДоступныеПоляСтадииКанбанаСкрама)
// Канбан Скрама обязательно должен содержать в себе стадии с типом новая NEW и финальная FINISH.
// Используйте метод только для активных спринтов, то есть с полем "status": "active".
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.kanban.addStage](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/kanban/tasks-api-scrum-kanban-add-stage.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url - backlog
// СтруктураПолей - Структура Из КлючИЗначение - Структура полей стадии - fields
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция СоздатьСтадиюКанбанаСкрама(Знач URL, Знач СтруктураПолей, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.kanban.addStage");
OPI_Инструменты.ДобавитьПоле("fields", СтруктураПолей, "Коллекция", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Обновить стадию канбана Скрама
// Обновляет стадию канбана Скрама по структуре полей (см. ПолучитьДоступныеПоляСтадииКанбанаСкрама)
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.kanban.updateStage](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/kanban/tasks-api-scrum-kanban-update-stage.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDСтадии - Число,Строка - ID стадии - stage
// СтруктураПолей - Структура Из КлючИЗначение - Структура полей стадии - fields
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ОбновитьСтадиюКанбанаСкрама(Знач URL, Знач IDСтадии, Знач СтруктураПолей, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.kanban.updateStage");
OPI_Инструменты.ДобавитьПоле("stageId", IDСтадии , "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("fields" , СтруктураПолей, "Коллекция", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Получить стадии канбана спринта
// Получает стадии канбана по идентификатору спринта
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.kanban.getStages](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/kanban/tasks-api-scrum-kanban-get-stages.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDСринта - Число,Строка - ID спринта - sprint
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
// tasks.api.scrum.kanban.getStages Получает стадии канбана по id спринта
Функция ПолучитьСтадииКанбанаСкрама(Знач URL, Знач IDСринта, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.kanban.getStages");
OPI_Инструменты.ДобавитьПоле("sprintId", IDСринта, "Строка", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Удалить стадию канбана спринта
// Удаляет стадию канбана Скрама. Стадия не будет удалена, если в ней есть задачи
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.kanban.deleteStage](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/kanban/tasks-api-scrum-kanban-delete-stage.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDСтадии - Число,Строка - ID стадии - stage
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция УдалитьСтадиюКанбанаСкрама(Знач URL, Знач IDСтадии, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.kanban.deleteStage");
OPI_Инструменты.ДобавитьПоле("stageId", IDСтадии, "Строка", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Добавить задачу
// Добавляет задачу в стадию канбана Скрама
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.kanban.addTask](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/kanban/tasks-api-scrum-kanban-add-task.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDСринта - Число,Строка - ID спринта - sprint
// IDЗадачи - Число,Строка - ID задачи - task
// IDСтадии - Число,Строка - ID задачи - stage
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
// tasks.api.scrum.kanban.addTask Добавляет задачу в канбан Скрама
Функция ДобавитьЗадачуВСтадиюКанбанаСкрама(Знач URL, Знач IDСринта, Знач IDЗадачи, Знач IDСтадии, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.kanban.addTask");
OPI_Инструменты.ДобавитьПоле("sprintId", IDСринта, "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("taskId" , IDЗадачи, "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("stageId" , IDСтадии, "Строка", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Удалить задачу
// Удаляет задачу из канбана Скрама. Задача останется в спринте на странице планирования. Метод не перенесет задачу в бэклог.
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.kanban.deleteTask](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/kanban/tasks-api-scrum-kanban-delete-task.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDСринта - Число,Строка - ID спринта - sprint
// IDЗадачи - Число,Строка - ID задачи - task
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция УдалитьЗадачуКанбанаСкрама(Знач URL, Знач IDСринта, Знач IDЗадачи, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.kanban.addTask");
OPI_Инструменты.ДобавитьПоле("sprintId", IDСринта, "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("taskId" , IDЗадачи, "Строка", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Получить список доступных полей
// Получает список доступных полей стадий канбана скрама
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.kanban.getFields](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/kanban/tasks-api-scrum-kanban-get-fields.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ПолучитьДоступныеПоляСтадииКанбанаСкрама(Знач URL, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.kanban.getFields");
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
#КонецОбласти
#Область Эпики
// Добавить эпик
// Добавляет эпик в Скрам по структуре полей
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.epic.add](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/epic/tasks-api-scrum-epic-add.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// СтруктураПолей - Структура Из КлючИЗначение - Структура полей эпика (см. ПолучитьДоступныеПоляЭпика) - fields
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ДобавитьЭпикСкрама(Знач URL, Знач СтруктураПолей, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.epic.add");
OPI_Инструменты.ДобавитьПоле("fields", СтруктураПолей, "Коллекция", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Обновить эпик
// Обновляет эпик в Скраме по структуре полей
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.epic.update](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/epic/tasks-api-scrum-epic-update.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЭпика - Число,Строка - ID эпика - epic
// СтруктураПолей - Структура Из КлючИЗначение - Структура полей эпика (см. ПолучитьДоступныеПоляЭпика) - fields
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ОбновитьЭпикСкрама(Знач URL, Знач IDЭпика, Знач СтруктураПолей, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.epic.update");
OPI_Инструменты.ДобавитьПоле("id" , IDЭпика , "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("fields", СтруктураПолей, "Коллекция", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// ПолучитьЭпик
// Получает значения полей эпика по его id
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.epic.get](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/epic/tasks-api-scrum-epic-get.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЭпика - Число,Строка - ID эпика - epic
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ПолучитьЭпикСкрама(Знач URL, Знач IDЭпика, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.epic.get");
OPI_Инструменты.ДобавитьПоле("id", IDЭпика, "Строка", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Получить список эпиков
// Получает список эпиков (50 шт. за запрос максимум) с фильтром или без (см. ПолучитьСтруктуруФильтраЭпиков)
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.epic.list](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/epic/tasks-api-scrum-epic-get.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// Фильтр - Структура из КлючИЗначение - Структура отбора эпиков (см. ПолучитьСтруктуруФильтраЭпиков) - filter
// Отступ - Число, Строка - Отступ от начала списка для полчения эпиков > 50 шт. рекурсивно - offset
// Поля - Строка, Массив Из Строка - Список полей эпиков в ответе. Все невычисляемые по умолчанию - select
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ПолучитьСписокЭпиковСкрама(Знач URL, Знач Фильтр = "", Знач Отступ = 0, Знач Поля = "", Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.epic.list");
OPI_Инструменты.ДобавитьПоле("filter", Фильтр, "Коллекция", Параметры);
OPI_Инструменты.ДобавитьПоле("start" , Отступ, "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("select", Поля , "Массив" , Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Удалить эпик
// Удаляет эпик
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.epic.delete](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/epic/tasks-api-scrum-epic-delete.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЭпика - Число,Строка - ID эпика - epic
// СтруктураПолей - Структура Из КлючИЗначение - Структура полей эпика (см. ПолучитьДоступныеПоляЭпика) - fields
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция УдалитьЭпикСкрама(Знач URL, Знач IDЭпика, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.epic.delete");
OPI_Инструменты.ДобавитьПоле("id", IDЭпика, "Строка", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Получить список доступных полей
// Получает список доступных полей эпика
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.epic.getFields](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/epic/tasks-api-scrum-epic-get-fields.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ПолучитьДоступныеПоляЭпика(Знач URL, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.epic.getFields");
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Возвращает структуру полей для фильтрации эпиков в методе ПолучитьСписокЭпиковСкрама
//
// Примечание:
// Возврат полей в качестве соответствия позволяет указывать тип фильтрации перед названием фильтруемого поля
// Типы фильтрации: !, <, <=, >, >=. Например: !ID:3 (т.е. ID не равно 3)
//
// Параметры:
// Пустая - Булево - Истина > структура с пустыми значениями, Ложь > в значениях будут описания полей - empty
// КакСоответствие - Булево - Истина > возвращает поля фильтра как соответствие - map
//
// Возвращаемое значение:
// Структура Из КлючИЗначение - Структура полей
Функция ПолучитьСтруктуруФильтраЭпиков(Знач Пустая = Ложь, Знач КакСоответствие = Ложь) Экспорт
// Подробнее
// https://apidocs.bitrix24.ru/api-reference/tasks/tasks-task-list.html
OPI_ПреобразованиеТипов.ПолучитьБулево(Пустая);
OPI_ПреобразованиеТипов.ПолучитьБулево(КакСоответствие);
Если КакСоответствие Тогда
СтруктураФильтра = Новый Соответствие;
Иначе
СтруктураФильтра = Новый Структура;
КонецЕсли;
СтруктураФильтра.Вставить("ID" , "<идентификатор эпика>");
СтруктураФильтра.Вставить("DECSCRIPTION" , "<описание эпика>");
СтруктураФильтра.Вставить("GROUP_ID" , "<идентификатор рабочей группы скрама>");
СтруктураФильтра.Вставить("COLOR" , "<цвет эпика>");
СтруктураФильтра.Вставить("CREATED_BY" , "<кем создан>");
СтруктураФильтра.Вставить("MODIFIED_BY" , "<кем изменен>");
Если Пустая Тогда
СтруктураФильтра = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураФильтра);
КонецЕсли;
//@skip-check constructor-function-return-section
Возврат СтруктураФильтра;
КонецФункции
#КонецОбласти
#Область Спринты
// Добавить спринт
// Добавляет спринт в Скрам
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.sprint.add](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/sprint/tasks-api-scrum-sprint-add.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// СтруктураПолей - Структура Из КлючИЗначение - Структура полей эпика (см. ПолучитьДоступныеПоляСпринта) - fields
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ДобавитьСпринт(Знач URL, Знач СтруктураПолей, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.sprint.add");
OPI_Инструменты.ДобавитьПоле("fields", СтруктураПолей, "Коллекция", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Обновить спринт
// Обновляет спринт в Скрам
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.sprint.update](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/sprint/tasks-api-scrum-sprint-update.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDСпринта - Число,Строка - ID спринта - sprint
// СтруктураПолей - Структура Из КлючИЗначение - Структура полей эпика (см. ПолучитьДоступныеПоляСпринта) - fields
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ОбновитьСпринт(Знач URL, Знач IDСпринта, Знач СтруктураПолей, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.sprint.update");
OPI_Инструменты.ДобавитьПоле("id" , IDСпринта , "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("fields", СтруктураПолей, "Коллекция", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Запустить спринт
// Запускает спринт в Скрам
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.sprint.start](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/sprint/tasks-api-scrum-sprint-start.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDСпринта - Число,Строка - ID спринта - sprint
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ЗапуститьСпринт(Знач URL, Знач IDСпринта, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.sprint.start");
OPI_Инструменты.ДобавитьПоле("id", IDСпринта, "Строка", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Завершить активный спринт
// Завершает активный спринт выбранного Скрама
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.sprint.complete](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/sprint/tasks-api-scrum-sprint-complete.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDГруппы - Число,Строка - ID рабочей группы скрама - group
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ЗавершитьАктивныйСпринт(Знач URL, Знач IDГруппы, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.sprint.complete");
OPI_Инструменты.ДобавитьПоле("id", IDГруппы, "Строка", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Получить спринт
// Получает значения полей спринта по его id
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.sprint.get](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/sprint/tasks-api-scrum-sprint-get.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDСпринта - Число,Строка - ID спринта - sprint
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ПолучитьСпринт(Знач URL, Знач IDСпринта, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.sprint.get");
OPI_Инструменты.ДобавитьПоле("id", IDСпринта, "Строка", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Получить список спринтов
// Получает список спринтов (50 шт. за запрос максимум) с фильтром или без (см. ПолучитьСтруктуруФильтраСпринтов)
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.sprint.list](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/sprint/tasks-api-scrum-sprint-list.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// Фильтр - Структура из КлючИЗначение - Структура отбора эпиков (см. ПолучитьСтруктуруФильтраЭпиков) - filter
// Отступ - Число, Строка - Отступ от начала списка для полчения эпиков > 50 шт. рекурсивно - offset
// Поля - Строка, Массив Из Строка - Список полей эпиков в ответе. Все невычисляемые по умолчанию - select
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ПолучитьСписокСпринтов(Знач URL, Знач Фильтр = "", Знач Отступ = 0, Знач Поля = "", Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.sprint.list");
OPI_Инструменты.ДобавитьПоле("filter", Фильтр, "Коллекция", Параметры);
OPI_Инструменты.ДобавитьПоле("start" , Отступ, "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("select", Поля , "Массив" , Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Удалить спринт
// Удаляет спринт, если есть задачи, они будут перемещены в бэклог
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.sprint.delete](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/sprint/tasks-api-scrum-sprint-delete.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDСпринта - Число,Строка - ID спринта - sprint
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция УдалитьСпринт(Знач URL, Знач IDСпринта, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.sprint.delete");
OPI_Инструменты.ДобавитьПоле("id", IDСпринта, "Строка", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Получить список доступных полей
// Получает список доступных полей спринта
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.sprint.getFields](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/sprint/tasks-api-scrum-sprint-get-fields.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ПолучитьДоступныеПоляСпринта(Знач URL, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.sprint.getFields");
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Возвращает структуру полей для фильтрации спринтов в методе ПолучитьСписокСпринтов
//
// Примечание:
// Возврат полей в качестве соответствия позволяет указывать тип фильтрации перед названием фильтруемого поля
// Типы фильтрации: !, <, <=, >, >=. Например: !ID:3 (т.е. ID не равно 3)
//
// Параметры:
// Пустая - Булево - Истина > структура с пустыми значениями, Ложь > в значениях будут описания полей - empty
// КакСоответствие - Булево - Истина > возвращает поля фильтра как соответствие - map
//
// Возвращаемое значение:
// Структура Из КлючИЗначение - Структура полей
Функция ПолучитьСтруктуруФильтраСпринтов(Знач Пустая = Ложь, Знач КакСоответствие = Ложь) Экспорт
// Подробнее
// https://apidocs.bitrix24.ru/api-reference/sonet-group/scrum/sprint/tasks-api-scrum-sprint-list.html
OPI_ПреобразованиеТипов.ПолучитьБулево(Пустая);
OPI_ПреобразованиеТипов.ПолучитьБулево(КакСоответствие);
Если КакСоответствие Тогда
СтруктураФильтра = Новый Соответствие;
Иначе
СтруктураФильтра = Новый Структура;
КонецЕсли;
СтруктураФильтра.Вставить("ID" , "<идентификатор спринта>");
СтруктураФильтра.Вставить("GROUP_ID" , "<идентификатор рабочей группы скрама>");
СтруктураФильтра.Вставить("NAME" , "<имя спринта>");
СтруктураФильтра.Вставить("DATE_START" , "<дата старта>");
СтруктураФильтра.Вставить("DATE_END" , "<дата окончания>");
СтруктураФильтра.Вставить("STATUS" , "<статус спринта>");
СтруктураФильтра.Вставить("CREATED_BY" , "<кем создан>");
СтруктураФильтра.Вставить("MODIFIED_BY", "<кем изменен>");
Если Пустая Тогда
СтруктураФильтра = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураФильтра);
КонецЕсли;
//@skip-check constructor-function-return-section
Возврат СтруктураФильтра;
КонецФункции
#КонецОбласти
#Область ЗадачиСкрама
// Добавить или обновить задачу
// Добавляет или обновляет задачу Скрама
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.task.update](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/task/tasks-api-scrum-task-update.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЗадачи - Число,Строка - ID задачи - task
// СтруктураПолей - Структура Из КлючИЗначение - Структура полей эпика (см. ПолучитьДоступныеПоляЗадачиСкрама) - fields
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ДобавитьЗадачуВСкрам(Знач URL, Знач IDЗадачи, Знач СтруктураПолей, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.task.update");
OPI_Инструменты.ДобавитьПоле("id" , IDЗадачи , "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("fields", СтруктураПолей, "Коллекция", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Получить значения полей
// Получает значения полей задачи Скрама по id
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.task.get](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/epic/tasks-api-scrum-epic-get.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЗадачи - Число,Строка - ID задачи - task
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ПолучитьЗадачуСкрама(Знач URL, Знач IDЗадачи, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.task.get");
OPI_Инструменты.ДобавитьПоле("id", IDЗадачи, "Строка", Параметры);
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
// Получить список доступных полей
// Получает список доступных полей задачи скрама
//
// Примечание:
// Метод в документации API: [tasks.api.scrum.task.getFields](@apidocs.bitrix24.ru/api-reference/sonet-group/scrum/task/tasks-api-scrum-task-get-fields.html)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ПолучитьДоступныеПоляЗадачиСкрама(Знач URL, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.api.scrum.task.getFields");
Ответ = OPI_ЗапросыHTTP.PostСТелом(URL, Параметры);
Возврат Ответ;
КонецФункции
#КонецОбласти
#КонецОбласти
#КонецОбласти
#Область СлужебныеПроцедурыИФункции