From d88e22a0866896998e161f14a4d4a93d067852ae Mon Sep 17 00:00:00 2001 From: Anton Date: Sun, 16 Jun 2024 16:01:57 +0300 Subject: [PATCH] =?UTF-8?q?B24:=20=D0=9C=D0=B5=D1=82=D0=BE=D0=B4=D1=8B=20?= =?UTF-8?q?=D0=B7=D0=B0=D0=B4=D0=B0=D1=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/CommonModules/OPI_Bitrix24/Module.bsl | 59 +++++++++++- .../src/CommonModules/OPI_Тесты/Module.bsl | 96 +++++++++++++++++-- 2 files changed, 143 insertions(+), 12 deletions(-) diff --git a/src/ru/OPI/src/CommonModules/OPI_Bitrix24/Module.bsl b/src/ru/OPI/src/CommonModules/OPI_Bitrix24/Module.bsl index 81e67c976d..b4debd0ecc 100644 --- a/src/ru/OPI/src/CommonModules/OPI_Bitrix24/Module.bsl +++ b/src/ru/OPI/src/CommonModules/OPI_Bitrix24/Module.bsl @@ -29,8 +29,6 @@ // BSLLS:Typo-off // BSLLS:LatinAndCyrillicSymbolInWord-off // BSLLS:IncorrectLineBreak-off -// BSLLS:UnreachableCode-off -// BSLLS:CommentedCode-off //@skip-check module-structure-top-region //@skip-check module-structure-method-in-regions @@ -607,6 +605,63 @@ КонецФункции +// Делегировать задачу +// Делегирует задачу на другого пользователя +// +// Параметры: +// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url +// IDЗадачи - Число,Строка - ID задачи - task +// IDПользователя - Число,Строка - ID пользователя-исполнителя - user +// Токен - Строка - Токен авторизации, если используется не вебхук - token +// +// Возвращаемое значение: +// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24 +Функция ДелегироватьЗадачу(Знач URL, Знач IDЗадачи, Знач IDПользователя, Знач Токен = "") Экспорт + + Параметры = НормализоватьАвторизацию(URL, Токен, "tasks.task.delegate"); + OPI_Инструменты.ДобавитьПоле("taskId", IDЗадачи , "Строка", Параметры); + OPI_Инструменты.ДобавитьПоле("userId", IDПользователя, "Строка", Параметры); + + Ответ = OPI_Инструменты.Post(URL, Параметры); + + Возврат Ответ; + +КонецФункции + +// Добавить задачу в избранное +// Добавляет задачу в список избранного +// +// Параметры: +// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url +// IDЗадачи - Число,Строка - ID задачи - task +// Токен - Строка - Токен авторизации, если используется не вебхук - token +// +// Возвращаемое значение: +// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24 +Функция ДобавитьЗадачуВИзбранное(Знач URL, Знач IDЗадачи, Знач Токен = "") Экспорт + + Ответ = УправлениеЗадачей(URL, IDЗадачи, "tasks.task.favorite.add", Токен); + Возврат Ответ; + +КонецФункции + +// Убрать задачу из избранного +// Удаляет задачу из списка избранного +// +// Параметры: +// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url +// IDЗадачи - Число,Строка - ID задачи - task +// Токен - Строка - Токен авторизации, если используется не вебхук - token +// +// Возвращаемое значение: +// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24 +Функция УбратьЗадачуИзИзбранного(Знач URL, Знач IDЗадачи, Знач Токен = "") Экспорт + + Ответ = УправлениеЗадачей(URL, IDЗадачи, "tasks.task.favorite.remove", Токен); + Возврат Ответ; + +КонецФункции + #КонецОбласти #КонецОбласти diff --git a/src/ru/OPI/src/CommonModules/OPI_Тесты/Module.bsl b/src/ru/OPI/src/CommonModules/OPI_Тесты/Module.bsl index bc4dafa723..f7d6894cda 100644 --- a/src/ru/OPI/src/CommonModules/OPI_Тесты/Module.bsl +++ b/src/ru/OPI/src/CommonModules/OPI_Тесты/Module.bsl @@ -3309,14 +3309,18 @@ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_URL" , ПараметрыТеста); OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_Domain", ПараметрыТеста); OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_Token" , ПараметрыТеста); + OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_UserID" , ПараметрыТеста); Bitrix24_ПолучитьСтруктуруЗадачи(ПараметрыТеста); Bitrix24_СоздатьЗадачу(ПараметрыТеста); Bitrix24_ИзменитьЗадачу(ПараметрыТеста); Bitrix24_ПолучитьЗадачу(ПараметрыТеста); + Bitrix24_ДобавитьЗадачуВИзбранное(ПараметрыТеста); + Bitrix24_УбратьЗадачуИзИзбранного(ПараметрыТеста); + Bitrix24_ДелегироватьЗадачу(ПараметрыТеста); Bitrix24_ОтложитьЗадачу(ПараметрыТеста); Bitrix24_ЗавершитьЗадачу(ПараметрыТеста); - // Bitrix24_ОтклонитьЗадачу(ПараметрыТеста); + Bitrix24_ОтклонитьЗадачу(ПараметрыТеста); Bitrix24_ПринятьЗадачу(ПараметрыТеста); Bitrix24_ВозобновитьЗадачу(ПараметрыТеста); Bitrix24_НачатьВыполнениеЗадачи(ПараметрыТеста); @@ -5777,15 +5781,16 @@ // Полную структуру полей можно получить функцией ПолучитьСтруктуруЗадачи() + ТекущаяДата = OPI_Инструменты.ПолучитьТекущуюДату(); Час = 3600; Сутки = 24; Исполнитель = 1; СтруктураЗадачи = Новый Структура; - СтруктураЗадачи.Вставить("TITLE", "Новая задача"); - СтруктураЗадачи.Вставить("DESCRIPTION", "Новое описание задачи"); - СтруктураЗадачи.Вставить("PRIORITY", "2"); - СтруктураЗадачи.Вставить("DEADLINE", ТекущаяДата() + Час * Сутки); + СтруктураЗадачи.Вставить("TITLE" , "Новая задача"); + СтруктураЗадачи.Вставить("DESCRIPTION" , "Новое описание задачи"); + СтруктураЗадачи.Вставить("PRIORITY" , "2"); + СтруктураЗадачи.Вставить("DEADLINE" , ТекущаяДата + Час * Сутки); СтруктураЗадачи.Вставить("RESPONSIBLE_ID", Исполнитель); URL = ПараметрыФункции["Bitrix24_URL"]; @@ -5911,8 +5916,6 @@ Результат = OPI_Bitrix24.ОтклонитьЗадачу(URL, IDЗадачи); // !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтклонитьЗадачу (хук)", "Bitrix24"); - - Проверка_БитриксЗадача(Результат); // SKIP URL = ПараметрыФункции["Bitrix24_Domain"]; Токен = ПараметрыФункции["Bitrix24_Token"]; @@ -5924,8 +5927,6 @@ // !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтклонитьЗадачу", "Bitrix24"); - Проверка_БитриксЗадача(Результат); - КонецПроцедуры Процедура Bitrix24_ЗавершитьЗадачу(ПараметрыФункции) @@ -6078,7 +6079,6 @@ КонецПроцедуры - Процедура Bitrix24_ПриостановитьЗадачу(ПараметрыФункции) URL = ПараметрыФункции["Bitrix24_URL"]; @@ -6129,6 +6129,82 @@ КонецПроцедуры +Процедура Bitrix24_ДелегироватьЗадачу(ПараметрыФункции) + + URL = ПараметрыФункции["Bitrix24_URL"]; + IDЗадачи = ПараметрыФункции["Bitrix24_HookTaskID"]; + IDПользователя = ПараметрыФункции["Bitrix24_UserID"]; + + Результат = OPI_Bitrix24.ДелегироватьЗадачу(URL, IDЗадачи, IDПользователя); + + // !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДелегироватьЗадачу (хук)", "Bitrix24"); + + Проверка_БитриксЗадача(Результат); // SKIP + + URL = ПараметрыФункции["Bitrix24_Domain"]; + Токен = ПараметрыФункции["Bitrix24_Token"]; + IDЗадачи = ПараметрыФункции["Bitrix24_TaskID"]; + + Результат = OPI_Bitrix24.ДелегироватьЗадачу(URL, IDЗадачи, IDПользователя, Токен); + + // END + + // !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДелегироватьЗадачу", "Bitrix24"); + + Проверка_БитриксЗадача(Результат); + +КонецПроцедуры + +Процедура Bitrix24_ДобавитьЗадачуВИзбранное(ПараметрыФункции) + + URL = ПараметрыФункции["Bitrix24_URL"]; + IDЗадачи = ПараметрыФункции["Bitrix24_HookTaskID"]; + + Результат = OPI_Bitrix24.ДобавитьЗадачуВИзбранное(URL, IDЗадачи); + + // !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьЗадачуВИзбранное (хук)", "Bitrix24"); + + Проверка_БитриксИстина(Результат); // SKIP + + URL = ПараметрыФункции["Bitrix24_Domain"]; + Токен = ПараметрыФункции["Bitrix24_Token"]; + IDЗадачи = ПараметрыФункции["Bitrix24_TaskID"]; + + Результат = OPI_Bitrix24.ДобавитьЗадачуВИзбранное(URL, IDЗадачи, Токен); + + // END + + // !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьЗадачуВИзбранное", "Bitrix24"); + + Проверка_БитриксИстина(Результат); + +КонецПроцедуры + +Процедура Bitrix24_УбратьЗадачуИзИзбранного(ПараметрыФункции) + + URL = ПараметрыФункции["Bitrix24_URL"]; + IDЗадачи = ПараметрыФункции["Bitrix24_HookTaskID"]; + + Результат = OPI_Bitrix24.УбратьЗадачуИзИзбранного(URL, IDЗадачи); + + // !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УбратьЗадачуИзИзбранного (хук)", "Bitrix24"); + + Проверка_БитриксИстина(Результат); // SKIP + + URL = ПараметрыФункции["Bitrix24_Domain"]; + Токен = ПараметрыФункции["Bitrix24_Token"]; + IDЗадачи = ПараметрыФункции["Bitrix24_TaskID"]; + + Результат = OPI_Bitrix24.УбратьЗадачуИзИзбранного(URL, IDЗадачи, Токен); + + // END + + // !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УбратьЗадачуИзИзбранного", "Bitrix24"); + + Проверка_БитриксИстина(Результат); + +КонецПроцедуры + #КонецОбласти #КонецОбласти