1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-01-06 03:54:27 +02:00

CDEK: Договоренности о доставке

This commit is contained in:
Anton 2024-10-20 15:46:00 +03:00
parent 88a36f71aa
commit 5826ad9150
8 changed files with 5751 additions and 5142 deletions

File diff suppressed because it is too large Load Diff

View File

@ -728,6 +728,7 @@
// Получает заявку на вызов курьера по UUID
//
// Примечание:
// Заявка должна быть предварительно создана. См. СоздатьЗаявкуНаВызовКурьера
// Метод в документации API: [Информация о заявке](@api-docs.cdek.ru/29948360.html)
//
// Параметры:
@ -775,6 +776,59 @@
КонецФункции
// Создать договоренность о доставке
// Фиксирует оговоренные с клиентом дату, время и адрес доставки
//
// Примечание:
// Метод в документации API: [Регистрация договоренности о доставке](@api-docs.cdek.ru/36981338.html)
//
// Параметры:
// Токен - Строка - Токен авторизации - token
// Договоренность - Структура Из КлючИЗначение - Описание договоренности. См. ПолучитьОписаниеДоговоренности - appt
// ТестовыйAPI - Булево - Флаг использования API для тестовых запросов - testapi
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от CDEK
Функция ЗафиксироватьДоговоренностьОДоставке(Знач Токен, Знач Договоренность, Знач ТестовыйAPI = Ложь) Экспорт
OPI_ПреобразованиеТипов.ПолучитьКоллекцию(Договоренность);
URL = СформироватьURL("/delivery", ТестовыйAPI);
Заголовки = СоздатьЗаголовкиЗапроса(Токен);
Ответ = OPI_Инструменты.Post(URL, Договоренность, Заголовки);
Возврат Ответ;
КонецФункции
// Получить договоренность о доставке
// Получает информацию об оговоренных с клиентом дате, времени и адресе доставки
//
// Примечание:
// Договоренность должна быть предварительно создана. См. ЗафиксироватьДоговоренностьОДоставке
// Метод в документации API: [Информация о договоренности о доставке](@api-docs.cdek.ru/36981626.html)
//
// Параметры:
// Токен - Строка - Токен авторизации - token
// UUID - Строка - UUID договоренности - uuid
// ТестовыйAPI - Булево - Флаг использования API для тестовых запросов - testapi
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от CDEK
Функция ПолучитьДоговоренностьОДоставке(Знач Токен, Знач UUID, Знач ТестовыйAPI = Ложь) Экспорт
OPI_ПреобразованиеТипов.ПолучитьСтроку(UUID);
URL = СформироватьURL("/delivery/" + UUID, ТестовыйAPI);
Заголовки = СоздатьЗаголовкиЗапроса(Токен);
Ответ = OPI_Инструменты.Get(URL, , Заголовки);
Возврат Ответ;
КонецФункции
// Получить описание заявки курьера
// Получает макет для создания заявки на вызов курьера в функции СоздатьЗаявкуНаВызовКурьера
//
@ -859,6 +913,64 @@
КонецФункции
// Получить описание договоренности
// Получает макет для создания о доставке в функции ЗафиксироватьДоговоренностьОДоставке
//
// Примечание:
// Обязательность реквизитов может зависить от типа зказа или вложенности. Обязательно ознакомьтесь с документацией CDEK
// Описания полей в документации: [Регистрация договоренности о доставке](@api-docs.cdek.ru/36981338.html)
//
// Параметры:
// Пустая - Булево - Истина > структура с пустыми значениями, Ложь > в значениях будут описания полей - empty
// ТолькоОбязательные - Булево - Истина > в макете будут только обязательные поля - required
//
// Возвращаемое значение:
// Структура Из КлючИЗначение - Структура полей
Функция ПолучитьОписаниеДоговоренности(Знач Пустая = Ложь, Знач ТолькоОбязательные = Ложь) Экспорт
OPI_ПреобразованиеТипов.ПолучитьБулево(Пустая);
OPI_ПреобразованиеТипов.ПолучитьБулево(ТолькоОбязательные);
СтруктураДоговоренности = Новый Структура;
СтруктураДоговоренности.Вставить("date", "<Дата доставки, согласованная с получателем>");
Если Не ТолькоОбязательные Тогда
СтруктураДоговоренности.Вставить("cdek_number" , "<Номер заказа СДЭК>");
СтруктураДоговоренности.Вставить("order_uuid" , "<Идентификатор заказа в ИС СДЭК>");
СтруктураДоговоренности.Вставить("time_from" , "<Время доставки С, согласованное с получателем>");
СтруктураДоговоренности.Вставить("time_to" , "<Время доставки ПО, согласованное с получателем>");
СтруктураДоговоренности.Вставить("comment" , "<Комментарий>");
СтруктураДоговоренности.Вставить("delivery_point", "<Буквенно-цифровой код ПВЗ СДЭК>");
СтруктураАдресаДоставки = Новый Структура;
СтруктураАдресаДоставки.Вставить("code" , "<Код населенного пункта СДЭК>");
СтруктураАдресаДоставки.Вставить("fias_guid" , "<Уникальный идентификатор ФИАС>");
СтруктураАдресаДоставки.Вставить("postal_code" , "<Почтовый индекс>");
СтруктураАдресаДоставки.Вставить("longitude" , "<Долгота>");
СтруктураАдресаДоставки.Вставить("latitude" , "<Широта>");
СтруктураАдресаДоставки.Вставить("country_code", "<Код страны в формате ISO_3166-1_alpha-2>");
СтруктураАдресаДоставки.Вставить("region" , "<Название региона>");
СтруктураАдресаДоставки.Вставить("region_code" , "<Код региона>");
СтруктураАдресаДоставки.Вставить("sub_region" , "<Название района региона>");
СтруктураАдресаДоставки.Вставить("city" , "<Название города>");
СтруктураАдресаДоставки.Вставить("kladr_code" , "<Код КЛАДР>");
СтруктураАдресаДоставки.Вставить("address" , "<Строка адреса>");
СтруктураДоговоренности.Вставить("to_location", СтруктураАдресаДоставки);
КонецЕсли;
Если Пустая Тогда
СтруктураДоговоренности = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураДоговоренности);
КонецЕсли;
//@skip-check constructor-function-return-section
Возврат СтруктураДоговоренности;
КонецФункции
#КонецОбласти
#КонецОбласти

View File

@ -2027,13 +2027,24 @@
ПараметрыТеста = Новый Структура;
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("CDEK_Token" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("CDEK_OrderUUID", ПараметрыТеста);
CDEK_ПолучитьДоступныеИнтервалыДоставки(ПараметрыТеста);
CDEK_СоздатьЗаказ(ПараметрыТеста);
OPI_Инструменты.Пауза(25);
CDEK_ПолучитьОписаниеЗаявкиКурьера(ПараметрыТеста);
CDEK_СоздатьЗаявкуНаВызовКурьера(ПараметрыТеста);
CDEK_ПолучитьЗаявкуНаВызовКурьера(ПараметрыТеста);
CDEK_УдалитьЗаявкуНаВызовКурьера(ПараметрыТеста);
CDEK_ПолучитьОписаниеДоговоренности(ПараметрыТеста);
CDEK_ПолучитьДоступныеИнтервалыДоставки(ПараметрыТеста);
CDEK_ЗафиксироватьДоговоренностьОДоставке(ПараметрыТеста);
OPI_Инструменты.Пауза(25);
CDEK_ПолучитьДоговоренностьОДоставке(ПараметрыТеста);
CDEK_УдалитьЗаказ(ПараметрыТеста);
КонецПроцедуры
@ -14060,6 +14071,79 @@
КонецПроцедуры
Процедура CDEK_ПолучитьОписаниеДоговоренности(ПараметрыФункции)
Результат = OPI_CDEK.ПолучитьОписаниеДоговоренности();
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьОписаниеДоговоренности", "CDEK");
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
Результат = OPI_CDEK.ПолучитьОписаниеДоговоренности(Истина);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьОписаниеДоговоренности (Пустая)", "CDEK");
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
КонецПроцедуры
Процедура CDEK_ЗафиксироватьДоговоренностьОДоставке(ПараметрыФункции)
Токен = ПараметрыФункции["CDEK_Token"];
UUIDЗаказа = ПараметрыФункции["CDEK_OrderUUID"];
ТекущаяДата = OPI_Инструменты.ПолучитьТекущуюДату();
Договоренность = Новый Структура;
Договоренность.Вставить("cdek_number", "1106207236");
Договоренность.Вставить("order_uuid" , UUIDЗаказа);
Договоренность.Вставить("date" , Формат(ТекущаяДата + 60 * 60 * 24 * 10, "ДФ=yyyy-MM-dd"));
Договоренность.Вставить("time_from" , "10:00");
Договоренность.Вставить("time_to" , "17:00");
Договоренность.Вставить("comment" , "Офис группы компаний");
МестоДоставки = Новый Структура;
МестоДоставки.Вставить("code" , "270");
МестоДоставки.Вставить("fias_guid" , "0c5b2444-70a0-4932-980c-b4dc0d3f02b5");
МестоДоставки.Вставить("postal_code" , "109004");
МестоДоставки.Вставить("longitude" , 37.6204);
МестоДоставки.Вставить("latitude" , 55.754);
МестоДоставки.Вставить("country_code", "RU");
МестоДоставки.Вставить("region" , "Новосибирск");
МестоДоставки.Вставить("sub_region" , "Новосибирск");
МестоДоставки.Вставить("city" , "Новосибирск");
МестоДоставки.Вставить("kladr_code" , "7700000000000");
МестоДоставки.Вставить("address" , "ул. Блюхера, 33");
Договоренность.Вставить("to_location", МестоДоставки);
Результат = OPI_CDEK.ЗафиксироватьДоговоренностьОДоставке(Токен, Договоренность, Истина);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗафиксироватьДоговоренностьОДоставке", "CDEK");
OPI_ПолучениеДанныхТестов.Проверка_СдэкЗаказ(Результат);
UUID = Результат["entity"]["uuid"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("CDEK_ApptUUID", UUID);
OPI_Инструменты.ДобавитьПоле("CDEK_ApptUUID", UUID, "Строка", ПараметрыФункции);
КонецПроцедуры
Процедура CDEK_ПолучитьДоговоренностьОДоставке(ПараметрыФункции)
Токен = ПараметрыФункции["CDEK_Token"];
UUID = ПараметрыФункции["CDEK_ApptUUID"];
Результат = OPI_CDEK.ПолучитьДоговоренностьОДоставке(Токен, UUID, Истина);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДоговоренностьОДоставке", "CDEK");
OPI_ПолучениеДанныхТестов.Проверка_СдэкЗаказ(Результат);
КонецПроцедуры
#КонецОбласти
#КонецОбласти

View File

@ -2027,6 +2027,12 @@
CLI_CDEK_СоздатьЗаявкуНаВызовКурьера(ПараметрыТеста);
CLI_CDEK_ПолучитьЗаявкуНаВызовКурьера(ПараметрыТеста);
CLI_CDEK_УдалитьЗаявкуНаВызовКурьера(ПараметрыТеста);
CLI_CDEK_ПолучитьОписаниеДоговоренности(ПараметрыТеста);
CLI_CDEK_ЗафиксироватьДоговоренностьОДоставке(ПараметрыТеста);
OPI_Инструменты.Пауза(25);
CLI_CDEK_ПолучитьДоговоренностьОДоставке(ПараметрыТеста);
КонецПроцедуры
@ -15976,6 +15982,92 @@
КонецПроцедуры
Процедура CLI_CDEK_ПолучитьОписаниеДоговоренности(ПараметрыФункции)
Опции = Новый Структура;
Опции.Вставить("empty", Ложь);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("cdek", "ПолучитьОписаниеДоговоренности", Опции);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьОписаниеДоговоренности", "CDEK");
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
Опции = Новый Структура;
Опции.Вставить("empty", Истина);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("cdek", "ПолучитьОписаниеДоговоренности", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьОписаниеДоговоренности (Пустая)", "CDEK");
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
КонецПроцедуры
Процедура CLI_CDEK_ЗафиксироватьДоговоренностьОДоставке(ПараметрыФункции)
Токен = ПараметрыФункции["CDEK_Token"];
ТекущаяДата = OPI_Инструменты.ПолучитьТекущуюДату();
Договоренность = Новый Структура;
Договоренность.Вставить("cdek_number", "1106207236");
Договоренность.Вставить("order_uuid" , "72753031-df04-44a4-bc60-11e8b5253b1d");
Договоренность.Вставить("date" , Формат(ТекущаяДата + 60 * 60 * 24, "ДФ=yyyy-MM-dd"));
Договоренность.Вставить("time_from" , "10:00");
Договоренность.Вставить("time_to" , "15:00");
Договоренность.Вставить("comment" , "Офис группы компаний");
МестоДоставки = Новый Структура;
МестоДоставки.Вставить("code" , "137");
МестоДоставки.Вставить("fias_guid" , "c2deb16a-0330-4f05-821f-1d09c93331e6");
МестоДоставки.Вставить("postal_code" , "190000");
МестоДоставки.Вставить("longitude" , "30.3159");
МестоДоставки.Вставить("latitude" , "59.9391");
МестоДоставки.Вставить("country_code", "RU");
МестоДоставки.Вставить("region" , "Санкт-Петербург");
МестоДоставки.Вставить("region_code" , "82");
МестоДоставки.Вставить("sub_region" , "Санкт-Петербург");
МестоДоставки.Вставить("city" , "Санкт-Петербург");
МестоДоставки.Вставить("kladr_code" , "78");
МестоДоставки.Вставить("address" , "г.Бердск ул.Ленина 16");
Договоренность.Вставить("to_location", МестоДоставки);
Опции = Новый Структура;
Опции.Вставить("token" , Токен);
Опции.Вставить("appt" , Договоренность);
Опции.Вставить("testapi", Истина);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("cdek", "ЗафиксироватьДоговоренностьОДоставке", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗафиксироватьДоговоренностьОДоставке", "CDEK");
OPI_ПолучениеДанныхТестов.Проверка_СдэкЗаказ(Результат);
UUID = Результат["entity"]["uuid"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("CDEK_ApptUUID", UUID);
OPI_Инструменты.ДобавитьПоле("CDEK_ApptUUID", UUID, "Строка", ПараметрыФункции);
КонецПроцедуры
Процедура CLI_CDEK_ПолучитьДоговоренностьОДоставке(ПараметрыФункции)
Токен = ПараметрыФункции["CDEK_Token"];
UUID = ПараметрыФункции["CDEK_ApptUUID"];
Опции = Новый Структура;
Опции.Вставить("token" , Токен);
Опции.Вставить("uuid" , UUID);
Опции.Вставить("testapi", Истина);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("cdek", "ПолучитьДоговоренностьОДоставке", Опции);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДоговоренностьОДоставке", "CDEK");
OPI_ПолучениеДанныхТестов.Проверка_СдэкЗаказ(Результат);
КонецПроцедуры
#КонецОбласти
#КонецОбласти

View File

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

View File

@ -728,6 +728,7 @@
// Получает заявку на вызов курьера по UUID
//
// Примечание:
// Заявка должна быть предварительно создана. См. СоздатьЗаявкуНаВызовКурьера
// Метод в документации API: [Информация о заявке](@api-docs.cdek.ru/29948360.html)
//
// Параметры:
@ -775,6 +776,59 @@
КонецФункции
// Зафиксировать договоренность о доставке
// Фиксирует оговоренные с клиентом дату, время и адрес доставки
//
// Примечание:
// Метод в документации API: [Регистрация договоренности о доставке](@api-docs.cdek.ru/36981338.html)
//
// Параметры:
// Токен - Строка - Токен авторизации - token
// Договоренность - Структура Из КлючИЗначение - Описание договоренности. См. ПолучитьОписаниеДоговоренности - appt
// ТестовыйAPI - Булево - Флаг использования API для тестовых запросов - testapi
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от CDEK
Функция ЗафиксироватьДоговоренностьОДоставке(Знач Токен, Знач Договоренность, Знач ТестовыйAPI = Ложь) Экспорт
OPI_ПреобразованиеТипов.ПолучитьКоллекцию(Договоренность);
URL = СформироватьURL("/delivery", ТестовыйAPI);
Заголовки = СоздатьЗаголовкиЗапроса(Токен);
Ответ = OPI_Инструменты.Post(URL, Договоренность, Заголовки);
Возврат Ответ;
КонецФункции
// Получить договоренность о доставке
// Получает информацию об оговоренных с клиентом дате, времени и адресе доставки
//
// Примечание:
// Договоренность должна быть предварительно создана. См. ЗафиксироватьДоговоренностьОДоставке
// Метод в документации API: [Информация о договоренности о доставке](@api-docs.cdek.ru/36981626.html)
//
// Параметры:
// Токен - Строка - Токен авторизации - token
// UUID - Строка - UUID договоренности - uuid
// ТестовыйAPI - Булево - Флаг использования API для тестовых запросов - testapi
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от CDEK
Функция ПолучитьДоговоренностьОДоставке(Знач Токен, Знач UUID, Знач ТестовыйAPI = Ложь) Экспорт
OPI_ПреобразованиеТипов.ПолучитьСтроку(UUID);
URL = СформироватьURL("/delivery/" + UUID, ТестовыйAPI);
Заголовки = СоздатьЗаголовкиЗапроса(Токен);
Ответ = OPI_Инструменты.Get(URL, , Заголовки);
Возврат Ответ;
КонецФункции
// Получить описание заявки курьера
// Получает макет для создания заявки на вызов курьера в функции СоздатьЗаявкуНаВызовКурьера
//
@ -859,6 +913,64 @@
КонецФункции
// Получить описание договоренности
// Получает макет для создания о доставке в функции ЗафиксироватьДоговоренностьОДоставке
//
// Примечание:
// Обязательность реквизитов может зависить от типа зказа или вложенности. Обязательно ознакомьтесь с документацией CDEK
// Описания полей в документации: [Регистрация договоренности о доставке](@api-docs.cdek.ru/36981338.html)
//
// Параметры:
// Пустая - Булево - Истина > структура с пустыми значениями, Ложь > в значениях будут описания полей - empty
// ТолькоОбязательные - Булево - Истина > в макете будут только обязательные поля - required
//
// Возвращаемое значение:
// Структура Из КлючИЗначение - Структура полей
Функция ПолучитьОписаниеДоговоренности(Знач Пустая = Ложь, Знач ТолькоОбязательные = Ложь) Экспорт
OPI_ПреобразованиеТипов.ПолучитьБулево(Пустая);
OPI_ПреобразованиеТипов.ПолучитьБулево(ТолькоОбязательные);
СтруктураДоговоренности = Новый Структура;
СтруктураДоговоренности.Вставить("date", "<Дата доставки, согласованная с получателем>");
Если Не ТолькоОбязательные Тогда
СтруктураДоговоренности.Вставить("cdek_number" , "<Номер заказа СДЭК>");
СтруктураДоговоренности.Вставить("order_uuid" , "<Идентификатор заказа в ИС СДЭК>");
СтруктураДоговоренности.Вставить("time_from" , "<Время доставки С, согласованное с получателем>");
СтруктураДоговоренности.Вставить("time_to" , "<Время доставки ПО, согласованное с получателем>");
СтруктураДоговоренности.Вставить("comment" , "<Комментарий>");
СтруктураДоговоренности.Вставить("delivery_point", "<Буквенно-цифровой код ПВЗ СДЭК>");
СтруктураАдресаДоставки = Новый Структура;
СтруктураАдресаДоставки.Вставить("code" , "<Код населенного пункта СДЭК>");
СтруктураАдресаДоставки.Вставить("fias_guid" , "<Уникальный идентификатор ФИАС>");
СтруктураАдресаДоставки.Вставить("postal_code" , "<Почтовый индекс>");
СтруктураАдресаДоставки.Вставить("longitude" , "<Долгота>");
СтруктураАдресаДоставки.Вставить("latitude" , "<Широта>");
СтруктураАдресаДоставки.Вставить("country_code", "<Код страны в формате ISO_3166-1_alpha-2>");
СтруктураАдресаДоставки.Вставить("region" , "<Название региона>");
СтруктураАдресаДоставки.Вставить("region_code" , "<Код региона>");
СтруктураАдресаДоставки.Вставить("sub_region" , "<Название района региона>");
СтруктураАдресаДоставки.Вставить("city" , "<Название города>");
СтруктураАдресаДоставки.Вставить("kladr_code" , "<Код КЛАДР>");
СтруктураАдресаДоставки.Вставить("address" , "<Строка адреса>");
СтруктураДоговоренности.Вставить("to_location", СтруктураАдресаДоставки);
КонецЕсли;
Если Пустая Тогда
СтруктураДоговоренности = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураДоговоренности);
КонецЕсли;
//@skip-check constructor-function-return-section
Возврат СтруктураДоговоренности;
КонецФункции
#КонецОбласти
#КонецОбласти

View File

@ -2027,13 +2027,24 @@
ПараметрыТеста = Новый Структура;
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("CDEK_Token" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("CDEK_OrderUUID", ПараметрыТеста);
CDEK_ПолучитьДоступныеИнтервалыДоставки(ПараметрыТеста);
CDEK_СоздатьЗаказ(ПараметрыТеста);
OPI_Инструменты.Пауза(25);
CDEK_ПолучитьОписаниеЗаявкиКурьера(ПараметрыТеста);
CDEK_СоздатьЗаявкуНаВызовКурьера(ПараметрыТеста);
CDEK_ПолучитьЗаявкуНаВызовКурьера(ПараметрыТеста);
CDEK_УдалитьЗаявкуНаВызовКурьера(ПараметрыТеста);
CDEK_ПолучитьОписаниеДоговоренности(ПараметрыТеста);
CDEK_ПолучитьДоступныеИнтервалыДоставки(ПараметрыТеста);
CDEK_ЗафиксироватьДоговоренностьОДоставке(ПараметрыТеста);
OPI_Инструменты.Пауза(25);
CDEK_ПолучитьДоговоренностьОДоставке(ПараметрыТеста);
CDEK_УдалитьЗаказ(ПараметрыТеста);
КонецПроцедуры
@ -14060,6 +14071,79 @@
КонецПроцедуры
Процедура CDEK_ПолучитьОписаниеДоговоренности(ПараметрыФункции)
Результат = OPI_CDEK.ПолучитьОписаниеДоговоренности();
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьОписаниеДоговоренности", "CDEK");
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
Результат = OPI_CDEK.ПолучитьОписаниеДоговоренности(Истина);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьОписаниеДоговоренности (Пустая)", "CDEK");
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
КонецПроцедуры
Процедура CDEK_ЗафиксироватьДоговоренностьОДоставке(ПараметрыФункции)
Токен = ПараметрыФункции["CDEK_Token"];
UUIDЗаказа = ПараметрыФункции["CDEK_OrderUUID"];
ТекущаяДата = OPI_Инструменты.ПолучитьТекущуюДату();
Договоренность = Новый Структура;
Договоренность.Вставить("cdek_number", "1106207236");
Договоренность.Вставить("order_uuid" , UUIDЗаказа);
Договоренность.Вставить("date" , Формат(ТекущаяДата + 60 * 60 * 24 * 10, "ДФ=yyyy-MM-dd"));
Договоренность.Вставить("time_from" , "10:00");
Договоренность.Вставить("time_to" , "17:00");
Договоренность.Вставить("comment" , "Офис группы компаний");
МестоДоставки = Новый Структура;
МестоДоставки.Вставить("code" , "270");
МестоДоставки.Вставить("fias_guid" , "0c5b2444-70a0-4932-980c-b4dc0d3f02b5");
МестоДоставки.Вставить("postal_code" , "109004");
МестоДоставки.Вставить("longitude" , 37.6204);
МестоДоставки.Вставить("latitude" , 55.754);
МестоДоставки.Вставить("country_code", "RU");
МестоДоставки.Вставить("region" , "Новосибирск");
МестоДоставки.Вставить("sub_region" , "Новосибирск");
МестоДоставки.Вставить("city" , "Новосибирск");
МестоДоставки.Вставить("kladr_code" , "7700000000000");
МестоДоставки.Вставить("address" , "ул. Блюхера, 33");
Договоренность.Вставить("to_location", МестоДоставки);
Результат = OPI_CDEK.ЗафиксироватьДоговоренностьОДоставке(Токен, Договоренность, Истина);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗафиксироватьДоговоренностьОДоставке", "CDEK");
OPI_ПолучениеДанныхТестов.Проверка_СдэкЗаказ(Результат);
UUID = Результат["entity"]["uuid"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("CDEK_ApptUUID", UUID);
OPI_Инструменты.ДобавитьПоле("CDEK_ApptUUID", UUID, "Строка", ПараметрыФункции);
КонецПроцедуры
Процедура CDEK_ПолучитьДоговоренностьОДоставке(ПараметрыФункции)
Токен = ПараметрыФункции["CDEK_Token"];
UUID = ПараметрыФункции["CDEK_ApptUUID"];
Результат = OPI_CDEK.ПолучитьДоговоренностьОДоставке(Токен, UUID, Истина);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДоговоренностьОДоставке", "CDEK");
OPI_ПолучениеДанныхТестов.Проверка_СдэкЗаказ(Результат);
КонецПроцедуры
#КонецОбласти
#КонецОбласти

View File

@ -2027,6 +2027,12 @@
CLI_CDEK_СоздатьЗаявкуНаВызовКурьера(ПараметрыТеста);
CLI_CDEK_ПолучитьЗаявкуНаВызовКурьера(ПараметрыТеста);
CLI_CDEK_УдалитьЗаявкуНаВызовКурьера(ПараметрыТеста);
CLI_CDEK_ПолучитьОписаниеДоговоренности(ПараметрыТеста);
CLI_CDEK_ЗафиксироватьДоговоренностьОДоставке(ПараметрыТеста);
OPI_Инструменты.Пауза(25);
CLI_CDEK_ПолучитьДоговоренностьОДоставке(ПараметрыТеста);
КонецПроцедуры
@ -15976,6 +15982,92 @@
КонецПроцедуры
Процедура CLI_CDEK_ПолучитьОписаниеДоговоренности(ПараметрыФункции)
Опции = Новый Структура;
Опции.Вставить("empty", Ложь);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("cdek", "ПолучитьОписаниеДоговоренности", Опции);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьОписаниеДоговоренности", "CDEK");
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
Опции = Новый Структура;
Опции.Вставить("empty", Истина);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("cdek", "ПолучитьОписаниеДоговоренности", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьОписаниеДоговоренности (Пустая)", "CDEK");
OPI_ПолучениеДанныхТестов.Проверка_Структура(Результат);
КонецПроцедуры
Процедура CLI_CDEK_ЗафиксироватьДоговоренностьОДоставке(ПараметрыФункции)
Токен = ПараметрыФункции["CDEK_Token"];
ТекущаяДата = OPI_Инструменты.ПолучитьТекущуюДату();
Договоренность = Новый Структура;
Договоренность.Вставить("cdek_number", "1106207236");
Договоренность.Вставить("order_uuid" , "72753031-df04-44a4-bc60-11e8b5253b1d");
Договоренность.Вставить("date" , Формат(ТекущаяДата + 60 * 60 * 24, "ДФ=yyyy-MM-dd"));
Договоренность.Вставить("time_from" , "10:00");
Договоренность.Вставить("time_to" , "15:00");
Договоренность.Вставить("comment" , "Офис группы компаний");
МестоДоставки = Новый Структура;
МестоДоставки.Вставить("code" , "137");
МестоДоставки.Вставить("fias_guid" , "c2deb16a-0330-4f05-821f-1d09c93331e6");
МестоДоставки.Вставить("postal_code" , "190000");
МестоДоставки.Вставить("longitude" , "30.3159");
МестоДоставки.Вставить("latitude" , "59.9391");
МестоДоставки.Вставить("country_code", "RU");
МестоДоставки.Вставить("region" , "Санкт-Петербург");
МестоДоставки.Вставить("region_code" , "82");
МестоДоставки.Вставить("sub_region" , "Санкт-Петербург");
МестоДоставки.Вставить("city" , "Санкт-Петербург");
МестоДоставки.Вставить("kladr_code" , "78");
МестоДоставки.Вставить("address" , "г.Бердск ул.Ленина 16");
Договоренность.Вставить("to_location", МестоДоставки);
Опции = Новый Структура;
Опции.Вставить("token" , Токен);
Опции.Вставить("appt" , Договоренность);
Опции.Вставить("testapi", Истина);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("cdek", "ЗафиксироватьДоговоренностьОДоставке", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗафиксироватьДоговоренностьОДоставке", "CDEK");
OPI_ПолучениеДанныхТестов.Проверка_СдэкЗаказ(Результат);
UUID = Результат["entity"]["uuid"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("CDEK_ApptUUID", UUID);
OPI_Инструменты.ДобавитьПоле("CDEK_ApptUUID", UUID, "Строка", ПараметрыФункции);
КонецПроцедуры
Процедура CLI_CDEK_ПолучитьДоговоренностьОДоставке(ПараметрыФункции)
Токен = ПараметрыФункции["CDEK_Token"];
UUID = ПараметрыФункции["CDEK_ApptUUID"];
Опции = Новый Структура;
Опции.Вставить("token" , Токен);
Опции.Вставить("uuid" , UUID);
Опции.Вставить("testapi", Истина);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("cdek", "ПолучитьДоговоренностьОДоставке", Опции);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДоговоренностьОДоставке", "CDEK");
OPI_ПолучениеДанныхТестов.Проверка_СдэкЗаказ(Результат);
КонецПроцедуры
#КонецОбласти
#КонецОбласти