1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2024-12-25 02:42:28 +02:00

VK: Заказы

This commit is contained in:
Anton 2024-02-18 19:17:42 +03:00
parent 9bb1c7084f
commit d8719fe1c0
3 changed files with 81 additions and 28 deletions

View File

@ -18,7 +18,7 @@
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
// SOFTWARE.
// SOFTWARE.
// https://github.com/Bayselonarrend/OpenIntegrations
// Если в не знаете с чего начать, то стоит найти метод ПолучитьСтандартныеПараметры()
@ -891,15 +891,15 @@
// Изменить товар.
//
// Параметры:
// ИДТовара - Число,Строка - Идентификатор изменяемого товара
// Товар - Число,Строка - Идентификатор изменяемого товара
// ОписаниеТовара - Соответствие Из КлючИЗначение - См.ПолучитьОписаниеТовара
// Подборка - Строка - Идентификатор новой подборки
// Параметры - Структура Из Строка - См.ПолучитьСтандартныеПараметры
//
// Возвращаемое значение:
// ДвоичныеДанные, Неопределено, Произвольный - Ответ сервера
Функция ИзменитьТовар(Знач ИДТовара, Знач ОписаниеТовара, Знач Подборка = "", Знач Параметры = "") Экспорт
Возврат УправлениеТоваром(ОписаниеТовара, ИДТовара, Подборка, Параметры);
Функция ИзменитьТовар(Знач Товар, Знач ОписаниеТовара, Знач Подборка = "", Знач Параметры = "") Экспорт
Возврат УправлениеТоваром(ОписаниеТовара, Товар, Подборка, Параметры);
КонецФункции
// Удалить товар.
@ -1227,25 +1227,6 @@
КонецФункции
// Удалить свойство товара.
//
// Параметры:
// Свойство - Строка,Число - ID свойства
// Параметры - Структура Из Строка - См.ПолучитьСтандартныеПараметры
//
// Возвращаемое значение:
// ДвоичныеДанные, Неопределено, Произвольный - Ответ сервера
Функция УдалитьСвойствоТовара(Знач Свойство, Знач Параметры = "") Экспорт
Параметры_ = ПолучитьСтандартныеПараметры(Параметры);
Параметры_.Вставить("property_id", OPI_Инструменты.ЧислоВСтроку(Свойство));
Ответ = OPI_Инструменты.Get("api.vk.com/method/market.deleteProperty", Параметры_);
Возврат Ответ;
КонецФункции
// Изменить свойство товара.
//
// Параметры:
@ -1268,6 +1249,25 @@
КонецФункции
// Удалить свойство товара.
//
// Параметры:
// Свойство - Строка,Число - ID свойства
// Параметры - Структура Из Строка - См.ПолучитьСтандартныеПараметры
//
// Возвращаемое значение:
// ДвоичныеДанные, Неопределено, Произвольный - Ответ сервера
Функция УдалитьСвойствоТовара(Знач Свойство, Знач Параметры = "") Экспорт
Параметры_ = ПолучитьСтандартныеПараметры(Параметры);
Параметры_.Вставить("property_id", OPI_Инструменты.ЧислоВСтроку(Свойство));
Ответ = OPI_Инструменты.Get("api.vk.com/method/market.deleteProperty", Параметры_);
Возврат Ответ;
КонецФункции
// Добавить вариант свойства товара.
//
// Параметры:
@ -1333,6 +1333,29 @@
#КонецОбласти
#Область РаботаСЗаказами
// Получить список заказов.
//
// Параметры:
// Параметры - Структура Из Строка - См.ПолучитьСтандартныеПараметры
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - Массив соответствий заказов
Функция ПолучитьСписокЗаказов(Знач Параметры = "") Экспорт
Параметры_ = ПолучитьСтандартныеПараметры(Параметры);
Параметры_.Вставить("count", 50);
МассивЗаказов = Новый Массив;
ПолучитьСписокЗаказовРекурсивно(МассивЗаказов, Параметры_);
Возврат МассивЗаказов;
КонецФункции
#КонецОбласти
#Область Прочие
// Сформировать клавиатуру.
@ -1733,6 +1756,26 @@
КонецПроцедуры
Процедура ПолучитьСписокЗаказовРекурсивно(МассивЗаказов, Параметры, Сдвиг = 0)
МаксимумВЗапросе = 50;
Ответ = OPI_Инструменты.Get("api.vk.com/method/market.getGroupOrders", Параметры);
Заказы = Ответ["response"]["items"];
Если Заказы.Количество() = 0 Тогда
Возврат;
КонецЕсли;
Для Каждого Заказ Из Заказы Цикл
МассивЗаказов.Добавить(Заказ);
КонецЦикла;
Сдвиг = Сдвиг + МаксимумВЗапросе;
Параметры.Вставить("offset", Сдвиг);
ПолучитьСписокЗаказовРекурсивно(МассивЗаказов, Параметры, Сдвиг);
КонецПроцедуры
// BSLLS:MissingParameterDescription-on
// BSLLS:MissingReturnedValueDescription-on
#КонецОбласти

View File

@ -46,6 +46,7 @@
.ДобавитьСерверныйТест("ВК_ПолучитьСписокТоваров" , "Получить список товаров")
.ДобавитьСерверныйТест("ВК_ПолучитьСписокПодборок" , "Получить список подборок")
.ДобавитьСерверныйТест("ВК_ПолучитьСписокСвойств" , "Получить список свойств")
.ДобавитьСерверныйТест("ВК_ПолучитьСписокЗаказов" , "Получить список заказов")
.ДобавитьТестовыйНабор("Яндекс.Диск")
.ДобавитьСерверныйТест("ЯДиск_ПолучитьИнформациюОДиске" , "Получить информацию о диске")
@ -933,7 +934,7 @@
МассивКартинок.Добавить(Картинка);
Товар = Новый Соответствие();
Товар.Вставить("Имя" , "Тестовый товар 2");
Товар.Вставить("Имя" , "Тестовый товар");
Товар.Вставить("Описание" , "Описание товара");
Товар.Вставить("Категория" , "20173");
Товар.Вставить("Цена" , 1);
@ -941,13 +942,12 @@
Товар.Вставить("ОсновноеФото" , Картинка);
Товар.Вставить("URL" , "https://github.com/Bayselonarrend/OpenIntegrations");
Товар.Вставить("ДополнительныеФото" , МассивКартинок);
Товар.Вставить("ГлавныйВГруппе" , Истина);
Товар.Вставить("НомерГруппы" , Неопределено);
Товар.Вставить("ГлавныйВГруппе" , Истина);
Товар.Вставить("Ширина" , 20);
Товар.Вставить("Высота" , 30);
Товар.Вставить("Глубина" , 40);
Товар.Вставить("Вес" , 100);
Товар.Вставить("SKU" , 12345);
Товар.Вставить("SKU" , "12345");
Товар.Вставить("ДоступныйОстаток" , "10");
Результат = OPI_VK.ДобавитьТовар(Товар, ИДПодборки, Параметры); // Добавление товара
@ -1221,6 +1221,16 @@
КонецПроцедуры
Процедура ВК_ПолучитьСписокЗаказов() Экспорт
Параметры = ПолучитьПараметрыВК();
Результат = OPI_VK.ПолучитьСписокЗаказов(Параметры);
ЮТОбщий.Пауза(5);
ЮТест.ОжидаетЧто(Результат)
.ИмеетТип("Массив").Заполнено();
КонецПроцедуры
#КонецОбласти
#Область YandexDisk

View File

@ -26,7 +26,7 @@
<usePurposes>PersonalComputer</usePurposes>
<scriptVariant>Russian</scriptVariant>
<vendor>Bayselonarrend</vendor>
<version>1.2.0</version>
<version>1.2.1</version>
<detailedInformation>
<key>ru</key>
<value>Открытый пакет интеграций - набор библиотек для интеграции с некоторыми популярными API для 1C:Enterprise. Он состоит из общих модулей, каждый из которых отвечает за свой API, а также нескольких модулей-инструментов, общих для всех.</value>