1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-01-26 05:37:27 +02:00

B24: Несколько новых методов работы с каталогами

This commit is contained in:
Anton 2024-06-26 22:41:56 +03:00
parent 95e87028a4
commit 64e8c9b397
6 changed files with 4038 additions and 3700 deletions

File diff suppressed because it is too large Load Diff

View File

@ -984,6 +984,75 @@
КонецФункции
// Получить каталог
// Получает информацию о каталоге
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDКаталога - Строка, Число - Идентификатор каталога - folderid
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ПолучитьКаталог(Знач URL, Знач IDКаталога, Знач Токен = "") Экспорт
Ответ = УправлениеФайлом(URL, IDКаталога, "disk.folder.get", Токен);
Возврат Ответ;
КонецФункции
// Создать подкаталог
// Создает каталог внутри другого каталога
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDКаталога - Строка, Число - Идентификатор каталога родителя - folderid
// Наименование - Строка - Наименование нового каталога - title
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция СоздатьПодкаталог(Знач URL, Знач IDКаталога, Знач Наименование, Знач Токен = "") Экспорт
OPI_ПреобразованиеТипов.ПолучитьСтроку(Наименование);
СтруктураПапки = Новый Структура("NAME", Наименование);
Параметры = НормализоватьАвторизацию(URL, Токен, "disk.folder.addsubfolder");
OPI_Инструменты.ДобавитьПоле("id" , IDКаталога , "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("data", СтруктураПапки, "Коллекция", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Копировать каталог
// Копирует один каталог в другой
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDКаталога - Строка, Число - Идентификатор каталога родителя - folderid
// IDПриемника - Строка, Число - ID каталога назначения - tagetid
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция КопироватьКаталог(Знач URL, Знач IDКаталога, Знач IDПриемника, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "disk.folder.copyto");
OPI_Инструменты.ДобавитьПоле("id" , IDКаталога , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("targetFolderId", IDПриемника, "Строка", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Удалить файл
// Удаляет файл по ID
//

View File

@ -1,21 +1,21 @@
<package-def>
<module name="OPI_Криптография" file="tools/Modules/internal/Modules/OPI_Криптография.os"/>
<module name="OPI_Notion" file="core/Modules/OPI_Notion.os"/>
<module name="OPI_GoogleCalendar" file="core/Modules/OPI_GoogleCalendar.os"/>
<module name="OPI_ПолучениеДанныхТестов" file="tools/Modules/OPI_ПолучениеДанныхТестов.os"/>
<module name="OPI_Slack" file="core/Modules/OPI_Slack.os"/>
<module name="OPI_Dropbox" file="core/Modules/OPI_Dropbox.os"/>
<module name="OPI_GoogleDrive" file="core/Modules/OPI_GoogleDrive.os"/>
<module name="OPI_VK" file="core/Modules/OPI_VK.os"/>
<module name="OPI_Telegram" file="core/Modules/OPI_Telegram.os"/>
<module name="OPI_Airtable" file="core/Modules/OPI_Airtable.os"/>
<module name="OPI_Bitrix24" file="core/Modules/OPI_Bitrix24.os"/>
<module name="OPI_Dropbox" file="core/Modules/OPI_Dropbox.os"/>
<module name="OPI_GoogleCalendar" file="core/Modules/OPI_GoogleCalendar.os"/>
<module name="OPI_GoogleDrive" file="core/Modules/OPI_GoogleDrive.os"/>
<module name="OPI_GoogleSheets" file="core/Modules/OPI_GoogleSheets.os"/>
<module name="OPI_ПреобразованиеТипов" file="tools/Modules/OPI_ПреобразованиеТипов.os"/>
<module name="OPI_GoogleWorkspace" file="core/Modules/OPI_GoogleWorkspace.os"/>
<module name="OPI_Notion" file="core/Modules/OPI_Notion.os"/>
<module name="OPI_Slack" file="core/Modules/OPI_Slack.os"/>
<module name="OPI_Telegram" file="core/Modules/OPI_Telegram.os"/>
<module name="OPI_Twitter" file="core/Modules/OPI_Twitter.os"/>
<module name="OPI_Инструменты" file="tools/Modules/internal/Modules/OPI_Инструменты.os"/>
<module name="OPI_Viber" file="core/Modules/OPI_Viber.os"/>
<module name="OPI_VK" file="core/Modules/OPI_VK.os"/>
<module name="OPI_YandexDisk" file="core/Modules/OPI_YandexDisk.os"/>
<module name="OPI_YandexID" file="core/Modules/OPI_YandexID.os"/>
<module name="OPI_GoogleWorkspace" file="core/Modules/OPI_GoogleWorkspace.os"/>
<module name="OPI_Инструменты" file="tools/Modules/internal/Modules/OPI_Инструменты.os"/>
<module name="OPI_Криптография" file="tools/Modules/internal/Modules/OPI_Криптография.os"/>
<module name="OPI_ПолучениеДанныхТестов" file="tools/Modules/OPI_ПолучениеДанныхТестов.os"/>
<module name="OPI_ПреобразованиеТипов" file="tools/Modules/OPI_ПреобразованиеТипов.os"/>
</package-def>

View File

@ -2929,6 +2929,9 @@
Bitrix24_ПолучитьСодержимоеХранилища(ПараметрыТеста);
Bitrix24_УдалитьФайл(ПараметрыТеста);
Bitrix24_СоздатьКаталогВХранилище(ПараметрыТеста);
Bitrix24_ПолучитьКаталог(ПараметрыТеста);
Bitrix24_СоздатьПодкаталог(ПараметрыТеста);
Bitrix24_КопироватьКаталог(ПараметрыТеста);
Bitrix24_УдалитьКаталог(ПараметрыТеста);
КонецПроцедуры
@ -6965,6 +6968,92 @@
КонецПроцедуры
Процедура Bitrix24_ПолучитьКаталог(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDКаталога = ПараметрыФункции["Bitrix24_FolderID"];
Результат = OPI_Bitrix24.ПолучитьКаталог(URL, IDКаталога);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьКаталог (хук)", "Bitrix24");
Проверка_БитриксФайл(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
Результат = OPI_Bitrix24.ПолучитьКаталог(URL, IDКаталога, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьКаталог", "Bitrix24");
Проверка_БитриксФайл(Результат);
КонецПроцедуры
Процедура Bitrix24_СоздатьПодкаталог(ПараметрыФункции)
IDКаталога = ПараметрыФункции["Bitrix24_FolderID"];
Наименование = "Новый подкаталог";
Наименование2 = "Новый подкаталог 2";
URL = ПараметрыФункции["Bitrix24_URL"];
Результат = OPI_Bitrix24.СоздатьПодкаталог(URL, IDКаталога, Наименование2);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьПодкаталог (хук)", "Bitrix24");
Проверка_БитриксФайл(Результат); // SKIP
IDПодкаталога = Результат["result"]["ID"]; // SKIP
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_HookSubfolderID", IDПодкаталога); // SKIP
ПараметрыФункции.Вставить("Bitrix24_HookSubfolderID", IDПодкаталога); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
Результат = OPI_Bitrix24.СоздатьПодкаталог(URL, IDКаталога, Наименование, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьПодкаталог", "Bitrix24");
Проверка_БитриксФайл(Результат);
IDПодкаталога = Результат["result"]["ID"]; // SKIP
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_SubfolderID", IDПодкаталога); // SKIP
ПараметрыФункции.Вставить("Bitrix24_SubfolderID", IDПодкаталога); // SKIP
КонецПроцедуры
Процедура Bitrix24_КопироватьКаталог(ПараметрыФункции)
IDПриемника = ПараметрыФункции["Bitrix24_HookSubfolderID"];
IDКаталога = ПараметрыФункции["Bitrix24_SubfolderID"];
URL = ПараметрыФункции["Bitrix24_URL"];
Результат = OPI_Bitrix24.КопироватьКаталог(URL, IDКаталога, IDПриемника);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "КопироватьКаталог (хук)", "Bitrix24");
Проверка_БитриксФайл(Результат); // SKIP
IDПриемника = ПараметрыФункции["Bitrix24_SubfolderID"];
IDКаталога = ПараметрыФункции["Bitrix24_HookSubfolderID"];
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
Результат = OPI_Bitrix24.КопироватьКаталог(URL, IDКаталога, IDПриемника, Токен);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "КопироватьКаталог", "Bitrix24");
Проверка_БитриксФайл(Результат);
КонецПроцедуры
#КонецОбласти
#Область YandexDisk

View File

@ -984,6 +984,75 @@
КонецФункции
// Получить каталог
// Получает информацию о каталоге
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDКаталога - Строка, Число - Идентификатор каталога - folderid
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ПолучитьКаталог(Знач URL, Знач IDКаталога, Знач Токен = "") Экспорт
Ответ = УправлениеФайлом(URL, IDКаталога, "disk.folder.get", Токен);
Возврат Ответ;
КонецФункции
// Создать подкаталог
// Создает каталог внутри другого каталога
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDКаталога - Строка, Число - Идентификатор каталога родителя - folderid
// Наименование - Строка - Наименование нового каталога - title
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция СоздатьПодкаталог(Знач URL, Знач IDКаталога, Знач Наименование, Знач Токен = "") Экспорт
OPI_ПреобразованиеТипов.ПолучитьСтроку(Наименование);
СтруктураПапки = Новый Структура("NAME", Наименование);
Параметры = НормализоватьАвторизацию(URL, Токен, "disk.folder.addsubfolder");
OPI_Инструменты.ДобавитьПоле("id" , IDКаталога , "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("data", СтруктураПапки, "Коллекция", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Копировать каталог
// Копирует один каталог в другой
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDКаталога - Строка, Число - Идентификатор каталога родителя - folderid
// IDПриемника - Строка, Число - ID каталога назначения - tagetid
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция КопироватьКаталог(Знач URL, Знач IDКаталога, Знач IDПриемника, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "disk.folder.copyto");
OPI_Инструменты.ДобавитьПоле("id" , IDКаталога , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("targetFolderId", IDПриемника, "Строка", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Удалить файл
// Удаляет файл по ID
//

View File

@ -2929,6 +2929,9 @@
Bitrix24_ПолучитьСодержимоеХранилища(ПараметрыТеста);
Bitrix24_УдалитьФайл(ПараметрыТеста);
Bitrix24_СоздатьКаталогВХранилище(ПараметрыТеста);
Bitrix24_ПолучитьКаталог(ПараметрыТеста);
Bitrix24_СоздатьПодкаталог(ПараметрыТеста);
Bitrix24_КопироватьКаталог(ПараметрыТеста);
Bitrix24_УдалитьКаталог(ПараметрыТеста);
КонецПроцедуры
@ -6965,6 +6968,92 @@
КонецПроцедуры
Процедура Bitrix24_ПолучитьКаталог(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDКаталога = ПараметрыФункции["Bitrix24_FolderID"];
Результат = OPI_Bitrix24.ПолучитьКаталог(URL, IDКаталога);
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьКаталог (хук)", "Bitrix24");
Проверка_БитриксФайл(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
Результат = OPI_Bitrix24.ПолучитьКаталог(URL, IDКаталога, Токен);
// END
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьКаталог", "Bitrix24");
Проверка_БитриксФайл(Результат);
КонецПроцедуры
Процедура Bitrix24_СоздатьПодкаталог(ПараметрыФункции)
IDКаталога = ПараметрыФункции["Bitrix24_FolderID"];
Наименование = "Новый подкаталог";
Наименование2 = "Новый подкаталог 2";
URL = ПараметрыФункции["Bitrix24_URL"];
Результат = OPI_Bitrix24.СоздатьПодкаталог(URL, IDКаталога, Наименование2);
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьПодкаталог (хук)", "Bitrix24");
Проверка_БитриксФайл(Результат); // SKIP
IDПодкаталога = Результат["result"]["ID"]; // SKIP
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_HookSubfolderID", IDПодкаталога); // SKIP
ПараметрыФункции.Вставить("Bitrix24_HookSubfolderID", IDПодкаталога); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
Результат = OPI_Bitrix24.СоздатьПодкаталог(URL, IDКаталога, Наименование, Токен);
// END
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьПодкаталог", "Bitrix24");
Проверка_БитриксФайл(Результат);
IDПодкаталога = Результат["result"]["ID"]; // SKIP
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_SubfolderID", IDПодкаталога); // SKIP
ПараметрыФункции.Вставить("Bitrix24_SubfolderID", IDПодкаталога); // SKIP
КонецПроцедуры
Процедура Bitrix24_КопироватьКаталог(ПараметрыФункции)
IDПриемника = ПараметрыФункции["Bitrix24_HookSubfolderID"];
IDКаталога = ПараметрыФункции["Bitrix24_SubfolderID"];
URL = ПараметрыФункции["Bitrix24_URL"];
Результат = OPI_Bitrix24.КопироватьКаталог(URL, IDКаталога, IDПриемника);
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "КопироватьКаталог (хук)", "Bitrix24");
Проверка_БитриксФайл(Результат); // SKIP
IDПриемника = ПараметрыФункции["Bitrix24_SubfolderID"];
IDКаталога = ПараметрыФункции["Bitrix24_HookSubfolderID"];
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
Результат = OPI_Bitrix24.КопироватьКаталог(URL, IDКаталога, IDПриемника, Токен);
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "КопироватьКаталог", "Bitrix24");
Проверка_БитриксФайл(Результат);
КонецПроцедуры
#КонецОбласти
#Область YandexDisk