You've already forked OpenIntegrations
mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2025-08-10 22:41:43 +02:00
Ozon: Получение списка отправлений FBO
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -1621,6 +1621,46 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить список отправлений FBO
|
||||
// Получает список активных отправлений с фильтром или без
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [post /v2/posting/fbo/list](@docs.ozon.ru/api/seller/#operation/PostingAPI_GetFboPostingList)
|
||||
//
|
||||
// Параметры:
|
||||
// IDКлиента - Строка - Идентификатор клиента - clientid
|
||||
// КлючAPI - Строка - API ключ - apikey
|
||||
// Фильтр - Структура Из КлючИЗначение - Фильтр отправлений. См. ПолучитьСтруктуруФильтраОтправлений - filter
|
||||
// ДопПоля - Структура Из КлючИЗначение - Включение доп. полей в ответ. См. ПолучитьСтруктуруДопПолейОтправления - with
|
||||
// Отступ - Число - Количество элементов, которое будет пропущено в ответе - offset
|
||||
// Транслит - Булево - Если включена транслитерация адреса из кириллицы в латиницу > Истина - trlt
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Ozon Seller API
|
||||
Функция ПолучитьСписокОтправленийFBO(Знач IDКлиента
|
||||
, Знач КлючAPI
|
||||
, Знач Фильтр = Неопределено
|
||||
, Знач ДопПоля = Неопределено
|
||||
, Знач Отступ = 0
|
||||
, Знач Транслит = Ложь) Экспорт
|
||||
|
||||
URL = "https://api-seller.ozon.ru/v2/posting/fbo/list";
|
||||
|
||||
Заголовки = СоздатьЗаголовкиЗапроса(IDКлиента, КлючAPI);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("limit" , 1000 , "Число" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("offset" , Отступ , "Число" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("translit", Транслит, "Булево" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("filter" , Фильтр , "Коллекция", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("with" , ДопПоля , "Коллекция", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Создать черновик заявки FBO
|
||||
// Создает черновик заявки на поставку
|
||||
//
|
||||
@@ -1675,7 +1715,7 @@
|
||||
// Параметры:
|
||||
// IDКлиента - Строка - Идентификатор клиента - clientid
|
||||
// КлючAPI - Строка - API ключ - apikey
|
||||
// IDОперации - Строка - ID черновика (операции) - draft
|
||||
// IDОперации - Строка - ID черновика (операции) - oper
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Ozon Seller API
|
||||
@@ -1694,6 +1734,59 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить структуру доп. полей отправления
|
||||
// Возвращает структуру включения доп. полей ответа для метода ПолучитьСписокОтправлений
|
||||
//
|
||||
// Параметры:
|
||||
// Пустая - Булево - Истина > структура с пустыми значениями, Ложь > в значениях будут описания полей - empty
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура Из КлючИЗначение - Структура полей
|
||||
Функция ПолучитьСтруктуруДопПолейОтправления(Знач Пустая = Ложь) Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьБулево(Пустая);
|
||||
|
||||
СтруктураПолей = Новый Структура;
|
||||
|
||||
СтруктураПолей.Вставить("analytics_data", "<передайте Истина, чтобы добавить в ответ данные аналитики>");
|
||||
СтруктураПолей.Вставить("financial_data", "<передайте Истина, чтобы добавить в ответ финансовые данные>");
|
||||
|
||||
Если Пустая Тогда
|
||||
СтруктураПолей = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураПолей);
|
||||
КонецЕсли;
|
||||
|
||||
//@skip-check constructor-function-return-section
|
||||
Возврат СтруктураПолей;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить структуру фильтра отправлений
|
||||
// Возвращает структуру фильтров для метода ПолучитьСписокОтправлений
|
||||
//
|
||||
// Параметры:
|
||||
// Пустая - Булево - Истина > структура с пустыми значениями, Ложь > в значениях будут описания полей - empty
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура Из КлючИЗначение - Структура фильтра
|
||||
Функция ПолучитьСтруктуруФильтраОтправлений(Знач Пустая = Ложь) Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьБулево(Пустая);
|
||||
|
||||
СтруктураФильтра = Новый Структура;
|
||||
|
||||
СтруктураФильтра.Вставить("since" , "Начало периода в формате ISO");
|
||||
СтруктураФильтра.Вставить("status", "Статус отправления");
|
||||
СтруктураФильтра.Вставить("to" , "Конец периода в формате ISO");
|
||||
|
||||
Если Пустая Тогда
|
||||
СтруктураФильтра = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураФильтра);
|
||||
КонецЕсли;
|
||||
|
||||
//@skip-check constructor-function-return-section
|
||||
Возврат СтруктураФильтра;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
@@ -1963,6 +1963,9 @@
|
||||
Ozon_ПолучитьСписокСкладовОтгрузки(ПараметрыТеста);
|
||||
Ozon_СоздатьЧерновикЗаявкиFBO(ПараметрыТеста);
|
||||
Ozon_ПолучитьЧерновикЗаявкиFBO(ПараметрыТеста);
|
||||
Ozon_ПолучитьСтруктуруДопПолейОтправления(ПараметрыТеста);
|
||||
Ozon_ПолучитьСтруктуруФильтраОтправлений(ПараметрыТеста);
|
||||
Ozon_ПолучитьСписокОтправленийFBO(ПараметрыТеста);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
@@ -13731,14 +13734,70 @@
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
IDОперации = ПараметрыФункции["Ozon_FBOOperID"];
|
||||
|
||||
Результат = OPI_Ozon.ПолучитьЧерновикЗаявкиFBO(IDКлиента, КлючAPI, IDОперации);
|
||||
Статус = "CALCULATION_STATUS_IN_PROGRESS";
|
||||
|
||||
Пока Статус = "CALCULATION_STATUS_IN_PROGRESS" Цикл
|
||||
|
||||
Результат = OPI_Ozon.ПолучитьЧерновикЗаявкиFBO(IDКлиента, КлючAPI, IDОперации);
|
||||
Статус = Результат["status"];
|
||||
|
||||
OPI_Инструменты.Пауза(20);
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьЧерновикЗаявкиFBO", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ОзонГотовыйЧерновик(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Ozon_ПолучитьСтруктуруДопПолейОтправления(ПараметрыФункции)
|
||||
|
||||
Результат = OPI_Ozon.ПолучитьСтруктуруДопПолейОтправления();
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтруктуруДопПолейОтправления", "Ozon");
|
||||
|
||||
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Ozon_ПолучитьСтруктуруФильтраОтправлений(ПараметрыФункции)
|
||||
|
||||
Результат = OPI_Ozon.ПолучитьСтруктуруФильтраОтправлений();
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтруктуруФильтраОтправлений", "Ozon");
|
||||
|
||||
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Ozon_ПолучитьСписокОтправленийFBO(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
|
||||
ДопПоля = Новый Структура;
|
||||
ДопПоля.Вставить("analytics_data", Истина);
|
||||
ДопПоля.Вставить("financial_data", Истина);
|
||||
|
||||
Фильтр = Новый Структура;
|
||||
Фильтр.Вставить("since", XMLСтрока('20230101') + "Z");
|
||||
Фильтр.Вставить("to" , XMLСтрока('20240101') + "Z");
|
||||
|
||||
Результат = OPI_Ozon.ПолучитьСписокОтправленийFBO(IDКлиента, КлючAPI, Фильтр, ДопПоля);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокОтправленийFBO", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ОзонМассив(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область Neocities
|
||||
|
@@ -1521,6 +1521,22 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_ОзонАПИ_СхемаFBO() Экспорт
|
||||
|
||||
ПараметрыТеста = Новый Структура;
|
||||
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Ozon_ClientID" , ПараметрыТеста);
|
||||
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Ozon_ApiKey" , ПараметрыТеста);
|
||||
|
||||
CLI_Ozon_ПолучитьСписокКластеров(ПараметрыТеста);
|
||||
CLI_Ozon_ПолучитьСписокСкладовОтгрузки(ПараметрыТеста);
|
||||
CLI_Ozon_СоздатьЧерновикЗаявкиFBO(ПараметрыТеста);
|
||||
CLI_Ozon_ПолучитьЧерновикЗаявкиFBO(ПараметрыТеста);
|
||||
CLI_Ozon_ПолучитьСтруктуруДопПолейОтправления(ПараметрыТеста);
|
||||
CLI_Ozon_ПолучитьСтруктуруФильтраОтправлений(ПараметрыТеста);
|
||||
CLI_Ozon_ПолучитьСписокОтправленийFBO(ПараметрыТеста);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область Neocities
|
||||
@@ -10269,6 +10285,146 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_Ozon_ПолучитьСписокКластеров(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("clientid" , IDКлиента);
|
||||
Опции.Вставить("apikey" , КлючAPI);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("ozon", "ПолучитьСписокКластеров", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокКластеров", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ОзонКластеры(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_Ozon_ПолучитьСписокСкладовОтгрузки(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
Поиск = "ТВЕРЬ";
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("clientid" , IDКлиента);
|
||||
Опции.Вставить("apikey" , КлючAPI);
|
||||
Опции.Вставить("search" , Поиск);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("ozon", "ПолучитьСписокСкладовОтгрузки", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокСкладовОтгрузки", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ОзонПоиск(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_Ozon_СоздатьЧерновикЗаявкиFBO(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
Кластер = 1;
|
||||
|
||||
Позиции = Новый Соответствие;
|
||||
Позиции.Вставить("1783161863", 5);
|
||||
Позиции.Вставить("1784654052", 2);
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("clientid" , IDКлиента);
|
||||
Опции.Вставить("apikey" , КлючAPI);
|
||||
Опции.Вставить("clusters" , Кластер);
|
||||
Опции.Вставить("items" , Позиции);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("ozon", "СоздатьЧерновикЗаявкиFBO", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьЧерновикЗаявкиFBO", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ОзонЧерновик(Результат);
|
||||
|
||||
IDЧерновика = Результат["operation_id"];
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Ozon_FBOOperID", IDЧерновика);
|
||||
ПараметрыФункции.Вставить("Ozon_FBOOperID", IDЧерновика);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_Ozon_ПолучитьЧерновикЗаявкиFBO(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
IDОперации = ПараметрыФункции["Ozon_FBOOperID"];
|
||||
|
||||
Статус = "CALCULATION_STATUS_IN_PROGRESS";
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("clientid" , IDКлиента);
|
||||
Опции.Вставить("apikey" , КлючAPI);
|
||||
Опции.Вставить("oper" , IDОперации);
|
||||
|
||||
Пока Статус = "CALCULATION_STATUS_IN_PROGRESS" Цикл
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("ozon", "ПолучитьЧерновикЗаявкиFBO", Опции);
|
||||
Статус = Результат["status"];
|
||||
|
||||
OPI_Инструменты.Пауза(20);
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьЧерновикЗаявкиFBO", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ОзонГотовыйЧерновик(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_Ozon_ПолучитьСтруктуруДопПолейОтправления(ПараметрыФункции)
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("empty" , Ложь);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("ozon", "ПолучитьСтруктуруДопПолейОтправления", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтруктуруДопПолейОтправления", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_Ozon_ПолучитьСтруктуруФильтраОтправлений(ПараметрыФункции)
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("empty" , Ложь);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("ozon", "ПолучитьСтруктуруФильтраОтправлений", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтруктуруФильтраОтправлений", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_Ozon_ПолучитьСписокОтправленийFBO(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
|
||||
ДопПоля = Новый Структура;
|
||||
ДопПоля.Вставить("analytics_data", Истина);
|
||||
ДопПоля.Вставить("financial_data", Истина);
|
||||
|
||||
Фильтр = Новый Структура;
|
||||
Фильтр.Вставить("since", XMLСтрока('20230101') + "Z");
|
||||
Фильтр.Вставить("to" , XMLСтрока('20240101') + "Z");
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("clientid", IDКлиента);
|
||||
Опции.Вставить("apikey" , КлючAPI);
|
||||
Опции.Вставить("filter" , Фильтр);
|
||||
Опции.Вставить("with" , ДопПоля);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("ozon", "ПолучитьСписокОтправленийFBO", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокОтправленийFBO", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ОзонМассив(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область Neocities
|
||||
|
@@ -1877,15 +1877,27 @@
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_ОзонЧерновик(Знач Результат) Экспорт
|
||||
|
||||
ОжидаетЧто(Результат["operation_id"]).ИмеетТип("Строка").Заполнено();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_ОзонПоиск(Знач Результат) Экспорт
|
||||
|
||||
ОжидаетЧто(Результат["search"]).ИмеетТип("Массив").Заполнено();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_ОзонКластеры(Знач Результат) Экспорт
|
||||
|
||||
ОжидаетЧто(Результат["clusters"]).ИмеетТип("Массив").Заполнено();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_ОзонГотовыйЧерновик(Знач Результат) Экспорт
|
||||
|
||||
ОжидаетЧто(Результат["status"]).Равно("CALCULATION_STATUS_SUCCESS");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_НСУспех(Знач Результат) Экспорт
|
||||
@@ -2071,9 +2083,9 @@
|
||||
КонецФункции
|
||||
|
||||
Функция ПолучитьОбщийМодуль(Знач Имя)
|
||||
|
||||
|
||||
Модуль = Вычислить(Имя);
|
||||
|
||||
|
||||
Возврат Модуль;
|
||||
КонецФункции
|
||||
|
||||
|
@@ -1621,6 +1621,46 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить список отправлений FBO
|
||||
// Получает список активных отправлений с фильтром или без
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [post /v2/posting/fbo/list](@docs.ozon.ru/api/seller/#operation/PostingAPI_GetFboPostingList)
|
||||
//
|
||||
// Параметры:
|
||||
// IDКлиента - Строка - Идентификатор клиента - clientid
|
||||
// КлючAPI - Строка - API ключ - apikey
|
||||
// Фильтр - Структура Из КлючИЗначение - Фильтр отправлений. См. ПолучитьСтруктуруФильтраОтправлений - filter
|
||||
// ДопПоля - Структура Из КлючИЗначение - Включение доп. полей в ответ. См. ПолучитьСтруктуруДопПолейОтправления - with
|
||||
// Отступ - Число - Количество элементов, которое будет пропущено в ответе - offset
|
||||
// Транслит - Булево - Если включена транслитерация адреса из кириллицы в латиницу > Истина - trlt
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Ozon Seller API
|
||||
Функция ПолучитьСписокОтправленийFBO(Знач IDКлиента
|
||||
, Знач КлючAPI
|
||||
, Знач Фильтр = Неопределено
|
||||
, Знач ДопПоля = Неопределено
|
||||
, Знач Отступ = 0
|
||||
, Знач Транслит = Ложь) Экспорт
|
||||
|
||||
URL = "https://api-seller.ozon.ru/v2/posting/fbo/list";
|
||||
|
||||
Заголовки = СоздатьЗаголовкиЗапроса(IDКлиента, КлючAPI);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("limit" , 1000 , "Число" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("offset" , Отступ , "Число" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("translit", Транслит, "Булево" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("filter" , Фильтр , "Коллекция", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("with" , ДопПоля , "Коллекция", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Создать черновик заявки FBO
|
||||
// Создает черновик заявки на поставку
|
||||
//
|
||||
@@ -1675,7 +1715,7 @@
|
||||
// Параметры:
|
||||
// IDКлиента - Строка - Идентификатор клиента - clientid
|
||||
// КлючAPI - Строка - API ключ - apikey
|
||||
// IDОперации - Строка - ID черновика (операции) - draft
|
||||
// IDОперации - Строка - ID черновика (операции) - oper
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Ozon Seller API
|
||||
@@ -1694,6 +1734,59 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить структуру доп. полей отправления
|
||||
// Возвращает структуру включения доп. полей ответа для метода ПолучитьСписокОтправленийFBO
|
||||
//
|
||||
// Параметры:
|
||||
// Пустая - Булево - Истина > структура с пустыми значениями, Ложь > в значениях будут описания полей - empty
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура Из КлючИЗначение - Структура полей
|
||||
Функция ПолучитьСтруктуруДопПолейОтправления(Знач Пустая = Ложь) Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьБулево(Пустая);
|
||||
|
||||
СтруктураПолей = Новый Структура;
|
||||
|
||||
СтруктураПолей.Вставить("analytics_data", "<передайте Истина, чтобы добавить в ответ данные аналитики>");
|
||||
СтруктураПолей.Вставить("financial_data", "<передайте Истина, чтобы добавить в ответ финансовые данные>");
|
||||
|
||||
Если Пустая Тогда
|
||||
СтруктураПолей = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураПолей);
|
||||
КонецЕсли;
|
||||
|
||||
//@skip-check constructor-function-return-section
|
||||
Возврат СтруктураПолей;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить структуру фильтра отправлений
|
||||
// Возвращает структуру фильтров для метода ПолучитьСписокОтправленийFBO
|
||||
//
|
||||
// Параметры:
|
||||
// Пустая - Булево - Истина > структура с пустыми значениями, Ложь > в значениях будут описания полей - empty
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура Из КлючИЗначение - Структура фильтра
|
||||
Функция ПолучитьСтруктуруФильтраОтправлений(Знач Пустая = Ложь) Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьБулево(Пустая);
|
||||
|
||||
СтруктураФильтра = Новый Структура;
|
||||
|
||||
СтруктураФильтра.Вставить("since" , "Начало периода в формате ISO");
|
||||
СтруктураФильтра.Вставить("status", "Статус отправления");
|
||||
СтруктураФильтра.Вставить("to" , "Конец периода в формате ISO");
|
||||
|
||||
Если Пустая Тогда
|
||||
СтруктураФильтра = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураФильтра);
|
||||
КонецЕсли;
|
||||
|
||||
//@skip-check constructor-function-return-section
|
||||
Возврат СтруктураФильтра;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
@@ -1877,15 +1877,27 @@
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_ОзонЧерновик(Знач Результат) Экспорт
|
||||
|
||||
ОжидаетЧто(Результат["operation_id"]).ИмеетТип("Строка").Заполнено();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_ОзонПоиск(Знач Результат) Экспорт
|
||||
|
||||
ОжидаетЧто(Результат["search"]).ИмеетТип("Массив").Заполнено();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_ОзонКластеры(Знач Результат) Экспорт
|
||||
|
||||
ОжидаетЧто(Результат["clusters"]).ИмеетТип("Массив").Заполнено();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_ОзонГотовыйЧерновик(Знач Результат) Экспорт
|
||||
|
||||
ОжидаетЧто(Результат["status"]).Равно("CALCULATION_STATUS_SUCCESS");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_НСУспех(Знач Результат) Экспорт
|
||||
|
@@ -1963,6 +1963,9 @@
|
||||
Ozon_ПолучитьСписокСкладовОтгрузки(ПараметрыТеста);
|
||||
Ozon_СоздатьЧерновикЗаявкиFBO(ПараметрыТеста);
|
||||
Ozon_ПолучитьЧерновикЗаявкиFBO(ПараметрыТеста);
|
||||
Ozon_ПолучитьСтруктуруДопПолейОтправления(ПараметрыТеста);
|
||||
Ozon_ПолучитьСтруктуруФильтраОтправлений(ПараметрыТеста);
|
||||
Ozon_ПолучитьСписокОтправленийFBO(ПараметрыТеста);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
@@ -13731,14 +13734,70 @@
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
IDОперации = ПараметрыФункции["Ozon_FBOOperID"];
|
||||
|
||||
Результат = OPI_Ozon.ПолучитьЧерновикЗаявкиFBO(IDКлиента, КлючAPI, IDОперации);
|
||||
Статус = "CALCULATION_STATUS_IN_PROGRESS";
|
||||
|
||||
Пока Статус = "CALCULATION_STATUS_IN_PROGRESS" Цикл
|
||||
|
||||
Результат = OPI_Ozon.ПолучитьЧерновикЗаявкиFBO(IDКлиента, КлючAPI, IDОперации);
|
||||
Статус = Результат["status"];
|
||||
|
||||
OPI_Инструменты.Пауза(20);
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьЧерновикЗаявкиFBO", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ОзонГотовыйЧерновик(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Ozon_ПолучитьСтруктуруДопПолейОтправления(ПараметрыФункции)
|
||||
|
||||
Результат = OPI_Ozon.ПолучитьСтруктуруДопПолейОтправления();
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтруктуруДопПолейОтправления", "Ozon");
|
||||
|
||||
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Ozon_ПолучитьСтруктуруФильтраОтправлений(ПараметрыФункции)
|
||||
|
||||
Результат = OPI_Ozon.ПолучитьСтруктуруФильтраОтправлений();
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтруктуруФильтраОтправлений", "Ozon");
|
||||
|
||||
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Ozon_ПолучитьСписокОтправленийFBO(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
|
||||
ДопПоля = Новый Структура;
|
||||
ДопПоля.Вставить("analytics_data", Истина);
|
||||
ДопПоля.Вставить("financial_data", Истина);
|
||||
|
||||
Фильтр = Новый Структура;
|
||||
Фильтр.Вставить("since", XMLСтрока('20230101') + "Z");
|
||||
Фильтр.Вставить("to" , XMLСтрока('20240101') + "Z");
|
||||
|
||||
Результат = OPI_Ozon.ПолучитьСписокОтправленийFBO(IDКлиента, КлючAPI, Фильтр, ДопПоля);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокОтправленийFBO", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ОзонМассив(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область Neocities
|
||||
|
@@ -1521,6 +1521,22 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_ОзонАПИ_СхемаFBO() Экспорт
|
||||
|
||||
ПараметрыТеста = Новый Структура;
|
||||
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Ozon_ClientID" , ПараметрыТеста);
|
||||
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Ozon_ApiKey" , ПараметрыТеста);
|
||||
|
||||
CLI_Ozon_ПолучитьСписокКластеров(ПараметрыТеста);
|
||||
CLI_Ozon_ПолучитьСписокСкладовОтгрузки(ПараметрыТеста);
|
||||
CLI_Ozon_СоздатьЧерновикЗаявкиFBO(ПараметрыТеста);
|
||||
CLI_Ozon_ПолучитьЧерновикЗаявкиFBO(ПараметрыТеста);
|
||||
CLI_Ozon_ПолучитьСтруктуруДопПолейОтправления(ПараметрыТеста);
|
||||
CLI_Ozon_ПолучитьСтруктуруФильтраОтправлений(ПараметрыТеста);
|
||||
CLI_Ozon_ПолучитьСписокОтправленийFBO(ПараметрыТеста);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область Neocities
|
||||
@@ -10269,6 +10285,146 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_Ozon_ПолучитьСписокКластеров(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("clientid" , IDКлиента);
|
||||
Опции.Вставить("apikey" , КлючAPI);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("ozon", "ПолучитьСписокКластеров", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокКластеров", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ОзонКластеры(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_Ozon_ПолучитьСписокСкладовОтгрузки(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
Поиск = "ТВЕРЬ";
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("clientid" , IDКлиента);
|
||||
Опции.Вставить("apikey" , КлючAPI);
|
||||
Опции.Вставить("search" , Поиск);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("ozon", "ПолучитьСписокСкладовОтгрузки", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокСкладовОтгрузки", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ОзонПоиск(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_Ozon_СоздатьЧерновикЗаявкиFBO(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
Кластер = 1;
|
||||
|
||||
Позиции = Новый Соответствие;
|
||||
Позиции.Вставить("1783161863", 5);
|
||||
Позиции.Вставить("1784654052", 2);
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("clientid" , IDКлиента);
|
||||
Опции.Вставить("apikey" , КлючAPI);
|
||||
Опции.Вставить("clusters" , Кластер);
|
||||
Опции.Вставить("items" , Позиции);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("ozon", "СоздатьЧерновикЗаявкиFBO", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьЧерновикЗаявкиFBO", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ОзонЧерновик(Результат);
|
||||
|
||||
IDЧерновика = Результат["operation_id"];
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Ozon_FBOOperID", IDЧерновика);
|
||||
ПараметрыФункции.Вставить("Ozon_FBOOperID", IDЧерновика);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_Ozon_ПолучитьЧерновикЗаявкиFBO(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
IDОперации = ПараметрыФункции["Ozon_FBOOperID"];
|
||||
|
||||
Статус = "CALCULATION_STATUS_IN_PROGRESS";
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("clientid" , IDКлиента);
|
||||
Опции.Вставить("apikey" , КлючAPI);
|
||||
Опции.Вставить("oper" , IDОперации);
|
||||
|
||||
Пока Статус = "CALCULATION_STATUS_IN_PROGRESS" Цикл
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("ozon", "ПолучитьЧерновикЗаявкиFBO", Опции);
|
||||
Статус = Результат["status"];
|
||||
|
||||
OPI_Инструменты.Пауза(20);
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьЧерновикЗаявкиFBO", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ОзонГотовыйЧерновик(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_Ozon_ПолучитьСтруктуруДопПолейОтправления(ПараметрыФункции)
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("empty" , Ложь);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("ozon", "ПолучитьСтруктуруДопПолейОтправления", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтруктуруДопПолейОтправления", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_Ozon_ПолучитьСтруктуруФильтраОтправлений(ПараметрыФункции)
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("empty" , Ложь);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("ozon", "ПолучитьСтруктуруФильтраОтправлений", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтруктуруФильтраОтправлений", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_Ozon_ПолучитьСписокОтправленийFBO(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
|
||||
ДопПоля = Новый Структура;
|
||||
ДопПоля.Вставить("analytics_data", Истина);
|
||||
ДопПоля.Вставить("financial_data", Истина);
|
||||
|
||||
Фильтр = Новый Структура;
|
||||
Фильтр.Вставить("since", XMLСтрока('20230101') + "Z");
|
||||
Фильтр.Вставить("to" , XMLСтрока('20240101') + "Z");
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("clientid", IDКлиента);
|
||||
Опции.Вставить("apikey" , КлючAPI);
|
||||
Опции.Вставить("filter" , Фильтр);
|
||||
Опции.Вставить("with" , ДопПоля);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("ozon", "ПолучитьСписокОтправленийFBO", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокОтправленийFBO", "Ozon");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ОзонМассив(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область Neocities
|
||||
|
Reference in New Issue
Block a user