1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-04-09 07:14:16 +02:00

Main build (Jenkins)

This commit is contained in:
Vitaly the Alpaca (bot) 2025-02-02 11:56:50 +03:00
parent 3974f68048
commit 15e30a036c
5 changed files with 6694 additions and 6683 deletions

File diff suppressed because it is too large Load Diff

View File

@ -105,7 +105,6 @@
Функция ПолучитьРезультатОбработки(Знач Команда, Знач Параметры)
Модуль = Команды[Команда];
Метод = Параметры["Метод"];
Ответ = "The function returned an empty value.";
@ -115,18 +114,25 @@
Справка.ВывестиСправкуПоМетодам(Команда, ТаблицаПараметров);
КонецЕсли;
ОтборКоманды = Новый Структура("МетодПоиска", вРег(Метод));
ПараметрыМетода = ТаблицаПараметров.НайтиСтроки(ОтборКоманды);
Если Не ЗначениеЗаполнено(ПараметрыМетода) Тогда
Справка.ВывестиСообщениеИсключения("Метод", ФайлВывода);
КонецЕсли;
Если Параметры.Количество() = ЧислоСтандартныхПараметров Или Параметры["--help"] Тогда
ОтборКоманды = Новый Структура("МетодПоиска", вРег(Метод));
ПараметрыМетода = ТаблицаПараметров.НайтиСтроки(ОтборКоманды);
Если Не ЗначениеЗаполнено(ПараметрыМетода) Тогда
Справка.ВывестиСообщениеИсключения("Метод", ФайлВывода);
КонецЕсли;
Справка.ВывестиСправкуПоПараметрам(ПараметрыМетода);
КонецЕсли;
ТекстВыполнения = ОбъектОПИ.СформироватьСтрокуВызоваМетода(Параметры, ПараметрыМетода, Модуль, Метод);
СтруктураВыполнения = ОбъектОПИ.СформироватьСтрокуВызоваМетода(Параметры, Команда, Метод);
Если СтруктураВыполнения["Ошибка"] Тогда
Справка.ВывестиСообщениеИсключения(СтруктураВыполнения["Результат"], ФайлВывода);
Иначе
ТекстВыполнения = СтруктураВыполнения["Результат"];
КонецЕсли;
Если Отладка Или Тестирование Тогда
Сообщить(ТекстВыполнения, СтатусСообщения.Внимание);

View File

@ -42,18 +42,16 @@
КонецФункции
Функция ПолучитьСостав(Знач Команда) Экспорт
ТекущийСостав = Новый(Команда);
Возврат ТекущийСостав.ПолучитьСостав();
КонецФункции
Функция ПолучитьПолныйСостав() Экспорт
ОбщаяТаблица = Неопределено;
Для Каждого Команда Из ПолучитьСоответствиеКомандМодулей() Цикл
ТекущаяТаблица = ПолучитьСостав(Команда.Ключ);
Если ОбщаяТаблица = Неопределено Тогда
@ -63,70 +61,81 @@
ЗаполнитьЗначенияСвойств(ОбщаяТаблица.Добавить(), СтрокаТаблицы);
КонецЦикла;
КонецЕсли;
КонецЦикла;
Возврат ОбщаяТаблица;
КонецФункции
Функция СформироватьСтрокуВызоваМетода(Знач ПереданныеПараметры, Знач ПараметрыМетода, Знач Модуль, Знач Метод) Экспорт
ТекстВыполнения = "";
СтрокаВызова = Модуль + "." + Метод + "(";
Счетчик = 0;
Для Каждого НеобходимыйПараметр Из ПараметрыМетода Цикл
ИмяПараметра = НеобходимыйПараметр.Параметр;
ЗначениеПараметра = ПереданныеПараметры.Получить(ИмяПараметра);
Если ЗначениеЗаполнено(ЗначениеПараметра) Тогда
ИмяПараметра = "Параметр" + СтрЗаменить(ИмяПараметра, "--", "_");
ТекстВыполнения = ТекстВыполнения
+ Символы.ПС
+ ИмяПараметра
+ " = """
+ СтрЗаменить(ЗначениеПараметра, """", """""")
+ """;";
Функция СформироватьСтрокуВызоваМетода(Знач ПереданныеПараметры, Знач Команда, Знач Метод) Экспорт
Модуль = СоответствиеКоманд.Получить(Команда);
Если Не ЗначениеЗаполнено(Модуль) Тогда
Возврат Новый Структура("Ошибка,Результат", Истина, "Команда");
КонецЕсли;
ОтборКоманды = Новый Структура("МетодПоиска", вРег(Метод));
ПараметрыМетода = ПолучитьСостав(Команда).НайтиСтроки(ОтборКоманды);
Если Не ЗначениеЗаполнено(ПараметрыМетода) Тогда
Возврат Новый Структура("Ошибка,Результат", Истина, "Метод");
КонецЕсли;
ТекстВыполнения = "";
СтрокаВызова = Модуль + "." + Метод + "(";
Счетчик = 0;
Для Каждого НеобходимыйПараметр Из ПараметрыМетода Цикл
ИмяПараметра = НеобходимыйПараметр.Параметр;
ЗначениеПараметра = ПереданныеПараметры.Получить(ИмяПараметра);
Если ЗначениеЗаполнено(ЗначениеПараметра) Тогда
ИмяПараметра = "Параметр" + СтрЗаменить(ИмяПараметра, "--", "_");
ТекстВыполнения = ТекстВыполнения
+ Символы.ПС
+ ИмяПараметра
+ " = """
+ СтрЗаменить(ЗначениеПараметра, """", """""")
+ """;";
Если ТребуетсяОбработкаУправляющихПоследовательностей(ИмяПараметра, ЗначениеПараметра) Тогда
ТекстВыполнения = ТекстВыполнения + "
|OPI_Инструменты.ЗаменитьУправляющиеПоследовательности(" + ИмяПараметра + ");
|";
КонецЕсли;
СтрокаВызова = СтрокаВызова + ИмяПараметра + ", ";
ТекстВыполнения = ТекстВыполнения + "
|OPI_Инструменты.ЗаменитьУправляющиеПоследовательности(" + ИмяПараметра + ");
|";
КонецЕсли;
СтрокаВызова = СтрокаВызова + ИмяПараметра + ", ";
Счетчик = Счетчик + 1;
Иначе
СтрокаВызова = СтрокаВызова + " , ";
КонецЕсли;
КонецЦикла;
ЛишниеСимволы = 2;
СтрокаВызова = Лев(СтрокаВызова, СтрДлина(СтрокаВызова) - ЛишниеСимволы);
СтрокаВызова = СтрокаВызова + ");";
СтрокаВызова = "Ответ = " + СтрокаВызова;
ТекстВыполнения = ТекстВыполнения + Символы.ПС + СтрокаВызова;
Возврат ТекстВыполнения;
Иначе
СтрокаВызова = СтрокаВызова + " , ";
КонецЕсли;
КонецЦикла;
ЛишниеСимволы = 2;
СтрокаВызова = Лев(СтрокаВызова, СтрДлина(СтрокаВызова) - ЛишниеСимволы);
СтрокаВызова = СтрокаВызова + ");";
СтрокаВызова = "Ответ = " + СтрокаВызова;
ТекстВыполнения = ТекстВыполнения + Символы.ПС + СтрокаВызова;
Возврат Новый Структура("Ошибка,Результат", Ложь, ТекстВыполнения);
КонецФункции
Функция ТребуетсяОбработкаУправляющихПоследовательностей(Знач ИмяПараметра, Знач ЗначениеПараметра)
ЗначениеПараметраСокр = СокрЛП(ЗначениеПараметра);
ФайлПараметра = Новый Файл(ЗначениеПараметраСокр);
Возврат Не СтрНачинаетсяС(ЗначениеПараметраСокр, "{")
И Не СтрНачинаетсяС(ЗначениеПараметраСокр, "[")
И Не ФайлПараметра.Существует()
И Не ИмяПараметра = "Параметр_out";
ЗначениеПараметраСокр = СокрЛП(ЗначениеПараметра);
ФайлПараметра = Новый Файл(ЗначениеПараметраСокр);
Возврат Не СтрНачинаетсяС(ЗначениеПараметраСокр, "{")
И Не СтрНачинаетсяС(ЗначениеПараметраСокр, "[")
И Не ФайлПараметра.Существует()
И Не ИмяПараметра = "Параметр_out";
КонецФункции

View File

@ -2169,9 +2169,9 @@
КонецФункции
Функция ПолучитьОбщийМодуль(Знач Имя)
Модуль = Вычислить(Имя);
Возврат Модуль;
КонецФункции

View File

@ -3,51 +3,49 @@
Перем СоответствиеКоманд;
Процедура ПриСозданииОбъекта()
СоответствиеКоманд = Новый Соответствие();
СоответствиеКоманд.Вставить("tools", "Утилиты");
СоответствиеКоманд.Вставить("airtable", "OPI_Airtable");
СоответствиеКоманд.Вставить("bitrix24", "OPI_Bitrix24");
СоответствиеКоманд.Вставить("cdek", "OPI_CDEK");
СоответствиеКоманд.Вставить("dropbox", "OPI_Dropbox");
СоответствиеКоманд.Вставить("gcalendar", "OPI_GoogleCalendar");
СоответствиеКоманд.Вставить("gdrive", "OPI_GoogleDrive");
СоответствиеКоманд.Вставить("gsheets", "OPI_GoogleSheets");
СоответствиеКоманд.Вставить("google", "OPI_GoogleWorkspace");
СоответствиеКоманд.Вставить("mongodb", "OPI_MongoDB");
СоответствиеКоманд.Вставить("neocities", "OPI_Neocities");
СоответствиеКоманд.Вставить("notion", "OPI_Notion");
СоответствиеКоманд.Вставить("ozon", "OPI_Ozon");
СоответствиеКоманд.Вставить("s3", "OPI_S3");
СоответствиеКоманд.Вставить("slack", "OPI_Slack");
СоответствиеКоманд.Вставить("sqlite", "OPI_SQLite");
СоответствиеКоманд.Вставить("tcp", "OPI_TCP");
СоответствиеКоманд.Вставить("telegram", "OPI_Telegram");
СоответствиеКоманд.Вставить("twitter", "OPI_Twitter");
СоответствиеКоманд.Вставить("viber", "OPI_Viber");
СоответствиеКоманд.Вставить("vk", "OPI_VK");
СоответствиеКоманд.Вставить("vkteams", "OPI_VKTeams");
СоответствиеКоманд.Вставить("yadisk", "OPI_YandexDisk");
СоответствиеКоманд.Вставить("yandex", "OPI_YandexID");
СоответствиеКоманд.Вставить("yamarket", "OPI_YandexMarket");
СоответствиеКоманд.Вставить("metrika", "OPI_YandexMetrika");
СоответствиеКоманд.Вставить("proxy", "OPI_ПроксиИнтеграций");
СоответствиеКоманд = Новый Соответствие();
СоответствиеКоманд.Вставить("tools", "Утилиты");
СоответствиеКоманд.Вставить("airtable", "OPI_Airtable");
СоответствиеКоманд.Вставить("bitrix24", "OPI_Bitrix24");
СоответствиеКоманд.Вставить("cdek", "OPI_CDEK");
СоответствиеКоманд.Вставить("dropbox", "OPI_Dropbox");
СоответствиеКоманд.Вставить("gcalendar", "OPI_GoogleCalendar");
СоответствиеКоманд.Вставить("gdrive", "OPI_GoogleDrive");
СоответствиеКоманд.Вставить("gsheets", "OPI_GoogleSheets");
СоответствиеКоманд.Вставить("google", "OPI_GoogleWorkspace");
СоответствиеКоманд.Вставить("mongodb", "OPI_MongoDB");
СоответствиеКоманд.Вставить("neocities", "OPI_Neocities");
СоответствиеКоманд.Вставить("notion", "OPI_Notion");
СоответствиеКоманд.Вставить("ozon", "OPI_Ozon");
СоответствиеКоманд.Вставить("s3", "OPI_S3");
СоответствиеКоманд.Вставить("slack", "OPI_Slack");
СоответствиеКоманд.Вставить("sqlite", "OPI_SQLite");
СоответствиеКоманд.Вставить("tcp", "OPI_TCP");
СоответствиеКоманд.Вставить("telegram", "OPI_Telegram");
СоответствиеКоманд.Вставить("twitter", "OPI_Twitter");
СоответствиеКоманд.Вставить("viber", "OPI_Viber");
СоответствиеКоманд.Вставить("vk", "OPI_VK");
СоответствиеКоманд.Вставить("vkteams", "OPI_VKTeams");
СоответствиеКоманд.Вставить("yadisk", "OPI_YandexDisk");
СоответствиеКоманд.Вставить("yandex", "OPI_YandexID");
СоответствиеКоманд.Вставить("yamarket", "OPI_YandexMarket");
СоответствиеКоманд.Вставить("metrika", "OPI_YandexMetrika");
СоответствиеКоманд.Вставить("proxy", "OPI_ПроксиИнтеграций");
КонецПроцедуры
Функция ПолучитьВерсию() Экспорт
Возврат "1.18.0";
Возврат "1.18.0";
КонецФункции
Функция ПолучитьСоответствиеКомандМодулей() Экспорт
Возврат СоответствиеКоманд;
Возврат СоответствиеКоманд;
КонецФункции
Функция ПолучитьСостав(Знач Команда) Экспорт
ТекущийСостав = Новый(Команда);
Возврат ТекущийСостав.ПолучитьСостав();
КонецФункции
Функция ПолучитьПолныйСостав() Экспорт
ОбщаяТаблица = Неопределено;
@ -69,7 +67,6 @@
Возврат ОбщаяТаблица;
КонецФункции
Функция СформироватьСтрокуВызоваМетода(Знач ПереданныеПараметры, Знач Команда, Знач Метод) Экспорт
Модуль = СоответствиеКоманд.Получить(Команда);
@ -131,7 +128,6 @@
Возврат Новый Структура("Ошибка,Результат", Ложь, ТекстВыполнения);
КонецФункции
Функция ТребуетсяОбработкаУправляющихПоследовательностей(Знач ИмяПараметра, Знач ЗначениеПараметра)
ЗначениеПараметраСокр = СокрЛП(ЗначениеПараметра);