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

Merge pull request #71 from Hertuno/main

Реализация api методов блока "Скрам" и тесты
This commit is contained in:
Anton Titovets
2025-07-30 13:09:42 +03:00
committed by GitHub
3 changed files with 1798 additions and 0 deletions

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.deleteTask");
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, Параметры);
Возврат Ответ;
КонецФункции
#КонецОбласти
#КонецОбласти
#КонецОбласти
#Область СлужебныеПроцедурыИФункции

View File

@@ -1976,6 +1976,14 @@
КонецПроцедуры
Процедура Проверка_БитриксСтатусДанных(Знач Результат) Экспорт
ОжидаетЧто(Результат["status"]).ИмеетТип("Строка");
ОжидаетЧто(Результат["data"]).ИмеетТип("Булево");
ОжидаетЧто(Результат["error"]).ИмеетТип("Массив");
КонецПроцедуры
Процедура Проверка_ВКТПользователь(Знач Результат) Экспорт
ОжидаетЧто(Результат["ok"]).Равно(Истина);

View File

@@ -1838,6 +1838,52 @@
КонецПроцедуры
Процедура Б24_РаботаСоСкрамом() Экспорт
ПараметрыТеста = Новый Структура;
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_URL" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_Domain", ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_Token" , ПараметрыТеста);
Bitrix24_ДобавитьСпринт(ПараметрыТеста);
Bitrix24_ОбновитьСпринт(ПараметрыТеста);
Bitrix24_ЗапуститьСпринт(ПараметрыТеста);
Bitrix24_ПолучитьСпринт(ПараметрыТеста);
Bitrix24_ЗавершитьАктивныйСпринт(ПараметрыТеста);
Bitrix24_ПолучитьСписокСпринтов(ПараметрыТеста);
Bitrix24_УдалитьСпринт(ПараметрыТеста);
Bitrix24_ПолучитьДоступныеПоляСпринта(ПараметрыТеста);
Bitrix24_ПолучитьСтруктуруФильтраСпринтов(ПараметрыТеста);
Bitrix24_ДобавитьБэклогВСкрам(ПараметрыТеста);
Bitrix24_ОбновитьБэклог(ПараметрыТеста);
Bitrix24_ПолучитьЗначениеПолейБэклога(ПараметрыТеста);
Bitrix24_УдалитьБэклог(ПараметрыТеста);
Bitrix24_ПолучитьДоступныеПоляБэклога(ПараметрыТеста);
Bitrix24_СоздатьСтадиюКанбанаСкрама(ПараметрыТеста);
Bitrix24_ОбновитьСтадиюКанбанаСкрама(ПараметрыТеста);
Bitrix24_ПолучитьСтадииКанбанаСкрама(ПараметрыТеста);
Bitrix24_УдалитьСтадиюКанбанаСкрама(ПараметрыТеста);
Bitrix24_ДобавитьЗадачуВСтадиюКанбанаСкрама(ПараметрыТеста);
Bitrix24_УдалитьЗадачуКанбанаСкрама(ПараметрыТеста);
Bitrix24_ПолучитьДоступныеПоляСтадииКанбанаСкрама(ПараметрыТеста);
Bitrix24_ДобавитьЭпикСкрама(ПараметрыТеста);
Bitrix24_ОбновитьЭпикСкрама(ПараметрыТеста);
Bitrix24_ПолучитьЭпикСкрама(ПараметрыТеста);
Bitrix24_ПолучитьСписокЭпиковСкрама(ПараметрыТеста);
Bitrix24_УдалитьЭпикСкрама(ПараметрыТеста);
Bitrix24_ПолучитьДоступныеПоляЭпика(ПараметрыТеста);
Bitrix24_ПолучитьСтруктуруФильтраЭпиков(ПараметрыТеста);
Bitrix24_ДобавитьЗадачуВСкрам(ПараметрыТеста);
Bitrix24_ПолучитьЗадачуСкрама(ПараметрыТеста);
Bitrix24_ПолучитьДоступныеПоляЗадачиСкрама(ПараметрыТеста);
КонецПроцедуры
#КонецОбласти
#Область VkTeams
@@ -13461,6 +13507,900 @@
КонецПроцедуры
Процедура Bitrix24_ДобавитьСпринт(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDГруппы = 1;
ТекущаяДата = OPI_Инструменты.ПолучитьТекущуюДату();
Час = 3600;
Сутки = 24;
Неделя = 7 * Сутки * Час;
СтруктураСпринта = Новый Структура;
СтруктураСпринта.Вставить("GROUP_ID" , IDГруппы);
СтруктураСпринта.Вставить("NAME" , "Новый актинвый спринт");
СтруктураСпринта.Вставить("DATE_START", ТекущаяДата - Неделя);
СтруктураСпринта.Вставить("DATE_END" , ТекущаяДата + Неделя);
СтруктураСпринта.Вставить("STATUS" , "planned");
Результат = OPI_Bitrix24.ДобавитьСпринт(URL, СтруктураСпринта);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьСпринт (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат); // SKIP
IDСпринта = Результат["result"]["id"]; // SKIP
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_HookSprintID", IDСпринта); // SKIP
ПараметрыФункции.Вставить("Bitrix24_HookSprintID", IDСпринта); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDГруппы = 1;
СтруктураСпринта.Вставить("GROUP_ID", IDГруппы);
СтруктураСпринта.Вставить("NAME" , "Новый запланированный спринт");
СтруктураСпринта.Вставить("STATUS" , "planned");
Результат = OPI_Bitrix24.ДобавитьСпринт(URL, СтруктураСпринта, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьСпринт", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат);
IDСпринта = Результат["result"]["id"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_SprintID", IDСпринта);
ПараметрыФункции.Вставить("Bitrix24_SprintID", IDСпринта);
КонецПроцедуры
Процедура Bitrix24_ОбновитьСпринт(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDСпринта = ПараметрыФункции["Bitrix24_HookSprintID"];
ТекущаяДата = OPI_Инструменты.ПолучитьТекущуюДату();
Час = 3600;
Сутки = 24;
Неделя = 7 * Сутки * Час;
СтруктураСпринта = Новый Структура;
СтруктураСпринта.Вставить("ID" , IDСпринта);
СтруктураСпринта.Вставить("NAME" , "Новый продлённый актинвый спринт");
СтруктураСпринта.Вставить("DATE_END", ТекущаяДата + 2 * Неделя);
Результат = OPI_Bitrix24.ОбновитьСпринт(URL, IDСпринта, СтруктураСпринта);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОбновитьСпринт (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDСпринта = ПараметрыФункции["Bitrix24_SprintID"];
СтруктураСпринта.Вставить("ID" , IDСпринта);
СтруктураСпринта.Вставить("NAME" , "Новый запланированный спринт c датой начала");
СтруктураСпринта.Вставить("DATE_START", ТекущаяДата + 2 * Неделя);
Результат = OPI_Bitrix24.ОбновитьСпринт(URL, IDСпринта, СтруктураСпринта, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОбновитьСпринт", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат);
КонецПроцедуры
Процедура Bitrix24_ЗапуститьСпринт(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDСпринта = ПараметрыФункции["Bitrix24_HookSprintID"];
Результат = OPI_Bitrix24.ЗапуститьСпринт(URL, IDСпринта);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗапуститьСпринт (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDСпринта = ПараметрыФункции["Bitrix24_SprintID"];
Результат = OPI_Bitrix24.ЗапуститьСпринт(URL, IDСпринта, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗапуститьСпринт", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат);
КонецПроцедуры
Процедура Bitrix24_ЗавершитьАктивныйСпринт(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDГруппы = 1;
Результат = OPI_Bitrix24.ЗавершитьАктивныйСпринт(URL, IDГруппы);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗавершитьАктивныйСпринт (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDГруппы = 1;
Результат = OPI_Bitrix24.ЗавершитьАктивныйСпринт(URL, IDГруппы, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗавершитьАктивныйСпринт", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат);
КонецПроцедуры
Процедура Bitrix24_ПолучитьСпринт(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDСпринта = ПараметрыФункции["Bitrix24_HookSprintID"];
Результат = OPI_Bitrix24.ПолучитьСпринт(URL, IDСпринта);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСпринт (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDСпринта = ПараметрыФункции["Bitrix24_SprintID"];
Результат = OPI_Bitrix24.ПолучитьСпринт(URL, IDСпринта, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСпринт", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат);
КонецПроцедуры
Процедура Bitrix24_ПолучитьСписокСпринтов(ПараметрыФункции)
ТекущаяДата = OPI_Инструменты.ПолучитьТекущуюДату();
// Полную структуру фильтра можно найти в функции ПолучитьСтруктуруФильтраСпринтов
Фильтр = Новый Соответствие;
Фильтр.Вставить("CREATED_BY", 1); // Постановщик с ID 1
Фильтр.Вставить(">=DATE_START ", ТекущаяДата); // Дата создания >= вчера
Поля = Новый Массив;
Поля.Добавить("NAME");
Поля.Добавить("STATUS");
Поля.Добавить("CREATED_BY");
Отступ = 1;
URL = ПараметрыФункции["Bitrix24_URL"];
Результат = OPI_Bitrix24.ПолучитьСписокСпринтов(URL, Фильтр, , Поля);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокСпринтов (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксМассивОбъектов(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
Результат = OPI_Bitrix24.ПолучитьСписокСпринтов(URL, , Отступ, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокСпринтов", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксМассивОбъектов(Результат);
КонецПроцедуры
Процедура Bitrix24_УдалитьСпринт(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDСпринта = ПараметрыФункции["Bitrix24_HookSprintID"];
Результат = OPI_Bitrix24.УдалитьСпринт(URL, IDСпринта);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УдалитьСпринт (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксМассив(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDСпринта = ПараметрыФункции["Bitrix24_SprintID"];
Результат = OPI_Bitrix24.УдалитьСпринт(URL, IDСпринта, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УдалитьСпринт", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксМассив(Результат);
КонецПроцедуры
Процедура Bitrix24_ПолучитьДоступныеПоляСпринта(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
Результат = OPI_Bitrix24.ПолучитьДоступныеПоляСпринта(URL);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДоступныеПоляСпринта (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксПоля(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
Результат = OPI_Bitrix24.ПолучитьДоступныеПоляСпринта(URL, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДоступныеПоляСпринта", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксПоля(Результат);
КонецПроцедуры
Процедура Bitrix24_ПолучитьСтруктуруФильтраСпринтов(ПараметрыФункции)
Результат = OPI_Bitrix24.ПолучитьСтруктуруФильтраСпринтов();
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтруктуруФильтраСпринтов", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
Результат = OPI_Bitrix24.ПолучитьСтруктуруФильтраСпринтов(Истина);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтруктуруФильтраСпринтов (пустая)", "Bitrix24");
Для Каждого Элемент Из Результат Цикл
Если OPI_Инструменты.ЭтоПримитивныйТип(Элемент.Значение) Тогда
OPI_ПолучениеДанныхТестов.Проверка_Пусто(Элемент.Значение);
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Процедура Bitrix24_ДобавитьБэклогВСкрам(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDГруппы = 1;
СтруктураБэклога = Новый Структура;
СтруктураБэклога.Вставить("GROUP_ID" , IDГруппы);
СтруктураБэклога.Вставить("CREATED_BY" , 1);
СтруктураБэклога.Вставить("MODIFIED_BY", 1);
Результат = OPI_Bitrix24.ДобавитьБэклогВСкрам(URL, СтруктураБэклога);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьБэклогВСкрам (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат); // SKIP
IDБэклога = Результат["result"]["id"]; // SKIP
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_HookBacklogID", IDБэклога); // SKIP
ПараметрыФункции.Вставить("Bitrix24_HookBacklogID", IDБэклога); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDГруппы = 1;
СтруктураБэклога.Вставить("GROUP_ID", IDГруппы);
Результат = OPI_Bitrix24.ДобавитьБэклогВСкрам(URL, СтруктураБэклога, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьБэклогВСкрам", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат);
IDБэклога = Результат["result"]["id"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_BacklogID", IDБэклога);
ПараметрыФункции.Вставить("Bitrix24_BacklogID", IDБэклога);
КонецПроцедуры
Процедура Bitrix24_ОбновитьБэклог(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDБэклога = ПараметрыФункции["Bitrix24_HookBacklogID"];
IDГруппы = 1;
СтруктураБэклога = Новый Структура;
СтруктураБэклога.Вставить("GROUP_ID" , IDГруппы);
СтруктураБэклога.Вставить("CREATED_BY" , 1);
СтруктураБэклога.Вставить("MODIFIED_BY", 1);
Результат = OPI_Bitrix24.ОбновитьБэклог(URL, IDСпринта, СтруктураБэклога);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОбновитьБэклог (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDБэклога = ПараметрыФункции["Bitrix24_BacklogID"];
IDГруппы = 1;
СтруктураБэклога.Вставить("GROUP_ID", IDГруппы);
Результат = OPI_Bitrix24.ОбновитьБэклог(URL, IDСпринта, СтруктураБэклога, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОбновитьБэклог", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат);
КонецПроцедуры
Процедура Bitrix24_ПолучитьЗначениеПолейБэклога(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDГруппы = ПараметрыФункции["Bitrix24_HookGroupID"];
Результат = OPI_Bitrix24.ПолучитьЗначениеПолейБэклога(URL, IDГруппы);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьЗначениеПолейБэклога (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксРезультат(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDГруппы = ПараметрыФункции["Bitrix24_GroupID"];
Результат = OPI_Bitrix24.ПолучитьЗначениеПолейБэклога(URL, IDГруппы, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьЗначениеПолейБэклога", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксРезультат(Результат);
КонецПроцедуры
Процедура Bitrix24_УдалитьБэклог(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDБэклога = ПараметрыФункции["Bitrix24_HookBacklogID"];
Результат = OPI_Bitrix24.УдалитьБэклог(URL, IDБэклога);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УдалитьБэклог (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксЗадача(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDБэклога = ПараметрыФункции["Bitrix24_BacklogID"];
Результат = OPI_Bitrix24.УдалитьБэклог(URL, IDБэклога, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УдалитьБэклог", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксЗадача(Результат);
КонецПроцедуры
Процедура Bitrix24_ПолучитьДоступныеПоляБэклога(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
Результат = OPI_Bitrix24.ПолучитьДоступныеПоляБэклога(URL);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДоступныеПоляБэклога (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксПоля(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
Результат = OPI_Bitrix24.ПолучитьДоступныеПоляБэклога(URL, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДоступныеПоляБэклога", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксПоля(Результат);
КонецПроцедуры
Процедура Bitrix24_СоздатьСтадиюКанбанаСкрама(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDСпринта = ПараметрыФункции["Bitrix24_HookSprintID"];
СтруктураСтадии = Новый Структура;
СтруктураСтадии.Вставить("SPRINT_ID", IDСпринта);
СтруктураСтадии.Вставить("NAME" , "Первая стадия");
СтруктураСтадии.Вставить("TYPE" , "NEW");
СтруктураСтадии.Вставить("SORT" , 100);
СтруктураСтадии.Вставить("COLOR" , "FF6A00");
Результат = OPI_Bitrix24.СоздатьСтадиюКанбанаСкрама(URL, СтруктураСтадии);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьСтадиюКанбанаСкрама (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксЧисло(Результат); // SKIP
IDСтадии = Результат["result"]; // SKIP
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_HookStageID", IDСтадии); // SKIP
ПараметрыФункции.Вставить("Bitrix24_HookStageID", IDСтадии); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDСпринта = ПараметрыФункции["Bitrix24_SprintID"];
СтруктураСтадии.Вставить("SPRINT_ID", IDСпринта);
СтруктураСтадии.Вставить("NAME" , "Вторая стадия");
СтруктураСтадии.Вставить("TYPE" , "WORK");
СтруктураСтадии.Вставить("SORT" , 50);
СтруктураСтадии.Вставить("COLOR" , "FFD800");
Результат = OPI_Bitrix24.СоздатьСтадиюКанбанаСкрама(URL, СтруктураСтадии, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьСтадиюКанбанаСкрама", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксЧисло(Результат);
IDСтадии = Результат["result"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_StageID", IDСтадии);
ПараметрыФункции.Вставить("Bitrix24_StageID", IDСтадии);
КонецПроцедуры
Процедура Bitrix24_ОбновитьСтадиюКанбанаСкрама(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDСтадии = ПараметрыФункции["Bitrix24_HookStageID"];
IDСпринта = ПараметрыФункции["Bitrix24_HookSprintID"];
СтруктураСтадии = Новый Структура;
СтруктураСтадии.Вставить("SPRINT_ID", IDСпринта);
СтруктураСтадии.Вставить("NAME" , "Первая стадия");
СтруктураСтадии.Вставить("TYPE" , "NEW");
СтруктураСтадии.Вставить("SORT" , 90);
СтруктураСтадии.Вставить("COLOR" , "FF6A00");
Результат = OPI_Bitrix24.ОбновитьСтадиюКанбанаСкрама(URL, IDСтадии, СтруктураСтадии);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОбновитьСтадиюКанбанаСкрама (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксБулево(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDСтадии = ПараметрыФункции["Bitrix24_StageID"];
IDСпринта = ПараметрыФункции["Bitrix24_SprintID"];
СтруктураСтадии.Вставить("SPRINT_ID", IDСпринта);
СтруктураСтадии.Вставить("NAME" , "Вторая стадия");
СтруктураСтадии.Вставить("TYPE" , "WORK");
СтруктураСтадии.Вставить("SORT" , 40);
СтруктураСтадии.Вставить("COLOR" , "FFD800");
Результат = OPI_Bitrix24.ОбновитьСтадиюКанбанаСкрама(URL, IDСтадии, СтруктураСтадии, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОбновитьСтадиюКанбанаСкрама", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксБулево(Результат);
КонецПроцедуры
Процедура Bitrix24_ПолучитьСтадииКанбанаСкрама(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDСринта = ПараметрыФункции["Bitrix24_HookSprintID"];
Результат = OPI_Bitrix24.ПолучитьСтадииКанбанаСкрама(URL, IDСринта);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтадииКанбанаСкрама (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксРезультат(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDСринта = ПараметрыФункции["Bitrix24_SprintID"];
Результат = OPI_Bitrix24.ПолучитьСтадииКанбанаСкрама(URL, IDСринта, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтадииКанбанаСкрама", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксРезультат(Результат);
КонецПроцедуры
Процедура Bitrix24_УдалитьСтадиюКанбанаСкрама(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDСтадии = ПараметрыФункции["Bitrix24_HookStageID"];
Результат = OPI_Bitrix24.УдалитьСтадиюКанбанаСкрама(URL, IDСтадии);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УдалитьСтадиюКанбанаСкрама (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксЗадача(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDСтадии = ПараметрыФункции["Bitrix24_StageID"];
Результат = OPI_Bitrix24.УдалитьСтадиюКанбанаСкрама(URL, IDСтадии, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УдалитьСтадиюКанбанаСкрама", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксЗадача(Результат);
КонецПроцедуры
Процедура Bitrix24_ДобавитьЗадачуВСтадиюКанбанаСкрама(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDСпринта = ПараметрыФункции["Bitrix24_HookSprintID"];
IDЗадачи = ПараметрыФункции["Bitrix24_HookTaskID"];
IDСтадии = ПараметрыФункции["Bitrix24_HookStageID"];
Результат = OPI_Bitrix24.ДобавитьЗадачуВСтадиюКанбанаСкрама(URL, IDСринта, IDЗадачи, IDСтадии);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьЗадачуВСтадиюКанбанаСкрама (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксБулево(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDСпринта = ПараметрыФункции["Bitrix24_SprintID"];
IDЗадачи = ПараметрыФункции["Bitrix24_TaskID"];
IDСтадии = ПараметрыФункции["Bitrix24_StageID"];
Результат = OPI_Bitrix24.ДобавитьЗадачуВСтадиюКанбанаСкрама(URL, IDСринта, IDЗадачи, IDСтадии, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьЗадачуВСтадиюКанбанаСкрама", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксБулево(Результат);
КонецПроцедуры
Процедура Bitrix24_УдалитьЗадачуКанбанаСкрама(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDСпринта = ПараметрыФункции["Bitrix24_HookSprintID"];
IDЗадачи = ПараметрыФункции["Bitrix24_HookTaskID"];
Результат = OPI_Bitrix24.УдалитьЗадачуКанбанаСкрама(URL, IDСпринта, IDЗадачи);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УдалитьЗадачуКанбанаСкрама (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксЗадача(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDСпринта = ПараметрыФункции["Bitrix24_SprintID"];
IDЗадачи = ПараметрыФункции["Bitrix24_TaskID"];
Результат = OPI_Bitrix24.УдалитьЗадачуКанбанаСкрама(URL, IDСпринта, IDЗадачи, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УдалитьЗадачуКанбанаСкрама", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксЗадача(Результат);
КонецПроцедуры
Процедура Bitrix24_ПолучитьДоступныеПоляСтадииКанбанаСкрама(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
Результат = OPI_Bitrix24.ПолучитьДоступныеПоляСтадииКанбанаСкрама(URL);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДоступныеПоляСтадииКанбанаСкрама (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
Результат = OPI_Bitrix24.ПолучитьДоступныеПоляСтадииКанбанаСкрама(URL, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДоступныеПоляСтадииКанбанаСкрама", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат);
КонецПроцедуры
Процедура Bitrix24_ДобавитьЭпикСкрама(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDГруппы = 1;
IDПользователя = 1;
ИдентификаторыФайлов = Новый Массив;
ИдентификаторыФайлов.Добавить("n428");
ИдентификаторыФайлов.Добавить("n345");
СтруктураЭпика = Новый Структура;
СтруктураЭпика.Вставить("NAME" , "Новый эпик");
СтруктураЭпика.Вставить("DESCRIPTION", "Описание нового эпика");
СтруктураЭпика.Вставить("GROUP_ID" , IDГруппы);
СтруктураЭпика.Вставить("COLOR" , "FF6A00");
СтруктураЭпика.Вставить("FILES" , ИдентификаторыФайлов);
СтруктураЭпика.Вставить("CREATED_BY" , IDПользователя);
СтруктураЭпика.Вставить("MODIFIED_BY", IDПользователя);
Результат = OPI_Bitrix24.ДобавитьЭпикСкрама(URL, СтруктураЭпика);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьЭпикСкрама (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат); // SKIP
IDЭпика = Результат["result"]["id"]; // SKIP
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_HookEpicID", IDЭпика); // SKIP
ПараметрыФункции.Вставить("Bitrix24_HookEpicID", IDЭпика); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDГруппы = 1;
IDПользователя = 1;
СтруктураЭпика.Вставить("NAME" , "Еще один новый эпик");
СтруктураЭпика.Вставить("DESCRIPTION", "Описание еще одного нового эпика");
СтруктураЭпика.Вставить("GROUP_ID" , IDГруппы);
СтруктураЭпика.Вставить("COLOR" , "FFD800");
СтруктураЭпика.Вставить("FILES" , ИдентификаторыФайлов);
СтруктураЭпика.Вставить("CREATED_BY" , IDПользователя);
СтруктураЭпика.Вставить("MODIFIED_BY", IDПользователя);
Результат = OPI_Bitrix24.ДобавитьЭпикСкрама(URL, СтруктураЭпика, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьЭпикСкрама", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат);
IDЭпика = Результат["result"]["id"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_EpicID", IDЭпика);
ПараметрыФункции.Вставить("Bitrix24_EpicID", IDЭпика);
КонецПроцедуры
Процедура Bitrix24_ОбновитьЭпикСкрама(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЭпика = ПараметрыФункции["Bitrix24_HookEpicID"];
IDГруппы = 1;
IDПользователя = 1;
ИдентификаторыФайлов = Новый Массив;
СтруктураЭпика = Новый Структура;
СтруктураЭпика.Вставить("NAME" , "Новый эпик 1");
СтруктураЭпика.Вставить("DESCRIPTION", "Обновленное описание нового эпика");
СтруктураЭпика.Вставить("GROUP_ID" , IDГруппы);
СтруктураЭпика.Вставить("COLOR" , "FF6A11");
СтруктураЭпика.Вставить("FILES" , ИдентификаторыФайлов);
СтруктураЭпика.Вставить("CREATED_BY" , IDПользователя);
СтруктураЭпика.Вставить("MODIFIED_BY", IDПользователя);
Результат = OPI_Bitrix24.ОбновитьЭпикСкрама(URL, IDЭпика, СтруктураЭпика);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОбновитьЭпикСкрама (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЭпика = ПараметрыФункции["Bitrix24_EpicID"];
IDГруппы = 1;
IDПользователя = 1;
СтруктураЭпика.Вставить("NAME" , "Еще один новый эпик 1");
СтруктураЭпика.Вставить("GROUP_ID" , IDГруппы);
Результат = OPI_Bitrix24.ОбновитьЭпикСкрама(URL, IDЭпика, СтруктураЭпика, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОбновитьЭпикСкрама", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат);
КонецПроцедуры
Процедура Bitrix24_ПолучитьЭпикСкрама(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЭпика = ПараметрыФункции["Bitrix24_HookEpicID"];
Результат = OPI_Bitrix24.ПолучитьЭпикСкрама(URL, IDЭпика);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьЭпикСкрама (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксРезультат(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЭпика = ПараметрыФункции["Bitrix24_EpicID"];
Результат = OPI_Bitrix24.ПолучитьЭпикСкрама(URL, IDЭпика, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьЭпикСкрама", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксРезультат(Результат);
КонецПроцедуры
Процедура Bitrix24_ПолучитьСписокЭпиковСкрама(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
Отступ = 1;
// Полную структуру фильтра можно найти в функции ПолучитьСтруктуруФильтраСпринтов
Фильтр = Новый Соответствие;
Фильтр.Вставить("GROUP_ID", 1);
Фильтр.Вставить("CREATED_BY", 1);
Поля = Новый Массив;
Поля.Добавить("ID");
Поля.Добавить("NAME");
Поля.Добавить("DECSCRIPTION");
Результат = OPI_Bitrix24.ПолучитьСписокЭпиковСкрама(URL, Фильтр, , Поля);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокЭпиковСкрама (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксМассивОбъектов(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
Результат = OPI_Bitrix24.ПолучитьСписокЭпиковСкрама(URL, , Отступ, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокЭпиковСкрама", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксМассивОбъектов(Результат);
КонецПроцедуры
Процедура Bitrix24_УдалитьЭпикСкрама(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЭпика = ПараметрыФункции["Bitrix24_HookEpicID"];
Результат = OPI_Bitrix24.УдалитьЭпикСкрама(URL, IDЭпика);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УдалитьЭпикСкрама (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксЗадача(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЭпика = ПараметрыФункции["Bitrix24_EpicID"];
Результат = OPI_Bitrix24.УдалитьЭпикСкрама(URL, IDЭпика, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УдалитьЭпикСкрама", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксЗадача(Результат);
КонецПроцедуры
Процедура Bitrix24_ПолучитьДоступныеПоляЭпика(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
Результат = OPI_Bitrix24.ПолучитьДоступныеПоляЭпика(URL);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДоступныеПоляЭпика (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
Результат = OPI_Bitrix24.ПолучитьДоступныеПоляЭпика(URL, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДоступныеПоляЭпика", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат);
КонецПроцедуры
Процедура Bitrix24_ПолучитьСтруктуруФильтраЭпиков(ПараметрыФункции)
Результат = OPI_Bitrix24.ПолучитьСтруктуруФильтраЭпиков();
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтруктуруФильтраЭпиков", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
Результат = OPI_Bitrix24.ПолучитьСтруктуруФильтраЭпиков(Истина);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтруктуруФильтраЭпиков (пустая)", "Bitrix24");
Для Каждого Элемент Из Результат Цикл
Если OPI_Инструменты.ЭтоПримитивныйТип(Элемент.Значение) Тогда
OPI_ПолучениеДанныхТестов.Проверка_Пусто(Элемент.Значение);
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Процедура Bitrix24_ДобавитьЗадачуВСкрам(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЗадачи = ПараметрыФункции["Bitrix24_HookTaskID"];
IDЭпика = ПараметрыФункции["Bitrix24_HookEpicID"];
IDСпринта = ПараметрыФункции["Bitrix24_HookSprintID"];
СтруктураЗадачи = Новый Структура;
СтруктураЗадачи.Вставить("ENTITY_ID", IDСпринта);
СтруктураЗадачи.Вставить("STORY_POINTS", 15);
СтруктураЗадачи.Вставить("EPIC_ID", IDЭпика);
СтруктураЗадачи.Вставить("SORT", 50);
Результат = OPI_Bitrix24.ДобавитьЗадачуВСкрам(URL, IDЗадачи, СтруктураЗадачи);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьЗадачуВСкрам (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксСтатусДанных(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЗадачи = ПараметрыФункции["Bitrix24_TaskID"];
IDЭпика = ПараметрыФункции["Bitrix24_EpicID"];
IDБэклога = ПараметрыФункции["Bitrix24_BacklogID"];
СтруктураЗадачи.Вставить("ENTITY_ID", IDБэклога);
СтруктураЗадачи.Вставить("STORY_POINTS", 5);
СтруктураЗадачи.Вставить("EPIC_ID", IDЭпика);
СтруктураЗадачи.Вставить("SORT", 25);
Результат = OPI_Bitrix24.ДобавитьЗадачуВСкрам(URL, IDЗадачи, СтруктураЗадачи);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьЗадачуВСкрам", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксСтатусДанных(Результат);
КонецПроцедуры
Процедура Bitrix24_ПолучитьЗадачуСкрама(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЗадачи = ПараметрыФункции["Bitrix24_HookTaskID"];
Результат = OPI_Bitrix24.ПолучитьЗадачуСкрама(URL, IDЗадачи);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьЗадачуСкрама (хук)", "Bitrix24"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЗадачи = ПараметрыФункции["Bitrix24_TaskID"];
Результат = OPI_Bitrix24.ПолучитьЗадачуСкрама(URL, IDЗадачи, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьЗадачуСкрама", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксОбъект(Результат);
КонецПроцедуры
Процедура Bitrix24_ПолучитьДоступныеПоляЗадачиСкрама(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
Результат = OPI_Bitrix24.ПолучитьДоступныеПоляЗадачиСкрама(URL);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДоступныеПоляЗадачиСкрама (хук)", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксПоля(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
Результат = OPI_Bitrix24.ПолучитьДоступныеПоляЗадачиСкрама(URL, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДоступныеПоляЗадачиСкрама", "Bitrix24");
OPI_ПолучениеДанныхТестов.Проверка_БитриксПоля(Результат);
КонецПроцедуры
#КонецОбласти
#Область VKTeams