You've already forked OpenIntegrations
mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2026-05-02 20:52:28 +02:00
OZON: Уцененные товары
This commit is contained in:
@@ -1202,6 +1202,10 @@ jobs:
|
||||
if: ${{ cancelled() }} == false
|
||||
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./src/en/OInt/tests/Modules/internal/OPI_Tests.os "OzonAPI_WarehousesManagment"
|
||||
|
||||
- name: Prices and stocks
|
||||
if: ${{ cancelled() }} == false
|
||||
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./src/en/OInt/tests/Modules/internal/OPI_Tests.os "OzonAPI_PricesAndStocks"
|
||||
|
||||
- name: Записать логи
|
||||
if: ${{ cancelled() }} == false
|
||||
uses: actions/cache/save@v3
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"ClientID": "2128753",
|
||||
"APIKey": "7cc90d26-33e4-499b..."
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"ClientID": "2128753",
|
||||
"APIKey": "7cc90d26-33e4-499b..."
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"ClientID": "2128753",
|
||||
"APIKey": "7cc90d26-33e4-499b..."
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
ClientID = "2128753";
|
||||
APIKey = "7cc90d26-33e4-499b...";
|
||||
SKU = 1626044001;
|
||||
|
||||
Result = OPI_Ozon.GetDiscountInformation(ClientID, APIKey, SKU);
|
||||
@@ -0,0 +1,4 @@
|
||||
ClientID = "2128753";
|
||||
APIKey = "7cc90d26-33e4-499b...";
|
||||
|
||||
Result = OPI_Ozon.GetProductsPrices(ClientID, APIKey, New Structure);
|
||||
@@ -0,0 +1,7 @@
|
||||
ClientID = "2128753";
|
||||
APIKey = "7cc90d26-33e4-499b...";
|
||||
ProductID = 1156646653;
|
||||
|
||||
Discount = 10;
|
||||
|
||||
Result = OPI_Ozon.SetProductDiscount(ClientID, APIKey, ProductID, Discount);
|
||||
@@ -1,4 +1,4 @@
|
||||
ClientID = "2128753";
|
||||
ClientID = "2128753";
|
||||
APIKey = "7cc90d26-33e4-499b...";
|
||||
ProductID = "1111588191";
|
||||
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"IDКлиента": "2128753",
|
||||
"КлючAPI": "7cc90d26-33e4-499b..."
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"IDКлиента": "2128753",
|
||||
"КлючAPI": "7cc90d26-33e4-499b..."
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"IDКлиента": "2128753",
|
||||
"КлючAPI": "7cc90d26-33e4-499b..."
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
IDКлиента = "2128753";
|
||||
КлючAPI = "7cc90d26-33e4-499b...";
|
||||
IDТовара = "1111588191";
|
||||
КлючAPI = "7cc90d26-33e4-499b...";
|
||||
IDТовара = "1111588191";
|
||||
|
||||
Цены = Новый Структура;
|
||||
Цены.Вставить("auto_action_enabled" , "DISABLED");
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
IDКлиента = "2128753";
|
||||
КлючAPI = "7cc90d26-33e4-499b...";
|
||||
SKU = 1626044001;
|
||||
|
||||
Результат = OPI_Ozon.ПолучитьИнформациюОбУценке(IDКлиента, КлючAPI, SKU);
|
||||
@@ -0,0 +1,4 @@
|
||||
IDКлиента = "2128753";
|
||||
КлючAPI = "7cc90d26-33e4-499b...";
|
||||
|
||||
Результат = OPI_Ozon.ПолучитьЦеныТоваров(IDКлиента, КлючAPI, Новый Структура);
|
||||
@@ -0,0 +1,7 @@
|
||||
IDКлиента = "2128753";
|
||||
КлючAPI = "7cc90d26-33e4-499b...";
|
||||
IDТовара = 1156646653;
|
||||
|
||||
Скидка = 10;
|
||||
|
||||
Результат = OPI_Ozon.УстановитьСкидкуНаУцененныйТовар(IDКлиента, КлючAPI, IDТовара, Скидка);
|
||||
+2514
-2500
File diff suppressed because it is too large
Load Diff
@@ -252,6 +252,10 @@ Function GetProductList(Val ClientID, Val APIKey, Val Filter = "", Val LastID =
|
||||
OPI_Tools.AddField("limit" , Limit , "String" , Parameters);
|
||||
OPI_Tools.AddField("last_id", LastID , "String" , Parameters);
|
||||
|
||||
If Not Parameters.Property("filter") Then
|
||||
Parameters.Insert("filter", New Structure);
|
||||
EndIf;
|
||||
|
||||
Response = OPI_Tools.Post(URL, Parameters, Headers);
|
||||
|
||||
Return Response;
|
||||
@@ -287,6 +291,10 @@ Function GetProductsAttributesData(Val ClientID
|
||||
OPI_Tools.AddField("limit" , Limit , "String" , Parameters);
|
||||
OPI_Tools.AddField("last_id", LastID , "String" , Parameters);
|
||||
|
||||
If Not Parameters.Property("filter") Then
|
||||
Parameters.Insert("filter", New Structure);
|
||||
EndIf;
|
||||
|
||||
Response = OPI_Tools.Post(URL, Parameters, Headers);
|
||||
|
||||
Return Response;
|
||||
@@ -929,9 +937,10 @@ Function GetAttributesUpdateStructure(Val Clear = False) Export
|
||||
EndFunction
|
||||
|
||||
// Get products filter structure
|
||||
// Gets the structure for selecting the list of goods in the functions GetProductList and GetProductsStocks
|
||||
// Gets the structure for selecting the list of products
|
||||
//
|
||||
// Note
|
||||
// Related functions: GetProductList, GetProductsStocks, GetProductsPrices
|
||||
// The description of the filter fields can be found on the documentation page for product list retrieving method: [post /v2/product/list](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductList)
|
||||
//
|
||||
// Parameters:
|
||||
@@ -1167,6 +1176,74 @@ Function GetProductsStocks(Val ClientID, Val APIKey, Val Filter = "", Val LastID
|
||||
OPI_Tools.AddField("limit" , Limit , "String" , Parameters);
|
||||
OPI_Tools.AddField("last_id", LastID , "String" , Parameters);
|
||||
|
||||
If Not Parameters.Property("filter") Then
|
||||
Parameters.Insert("filter", New Structure);
|
||||
EndIf;
|
||||
|
||||
Response = OPI_Tools.Post(URL, Parameters, Headers);
|
||||
|
||||
Return Response;
|
||||
|
||||
EndFunction
|
||||
|
||||
// Get products prices
|
||||
// Gets products prices with or without filter
|
||||
//
|
||||
// Note
|
||||
// Method at API documentation: [post /v4/product/info/prices](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductInfoPricesV4)
|
||||
//
|
||||
// Parameters:
|
||||
// ClientID - String - Client identifier - clientid
|
||||
// APIKey - String - API key - apikey
|
||||
// Filter - Structure of KeyAndValue - Product selection filter. See GetProductsFilterStructure - filter
|
||||
// LastID - String, Number - ID of the last value (last_id) from the previous response - last
|
||||
//
|
||||
// Returns:
|
||||
// Map Of KeyAndValue - Serialized JSON response from Ozon Seller API
|
||||
Function GetProductsPrices(Val ClientID, Val APIKey, Val Filter = "", Val LastID = 0) Export
|
||||
|
||||
URL = "https://api-seller.ozon.ru/v4/product/info/prices";
|
||||
|
||||
Headers = CreateRequestHeaders(ClientID, APIKey);
|
||||
Limit = 300;
|
||||
|
||||
Parameters = New Structure;
|
||||
OPI_Tools.AddField("filter" , Filter , "Collection", Parameters);
|
||||
OPI_Tools.AddField("limit" , Limit , "String" , Parameters);
|
||||
OPI_Tools.AddField("last_id", LastID , "String" , Parameters);
|
||||
|
||||
If Not Parameters.Property("filter") Then
|
||||
Parameters.Insert("filter", New Structure);
|
||||
EndIf;
|
||||
|
||||
Response = OPI_Tools.Post(URL, Parameters, Headers);
|
||||
|
||||
Return Response;
|
||||
|
||||
EndFunction
|
||||
|
||||
// Get discount information
|
||||
// Retrieves discount and main product information by SKU of the discounted items
|
||||
//
|
||||
// Note
|
||||
// Method at API documentation: [post /v1/product/info/discounted](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductInfoDiscounted)
|
||||
//
|
||||
// Parameters:
|
||||
// ClientID - String - Client identifier - clientid
|
||||
// APIKey - String - API key - apikey
|
||||
// SKU - Number, Array Of Number - SKU of discounted products - sku
|
||||
//
|
||||
// Returns:
|
||||
// Map Of KeyAndValue - Serialized JSON response from Ozon Seller API
|
||||
Function GetDiscountInformation(Val ClientID, Val APIKey, Val SKU) Export
|
||||
|
||||
URL = "https://api-seller.ozon.ru/v1/product/info/discounted";
|
||||
|
||||
Headers = CreateRequestHeaders(ClientID, APIKey);
|
||||
|
||||
Parameters = New Structure;
|
||||
OPI_Tools.AddField("discounted_skus", SKU, "Array", Parameters);
|
||||
|
||||
Response = OPI_Tools.Post(URL, Parameters, Headers);
|
||||
|
||||
Return Response;
|
||||
@@ -1232,6 +1309,36 @@ Function UpdateProductsPrices(Val ClientID, Val APIKey, Val Prices) Export
|
||||
|
||||
EndFunction
|
||||
|
||||
// Set product discount
|
||||
// Sets the amount of discount on discounted products sold under the FBS scheme
|
||||
//
|
||||
// Note
|
||||
// Method at API documentation: [post /v1/product/update/discount](@docs.ozon.ru/api/seller/#operation/ProductAPI_ProductUpdateDiscount)
|
||||
//
|
||||
// Parameters:
|
||||
// ClientID - String - Client identifier - clientid
|
||||
// APIKey - String - API key - apikey
|
||||
// ProductID - String, Number - Product identifier - productid
|
||||
// Discount - String, Number - Discount amount - discount
|
||||
//
|
||||
// Returns:
|
||||
// Map Of KeyAndValue - Serialized JSON response from Ozon Seller API
|
||||
Function SetProductDiscount(Val ClientID, Val APIKey, Val ProductID, Val Discount) Export
|
||||
|
||||
URL = "https://api-seller.ozon.ru/v1/product/update/discount";
|
||||
|
||||
Headers = CreateRequestHeaders(ClientID, APIKey);
|
||||
|
||||
Parameters = New Structure;
|
||||
OPI_Tools.AddField("discount" , Discount , "Number", Parameters);
|
||||
OPI_Tools.AddField("product_id", ProductID, "Number", Parameters);
|
||||
|
||||
Response = OPI_Tools.Post(URL, Parameters, Headers);
|
||||
|
||||
Return Response;
|
||||
|
||||
EndFunction
|
||||
|
||||
// Get product stocks structure
|
||||
// Gets the data structure for udpating product stocks in the UpdateProductsStocks function
|
||||
//
|
||||
|
||||
@@ -3309,6 +3309,9 @@ Procedure OzonAPI_PricesAndStocks() Export
|
||||
|
||||
Ozon_GetProductsStocks(TestParameters);
|
||||
Ozon_UpdateProductsPrices(TestParameters);
|
||||
Ozon_GetProductsPrices(TestParameters);
|
||||
Ozon_GetDiscountInformation(TestParameters);
|
||||
Ozon_SetProductDiscount(TestParameters);
|
||||
|
||||
EndProcedure
|
||||
|
||||
@@ -4234,9 +4237,9 @@ Procedure Check_OzonTrue(Val Result)
|
||||
|
||||
EndProcedure
|
||||
|
||||
Procedure Check_OzonArray(Val Result)
|
||||
Procedure Check_OzonArray(Val Result, Val Field = "result")
|
||||
|
||||
OPI_TestDataRetrieval.ExpectsThat(Result["result"]).ИмеетТип("Array");
|
||||
OPI_TestDataRetrieval.ExpectsThat(Result[Field]).ИмеетТип("Array");
|
||||
|
||||
EndProcedure
|
||||
|
||||
@@ -12648,7 +12651,7 @@ EndProcedure
|
||||
|
||||
Procedure Ozon_UpdateProductsPrices(FunctionParameters)
|
||||
|
||||
ClientID = FunctionParameters["Ozon_ClientID"];
|
||||
ClientID = FunctionParameters["Ozon_ClientID"];
|
||||
APIKey = FunctionParameters["Ozon_ApiKey"];
|
||||
ProductID = FunctionParameters["Ozon_ProductID"];
|
||||
|
||||
@@ -12672,6 +12675,53 @@ Procedure Ozon_UpdateProductsPrices(FunctionParameters)
|
||||
|
||||
EndProcedure
|
||||
|
||||
Procedure Ozon_GetProductsPrices(FunctionParameters)
|
||||
|
||||
ClientID = FunctionParameters["Ozon_ClientID"];
|
||||
APIKey = FunctionParameters["Ozon_ApiKey"];
|
||||
|
||||
Result = OPI_Ozon.GetProductsPrices(ClientID, APIKey, New Structure);
|
||||
|
||||
// END
|
||||
|
||||
OPI_TestDataRetrieval.WriteLog(Result, "GetProductsPrices", "Ozon");
|
||||
|
||||
Check_OzonObjectsArray(Result);
|
||||
|
||||
EndProcedure
|
||||
|
||||
Procedure Ozon_GetDiscountInformation(FunctionParameters)
|
||||
|
||||
ClientID = FunctionParameters["Ozon_ClientID"];
|
||||
APIKey = FunctionParameters["Ozon_ApiKey"];
|
||||
SKU = 1626044001;
|
||||
|
||||
Result = OPI_Ozon.GetDiscountInformation(ClientID, APIKey, SKU);
|
||||
|
||||
// END
|
||||
|
||||
OPI_TestDataRetrieval.WriteLog(Result, "GetDiscountInformation", "Ozon");
|
||||
|
||||
Check_OzonArray(Result, "items");
|
||||
|
||||
EndProcedure
|
||||
|
||||
Procedure Ozon_SetProductDiscount(FunctionParameters)
|
||||
|
||||
ClientID = FunctionParameters["Ozon_ClientID"];
|
||||
APIKey = FunctionParameters["Ozon_ApiKey"];
|
||||
ProductID = 1156646653;
|
||||
|
||||
Discount = 10;
|
||||
|
||||
Result = OPI_Ozon.SetProductDiscount(ClientID, APIKey, ProductID, Discount);
|
||||
|
||||
// END
|
||||
|
||||
OPI_TestDataRetrieval.WriteLog(Result, "SetProductDiscount", "Ozon");
|
||||
|
||||
EndProcedure
|
||||
|
||||
#EndRegion
|
||||
|
||||
#EndRegion
|
||||
|
||||
@@ -252,6 +252,10 @@ Function GetProductList(Val ClientID, Val APIKey, Val Filter = "", Val LastID =
|
||||
OPI_Tools.AddField("limit" , Limit , "String" , Parameters);
|
||||
OPI_Tools.AddField("last_id", LastID , "String" , Parameters);
|
||||
|
||||
If Not Parameters.Property("filter") Then
|
||||
Parameters.Insert("filter", New Structure);
|
||||
EndIf;
|
||||
|
||||
Response = OPI_Tools.Post(URL, Parameters, Headers);
|
||||
|
||||
Return Response;
|
||||
@@ -287,6 +291,10 @@ Function GetProductsAttributesData(Val ClientID
|
||||
OPI_Tools.AddField("limit" , Limit , "String" , Parameters);
|
||||
OPI_Tools.AddField("last_id", LastID , "String" , Parameters);
|
||||
|
||||
If Not Parameters.Property("filter") Then
|
||||
Parameters.Insert("filter", New Structure);
|
||||
EndIf;
|
||||
|
||||
Response = OPI_Tools.Post(URL, Parameters, Headers);
|
||||
|
||||
Return Response;
|
||||
@@ -929,9 +937,10 @@ Function GetAttributesUpdateStructure(Val Clear = False) Export
|
||||
EndFunction
|
||||
|
||||
// Get products filter structure
|
||||
// Gets the structure for selecting the list of goods in the functions GetProductList and GetProductsStocks
|
||||
// Gets the structure for selecting the list of products
|
||||
//
|
||||
// Note
|
||||
// Related functions: GetProductList, GetProductsStocks, GetProductsPrices
|
||||
// The description of the filter fields can be found on the documentation page for product list retrieving method: [post /v2/product/list](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductList)
|
||||
//
|
||||
// Parameters:
|
||||
@@ -1167,6 +1176,74 @@ Function GetProductsStocks(Val ClientID, Val APIKey, Val Filter = "", Val LastID
|
||||
OPI_Tools.AddField("limit" , Limit , "String" , Parameters);
|
||||
OPI_Tools.AddField("last_id", LastID , "String" , Parameters);
|
||||
|
||||
If Not Parameters.Property("filter") Then
|
||||
Parameters.Insert("filter", New Structure);
|
||||
EndIf;
|
||||
|
||||
Response = OPI_Tools.Post(URL, Parameters, Headers);
|
||||
|
||||
Return Response;
|
||||
|
||||
EndFunction
|
||||
|
||||
// Get products prices
|
||||
// Gets products prices with or without filter
|
||||
//
|
||||
// Note
|
||||
// Method at API documentation: [post /v4/product/info/prices](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductInfoPricesV4)
|
||||
//
|
||||
// Parameters:
|
||||
// ClientID - String - Client identifier - clientid
|
||||
// APIKey - String - API key - apikey
|
||||
// Filter - Structure of KeyAndValue - Product selection filter. See GetProductsFilterStructure - filter
|
||||
// LastID - String, Number - ID of the last value (last_id) from the previous response - last
|
||||
//
|
||||
// Returns:
|
||||
// Map Of KeyAndValue - Serialized JSON response from Ozon Seller API
|
||||
Function GetProductsPrices(Val ClientID, Val APIKey, Val Filter = "", Val LastID = 0) Export
|
||||
|
||||
URL = "https://api-seller.ozon.ru/v4/product/info/prices";
|
||||
|
||||
Headers = CreateRequestHeaders(ClientID, APIKey);
|
||||
Limit = 300;
|
||||
|
||||
Parameters = New Structure;
|
||||
OPI_Tools.AddField("filter" , Filter , "Collection", Parameters);
|
||||
OPI_Tools.AddField("limit" , Limit , "String" , Parameters);
|
||||
OPI_Tools.AddField("last_id", LastID , "String" , Parameters);
|
||||
|
||||
If Not Parameters.Property("filter") Then
|
||||
Parameters.Insert("filter", New Structure);
|
||||
EndIf;
|
||||
|
||||
Response = OPI_Tools.Post(URL, Parameters, Headers);
|
||||
|
||||
Return Response;
|
||||
|
||||
EndFunction
|
||||
|
||||
// Get discount information
|
||||
// Retrieves discount and main product information by SKU of the discounted items
|
||||
//
|
||||
// Note
|
||||
// Method at API documentation: [post /v1/product/info/discounted](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductInfoDiscounted)
|
||||
//
|
||||
// Parameters:
|
||||
// ClientID - String - Client identifier - clientid
|
||||
// APIKey - String - API key - apikey
|
||||
// SKU - Number, Array Of Number - SKU of discounted products - sku
|
||||
//
|
||||
// Returns:
|
||||
// Map Of KeyAndValue - Serialized JSON response from Ozon Seller API
|
||||
Function GetDiscountInformation(Val ClientID, Val APIKey, Val SKU) Export
|
||||
|
||||
URL = "https://api-seller.ozon.ru/v1/product/info/discounted";
|
||||
|
||||
Headers = CreateRequestHeaders(ClientID, APIKey);
|
||||
|
||||
Parameters = New Structure;
|
||||
OPI_Tools.AddField("discounted_skus", SKU, "Array", Parameters);
|
||||
|
||||
Response = OPI_Tools.Post(URL, Parameters, Headers);
|
||||
|
||||
Return Response;
|
||||
@@ -1232,6 +1309,36 @@ Function UpdateProductsPrices(Val ClientID, Val APIKey, Val Prices) Export
|
||||
|
||||
EndFunction
|
||||
|
||||
// Set product discount
|
||||
// Sets the amount of discount on discounted products sold under the FBS scheme
|
||||
//
|
||||
// Note
|
||||
// Method at API documentation: [post /v1/product/update/discount](@docs.ozon.ru/api/seller/#operation/ProductAPI_ProductUpdateDiscount)
|
||||
//
|
||||
// Parameters:
|
||||
// ClientID - String - Client identifier - clientid
|
||||
// APIKey - String - API key - apikey
|
||||
// ProductID - String, Number - Product identifier - productid
|
||||
// Discount - String, Number - Discount amount - discount
|
||||
//
|
||||
// Returns:
|
||||
// Map Of KeyAndValue - Serialized JSON response from Ozon Seller API
|
||||
Function SetProductDiscount(Val ClientID, Val APIKey, Val ProductID, Val Discount) Export
|
||||
|
||||
URL = "https://api-seller.ozon.ru/v1/product/update/discount";
|
||||
|
||||
Headers = CreateRequestHeaders(ClientID, APIKey);
|
||||
|
||||
Parameters = New Structure;
|
||||
OPI_Tools.AddField("discount" , Discount , "Number", Parameters);
|
||||
OPI_Tools.AddField("product_id", ProductID, "Number", Parameters);
|
||||
|
||||
Response = OPI_Tools.Post(URL, Parameters, Headers);
|
||||
|
||||
Return Response;
|
||||
|
||||
EndFunction
|
||||
|
||||
// Get product stocks structure
|
||||
// Gets the data structure for udpating product stocks in the UpdateProductsStocks function
|
||||
//
|
||||
|
||||
@@ -3309,6 +3309,9 @@ Procedure OzonAPI_PricesAndStocks() Export
|
||||
|
||||
Ozon_GetProductsStocks(TestParameters);
|
||||
Ozon_UpdateProductsPrices(TestParameters);
|
||||
Ozon_GetProductsPrices(TestParameters);
|
||||
Ozon_GetDiscountInformation(TestParameters);
|
||||
Ozon_SetProductDiscount(TestParameters);
|
||||
|
||||
EndProcedure
|
||||
|
||||
@@ -4234,9 +4237,9 @@ Procedure Check_OzonTrue(Val Result)
|
||||
|
||||
EndProcedure
|
||||
|
||||
Procedure Check_OzonArray(Val Result)
|
||||
Procedure Check_OzonArray(Val Result, Val Field = "result")
|
||||
|
||||
OPI_TestDataRetrieval.ExpectsThat(Result["result"]).ИмеетТип("Array");
|
||||
OPI_TestDataRetrieval.ExpectsThat(Result[Field]).ИмеетТип("Array");
|
||||
|
||||
EndProcedure
|
||||
|
||||
@@ -12648,7 +12651,7 @@ EndProcedure
|
||||
|
||||
Procedure Ozon_UpdateProductsPrices(FunctionParameters)
|
||||
|
||||
ClientID = FunctionParameters["Ozon_ClientID"];
|
||||
ClientID = FunctionParameters["Ozon_ClientID"];
|
||||
APIKey = FunctionParameters["Ozon_ApiKey"];
|
||||
ProductID = FunctionParameters["Ozon_ProductID"];
|
||||
|
||||
@@ -12672,6 +12675,53 @@ Procedure Ozon_UpdateProductsPrices(FunctionParameters)
|
||||
|
||||
EndProcedure
|
||||
|
||||
Procedure Ozon_GetProductsPrices(FunctionParameters)
|
||||
|
||||
ClientID = FunctionParameters["Ozon_ClientID"];
|
||||
APIKey = FunctionParameters["Ozon_ApiKey"];
|
||||
|
||||
Result = OPI_Ozon.GetProductsPrices(ClientID, APIKey, New Structure);
|
||||
|
||||
// END
|
||||
|
||||
OPI_TestDataRetrieval.WriteLog(Result, "GetProductsPrices", "Ozon");
|
||||
|
||||
Check_OzonObjectsArray(Result);
|
||||
|
||||
EndProcedure
|
||||
|
||||
Procedure Ozon_GetDiscountInformation(FunctionParameters)
|
||||
|
||||
ClientID = FunctionParameters["Ozon_ClientID"];
|
||||
APIKey = FunctionParameters["Ozon_ApiKey"];
|
||||
SKU = 1626044001;
|
||||
|
||||
Result = OPI_Ozon.GetDiscountInformation(ClientID, APIKey, SKU);
|
||||
|
||||
// END
|
||||
|
||||
OPI_TestDataRetrieval.WriteLog(Result, "GetDiscountInformation", "Ozon");
|
||||
|
||||
Check_OzonArray(Result, "items");
|
||||
|
||||
EndProcedure
|
||||
|
||||
Procedure Ozon_SetProductDiscount(FunctionParameters)
|
||||
|
||||
ClientID = FunctionParameters["Ozon_ClientID"];
|
||||
APIKey = FunctionParameters["Ozon_ApiKey"];
|
||||
ProductID = 1156646653;
|
||||
|
||||
Discount = 10;
|
||||
|
||||
Result = OPI_Ozon.SetProductDiscount(ClientID, APIKey, ProductID, Discount);
|
||||
|
||||
// END
|
||||
|
||||
OPI_TestDataRetrieval.WriteLog(Result, "SetProductDiscount", "Ozon");
|
||||
|
||||
EndProcedure
|
||||
|
||||
#EndRegion
|
||||
|
||||
#EndRegion
|
||||
|
||||
@@ -965,7 +965,7 @@
|
||||
NewLine.Параметр = "--empty";
|
||||
NewLine.Описание = "True > structure with empty valuse, False > field descriptions at values (optional, def. val. - No)";
|
||||
NewLine.Область = "Uploading and updating products";
|
||||
NewLine.ОписаниеМетода = "Gets the structure for selecting the list of goods in the functions GetProductList and GetProductsStocks";
|
||||
NewLine.ОписаниеМетода = "Gets the structure for selecting the list of products";
|
||||
|
||||
|
||||
NewLine = CompositionTable.Add();
|
||||
@@ -1164,6 +1164,78 @@
|
||||
NewLine.Область = "Prices and stocks";
|
||||
|
||||
|
||||
NewLine = CompositionTable.Add();
|
||||
NewLine.Библиотека = "ozon";
|
||||
NewLine.Модуль = "OPI_Ozon";
|
||||
NewLine.Метод = "GetProductsPrices";
|
||||
NewLine.МетодПоиска = "GETPRODUCTSPRICES";
|
||||
NewLine.Параметр = "--clientid";
|
||||
NewLine.Описание = "Client identifier";
|
||||
NewLine.Область = "Prices and stocks";
|
||||
NewLine.ОписаниеМетода = "Gets products prices with or without filter";
|
||||
|
||||
|
||||
NewLine = CompositionTable.Add();
|
||||
NewLine.Библиотека = "ozon";
|
||||
NewLine.Модуль = "OPI_Ozon";
|
||||
NewLine.Метод = "GetProductsPrices";
|
||||
NewLine.МетодПоиска = "GETPRODUCTSPRICES";
|
||||
NewLine.Параметр = "--apikey";
|
||||
NewLine.Описание = "API key";
|
||||
NewLine.Область = "Prices and stocks";
|
||||
|
||||
|
||||
NewLine = CompositionTable.Add();
|
||||
NewLine.Библиотека = "ozon";
|
||||
NewLine.Модуль = "OPI_Ozon";
|
||||
NewLine.Метод = "GetProductsPrices";
|
||||
NewLine.МетодПоиска = "GETPRODUCTSPRICES";
|
||||
NewLine.Параметр = "--filter";
|
||||
NewLine.Описание = "Product selection filter. See GetProductsFilterStructure (optional, def. val. - Empty value)";
|
||||
NewLine.Область = "Prices and stocks";
|
||||
|
||||
|
||||
NewLine = CompositionTable.Add();
|
||||
NewLine.Библиотека = "ozon";
|
||||
NewLine.Модуль = "OPI_Ozon";
|
||||
NewLine.Метод = "GetProductsPrices";
|
||||
NewLine.МетодПоиска = "GETPRODUCTSPRICES";
|
||||
NewLine.Параметр = "--last";
|
||||
NewLine.Описание = "ID of the last value (last_id) from the previous response (optional, def. val. - Empty value)";
|
||||
NewLine.Область = "Prices and stocks";
|
||||
|
||||
|
||||
NewLine = CompositionTable.Add();
|
||||
NewLine.Библиотека = "ozon";
|
||||
NewLine.Модуль = "OPI_Ozon";
|
||||
NewLine.Метод = "GetDiscountInformation";
|
||||
NewLine.МетодПоиска = "GETDISCOUNTINFORMATION";
|
||||
NewLine.Параметр = "--clientid";
|
||||
NewLine.Описание = "Client identifier";
|
||||
NewLine.Область = "Prices and stocks";
|
||||
NewLine.ОписаниеМетода = "Retrieves discount and main product information by SKU of the discounted items";
|
||||
|
||||
|
||||
NewLine = CompositionTable.Add();
|
||||
NewLine.Библиотека = "ozon";
|
||||
NewLine.Модуль = "OPI_Ozon";
|
||||
NewLine.Метод = "GetDiscountInformation";
|
||||
NewLine.МетодПоиска = "GETDISCOUNTINFORMATION";
|
||||
NewLine.Параметр = "--apikey";
|
||||
NewLine.Описание = "API key";
|
||||
NewLine.Область = "Prices and stocks";
|
||||
|
||||
|
||||
NewLine = CompositionTable.Add();
|
||||
NewLine.Библиотека = "ozon";
|
||||
NewLine.Модуль = "OPI_Ozon";
|
||||
NewLine.Метод = "GetDiscountInformation";
|
||||
NewLine.МетодПоиска = "GETDISCOUNTINFORMATION";
|
||||
NewLine.Параметр = "--sku";
|
||||
NewLine.Описание = "SKU of discounted products";
|
||||
NewLine.Область = "Prices and stocks";
|
||||
|
||||
|
||||
NewLine = CompositionTable.Add();
|
||||
NewLine.Библиотека = "ozon";
|
||||
NewLine.Модуль = "OPI_Ozon";
|
||||
@@ -1226,6 +1298,47 @@
|
||||
NewLine.Область = "Prices and stocks";
|
||||
|
||||
|
||||
NewLine = CompositionTable.Add();
|
||||
NewLine.Библиотека = "ozon";
|
||||
NewLine.Модуль = "OPI_Ozon";
|
||||
NewLine.Метод = "SetProductDiscount";
|
||||
NewLine.МетодПоиска = "SETPRODUCTDISCOUNT";
|
||||
NewLine.Параметр = "--clientid";
|
||||
NewLine.Описание = "Client identifier";
|
||||
NewLine.Область = "Prices and stocks";
|
||||
NewLine.ОписаниеМетода = "Sets the amount of discount on discounted products sold under the FBS scheme";
|
||||
|
||||
|
||||
NewLine = CompositionTable.Add();
|
||||
NewLine.Библиотека = "ozon";
|
||||
NewLine.Модуль = "OPI_Ozon";
|
||||
NewLine.Метод = "SetProductDiscount";
|
||||
NewLine.МетодПоиска = "SETPRODUCTDISCOUNT";
|
||||
NewLine.Параметр = "--apikey";
|
||||
NewLine.Описание = "API key";
|
||||
NewLine.Область = "Prices and stocks";
|
||||
|
||||
|
||||
NewLine = CompositionTable.Add();
|
||||
NewLine.Библиотека = "ozon";
|
||||
NewLine.Модуль = "OPI_Ozon";
|
||||
NewLine.Метод = "SetProductDiscount";
|
||||
NewLine.МетодПоиска = "SETPRODUCTDISCOUNT";
|
||||
NewLine.Параметр = "--productid";
|
||||
NewLine.Описание = "Product identifier";
|
||||
NewLine.Область = "Prices and stocks";
|
||||
|
||||
|
||||
NewLine = CompositionTable.Add();
|
||||
NewLine.Библиотека = "ozon";
|
||||
NewLine.Модуль = "OPI_Ozon";
|
||||
NewLine.Метод = "SetProductDiscount";
|
||||
NewLine.МетодПоиска = "SETPRODUCTDISCOUNT";
|
||||
NewLine.Параметр = "--discount";
|
||||
NewLine.Описание = "Discount amount";
|
||||
NewLine.Область = "Prices and stocks";
|
||||
|
||||
|
||||
NewLine = CompositionTable.Add();
|
||||
NewLine.Библиотека = "ozon";
|
||||
NewLine.Модуль = "OPI_Ozon";
|
||||
|
||||
@@ -252,6 +252,10 @@
|
||||
OPI_Инструменты.ДобавитьПоле("limit" , Лимит , "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("last_id", IDПоследнего, "Строка" , Параметры);
|
||||
|
||||
Если Не Параметры.Свойство("filter") Тогда
|
||||
Параметры.Вставить("filter", Новый Структура);
|
||||
КонецЕсли;
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
@@ -287,6 +291,10 @@
|
||||
OPI_Инструменты.ДобавитьПоле("limit" , Лимит , "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("last_id", IDПоследнего, "Строка" , Параметры);
|
||||
|
||||
Если Не Параметры.Свойство("filter") Тогда
|
||||
Параметры.Вставить("filter", Новый Структура);
|
||||
КонецЕсли;
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
@@ -929,9 +937,10 @@
|
||||
КонецФункции
|
||||
|
||||
// Получить структуру фильтра товаров
|
||||
// Получает структуру для отбора списка товаров в функциях ПолучитьСписокТоваров и ПолучитьКоличествоТоваров
|
||||
// Получает структуру для отбора списка товаров
|
||||
//
|
||||
// Примечание:
|
||||
// Связанные функции: ПолучитьСписокТоваров, ПолучитьКоличествоТоваров, ПолучитьЦеныТоваров
|
||||
// Описание полей фильтра можно найти на странице документации по получению списка товаров: [post /v2/product/list](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductList)
|
||||
//
|
||||
// Параметры:
|
||||
@@ -1167,6 +1176,74 @@
|
||||
OPI_Инструменты.ДобавитьПоле("limit" , Лимит , "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("last_id", IDПоследнего, "Строка" , Параметры);
|
||||
|
||||
Если Не Параметры.Свойство("filter") Тогда
|
||||
Параметры.Вставить("filter", Новый Структура);
|
||||
КонецЕсли;
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить цены товаров
|
||||
// Получает цены товаров с фильтром или без
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [post /v4/product/info/prices](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductInfoPricesV4)
|
||||
//
|
||||
// Параметры:
|
||||
// IDКлиента - Строка - Идентификатор клиента - clientid
|
||||
// КлючAPI - Строка - API ключ - apikey
|
||||
// Фильтр - Структура Из КлючИЗначение - Фильтр выборки товаров. См. ПолучитьСтруктуруФильтраТоваров - filter
|
||||
// IDПоследнего - Строка, Число - ID последнего значения (last_id) из предыдущего запроса - last
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Ozon Seller API
|
||||
Функция ПолучитьЦеныТоваров(Знач IDКлиента, Знач КлючAPI, Знач Фильтр = "", Знач IDПоследнего = 0) Экспорт
|
||||
|
||||
URL = "https://api-seller.ozon.ru/v4/product/info/prices";
|
||||
|
||||
Заголовки = СоздатьЗаголовкиЗапроса(IDКлиента, КлючAPI);
|
||||
Лимит = 300;
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("filter" , Фильтр , "Коллекция", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("limit" , Лимит , "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("last_id", IDПоследнего, "Строка" , Параметры);
|
||||
|
||||
Если Не Параметры.Свойство("filter") Тогда
|
||||
Параметры.Вставить("filter", Новый Структура);
|
||||
КонецЕсли;
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить информацию об уценке
|
||||
// Получает информацию об уценке и основном товаре по SKU уценённых товаров
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [post /v1/product/info/discounted](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductInfoDiscounted)
|
||||
//
|
||||
// Параметры:
|
||||
// IDКлиента - Строка - Идентификатор клиента - clientid
|
||||
// КлючAPI - Строка - API ключ - apikey
|
||||
// SKU - Число, Массив Из Число - SKU уцененных товаров - sku
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Ozon Seller API
|
||||
Функция ПолучитьИнформациюОбУценке(Знач IDКлиента, Знач КлючAPI, Знач SKU) Экспорт
|
||||
|
||||
URL = "https://api-seller.ozon.ru/v1/product/info/discounted";
|
||||
|
||||
Заголовки = СоздатьЗаголовкиЗапроса(IDКлиента, КлючAPI);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("discounted_skus", SKU, "Массив", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
@@ -1232,6 +1309,36 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Установить скидку на уцененный товар
|
||||
// Устанавливает размер скидки на уценённые товары, продающиеся по схеме FBS
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [post /v1/product/update/discount](@docs.ozon.ru/api/seller/#operation/ProductAPI_ProductUpdateDiscount)
|
||||
//
|
||||
// Параметры:
|
||||
// IDКлиента - Строка - Идентификатор клиента - clientid
|
||||
// КлючAPI - Строка - API ключ - apikey
|
||||
// IDТовара - Строка, Число - Идентификатор товара - productid
|
||||
// Скидка - Строка, Число - Размер скидки - discount
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Ozon Seller API
|
||||
Функция УстановитьСкидкуНаУцененныйТовар(Знач IDКлиента, Знач КлючAPI, Знач IDТовара, Знач Скидка) Экспорт
|
||||
|
||||
URL = "https://api-seller.ozon.ru/v1/product/update/discount";
|
||||
|
||||
Заголовки = СоздатьЗаголовкиЗапроса(IDКлиента, КлючAPI);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("discount" , Скидка , "Число", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("product_id", IDТовара, "Число", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить структуру остатков товара
|
||||
// Получает структуру для внесения остатков товара в функции ОбновитьКоличествоТоваров
|
||||
//
|
||||
|
||||
@@ -3309,6 +3309,9 @@
|
||||
|
||||
Ozon_ПолучитьКоличествоТоваров(ПараметрыТеста);
|
||||
Ozon_ОбновитьЦеныТоваров(ПараметрыТеста);
|
||||
Ozon_ПолучитьЦеныТоваров(ПараметрыТеста);
|
||||
Ozon_ПолучитьИнформациюОбУценке(ПараметрыТеста);
|
||||
Ozon_УстановитьСкидкуНаУцененныйТовар(ПараметрыТеста);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
@@ -4234,9 +4237,9 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_ОзонМассив(Знач Результат)
|
||||
Процедура Проверка_ОзонМассив(Знач Результат, Знач Поле = "result")
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]).ИмеетТип("Массив");
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат[Поле]).ИмеетТип("Массив");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
@@ -12649,8 +12652,8 @@
|
||||
Процедура Ozon_ОбновитьЦеныТоваров(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
IDТовара = ПараметрыФункции["Ozon_ProductID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
IDТовара = ПараметрыФункции["Ozon_ProductID"];
|
||||
|
||||
Цены = Новый Структура;
|
||||
Цены.Вставить("auto_action_enabled" , "DISABLED");
|
||||
@@ -12672,6 +12675,53 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Ozon_ПолучитьЦеныТоваров(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
|
||||
Результат = OPI_Ozon.ПолучитьЦеныТоваров(IDКлиента, КлючAPI, Новый Структура);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьЦеныТоваров", "Ozon");
|
||||
|
||||
Проверка_ОзонМассивОбъектов(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Ozon_ПолучитьИнформациюОбУценке(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
SKU = 1626044001;
|
||||
|
||||
Результат = OPI_Ozon.ПолучитьИнформациюОбУценке(IDКлиента, КлючAPI, SKU);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьИнформациюОбУценке", "Ozon");
|
||||
|
||||
Проверка_ОзонМассив(Результат, "items");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Ozon_УстановитьСкидкуНаУцененныйТовар(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
IDТовара = 1156646653;
|
||||
|
||||
Скидка = 10;
|
||||
|
||||
Результат = OPI_Ozon.УстановитьСкидкуНаУцененныйТовар(IDКлиента, КлючAPI, IDТовара, Скидка);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УстановитьСкидкуНаУцененныйТовар", "Ozon");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
@@ -252,6 +252,10 @@
|
||||
OPI_Инструменты.ДобавитьПоле("limit" , Лимит , "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("last_id", IDПоследнего, "Строка" , Параметры);
|
||||
|
||||
Если Не Параметры.Свойство("filter") Тогда
|
||||
Параметры.Вставить("filter", Новый Структура);
|
||||
КонецЕсли;
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
@@ -287,6 +291,10 @@
|
||||
OPI_Инструменты.ДобавитьПоле("limit" , Лимит , "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("last_id", IDПоследнего, "Строка" , Параметры);
|
||||
|
||||
Если Не Параметры.Свойство("filter") Тогда
|
||||
Параметры.Вставить("filter", Новый Структура);
|
||||
КонецЕсли;
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
@@ -929,9 +937,10 @@
|
||||
КонецФункции
|
||||
|
||||
// Получить структуру фильтра товаров
|
||||
// Получает структуру для отбора списка товаров в функциях ПолучитьСписокТоваров и ПолучитьКоличествоТоваров
|
||||
// Получает структуру для отбора списка товаров
|
||||
//
|
||||
// Примечание:
|
||||
// Связанные функции: ПолучитьСписокТоваров, ПолучитьКоличествоТоваров, ПолучитьЦеныТоваров
|
||||
// Описание полей фильтра можно найти на странице документации по получению списка товаров: [post /v2/product/list](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductList)
|
||||
//
|
||||
// Параметры:
|
||||
@@ -1167,6 +1176,74 @@
|
||||
OPI_Инструменты.ДобавитьПоле("limit" , Лимит , "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("last_id", IDПоследнего, "Строка" , Параметры);
|
||||
|
||||
Если Не Параметры.Свойство("filter") Тогда
|
||||
Параметры.Вставить("filter", Новый Структура);
|
||||
КонецЕсли;
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить цены товаров
|
||||
// Получает цены товаров с фильтром или без
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [post /v4/product/info/prices](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductInfoPricesV4)
|
||||
//
|
||||
// Параметры:
|
||||
// IDКлиента - Строка - Идентификатор клиента - clientid
|
||||
// КлючAPI - Строка - API ключ - apikey
|
||||
// Фильтр - Структура Из КлючИЗначение - Фильтр выборки товаров. См. ПолучитьСтруктуруФильтраТоваров - filter
|
||||
// IDПоследнего - Строка, Число - ID последнего значения (last_id) из предыдущего запроса - last
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Ozon Seller API
|
||||
Функция ПолучитьЦеныТоваров(Знач IDКлиента, Знач КлючAPI, Знач Фильтр = "", Знач IDПоследнего = 0) Экспорт
|
||||
|
||||
URL = "https://api-seller.ozon.ru/v4/product/info/prices";
|
||||
|
||||
Заголовки = СоздатьЗаголовкиЗапроса(IDКлиента, КлючAPI);
|
||||
Лимит = 300;
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("filter" , Фильтр , "Коллекция", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("limit" , Лимит , "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("last_id", IDПоследнего, "Строка" , Параметры);
|
||||
|
||||
Если Не Параметры.Свойство("filter") Тогда
|
||||
Параметры.Вставить("filter", Новый Структура);
|
||||
КонецЕсли;
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить информацию об уценке
|
||||
// Получает информацию об уценке и основном товаре по SKU уценённых товаров
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [post /v1/product/info/discounted](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductInfoDiscounted)
|
||||
//
|
||||
// Параметры:
|
||||
// IDКлиента - Строка - Идентификатор клиента - clientid
|
||||
// КлючAPI - Строка - API ключ - apikey
|
||||
// SKU - Число, Массив Из Число - SKU уцененных товаров - sku
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Ozon Seller API
|
||||
Функция ПолучитьИнформациюОбУценке(Знач IDКлиента, Знач КлючAPI, Знач SKU) Экспорт
|
||||
|
||||
URL = "https://api-seller.ozon.ru/v1/product/info/discounted";
|
||||
|
||||
Заголовки = СоздатьЗаголовкиЗапроса(IDКлиента, КлючAPI);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("discounted_skus", SKU, "Массив", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
@@ -1232,6 +1309,36 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Установить скидку на уцененный товар
|
||||
// Устанавливает размер скидки на уценённые товары, продающиеся по схеме FBS
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [post /v1/product/update/discount](@docs.ozon.ru/api/seller/#operation/ProductAPI_ProductUpdateDiscount)
|
||||
//
|
||||
// Параметры:
|
||||
// IDКлиента - Строка - Идентификатор клиента - clientid
|
||||
// КлючAPI - Строка - API ключ - apikey
|
||||
// IDТовара - Строка, Число - Идентификатор товара - productid
|
||||
// Скидка - Строка, Число - Размер скидки - discount
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Ozon Seller API
|
||||
Функция УстановитьСкидкуНаУцененныйТовар(Знач IDКлиента, Знач КлючAPI, Знач IDТовара, Знач Скидка) Экспорт
|
||||
|
||||
URL = "https://api-seller.ozon.ru/v1/product/update/discount";
|
||||
|
||||
Заголовки = СоздатьЗаголовкиЗапроса(IDКлиента, КлючAPI);
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("discount" , Скидка , "Число", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("product_id", IDТовара, "Число", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить структуру остатков товара
|
||||
// Получает структуру для внесения остатков товара в функции ОбновитьКоличествоТоваров
|
||||
//
|
||||
|
||||
@@ -3309,6 +3309,9 @@
|
||||
|
||||
Ozon_ПолучитьКоличествоТоваров(ПараметрыТеста);
|
||||
Ozon_ОбновитьЦеныТоваров(ПараметрыТеста);
|
||||
Ozon_ПолучитьЦеныТоваров(ПараметрыТеста);
|
||||
Ozon_ПолучитьИнформациюОбУценке(ПараметрыТеста);
|
||||
Ozon_УстановитьСкидкуНаУцененныйТовар(ПараметрыТеста);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
@@ -4234,9 +4237,9 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_ОзонМассив(Знач Результат)
|
||||
Процедура Проверка_ОзонМассив(Знач Результат, Знач Поле = "result")
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]).ИмеетТип("Массив");
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат[Поле]).ИмеетТип("Массив");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
@@ -12649,8 +12652,8 @@
|
||||
Процедура Ozon_ОбновитьЦеныТоваров(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
IDТовара = ПараметрыФункции["Ozon_ProductID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
IDТовара = ПараметрыФункции["Ozon_ProductID"];
|
||||
|
||||
Цены = Новый Структура;
|
||||
Цены.Вставить("auto_action_enabled" , "DISABLED");
|
||||
@@ -12672,6 +12675,53 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Ozon_ПолучитьЦеныТоваров(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
|
||||
Результат = OPI_Ozon.ПолучитьЦеныТоваров(IDКлиента, КлючAPI, Новый Структура);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьЦеныТоваров", "Ozon");
|
||||
|
||||
Проверка_ОзонМассивОбъектов(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Ozon_ПолучитьИнформациюОбУценке(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
SKU = 1626044001;
|
||||
|
||||
Результат = OPI_Ozon.ПолучитьИнформациюОбУценке(IDКлиента, КлючAPI, SKU);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьИнформациюОбУценке", "Ozon");
|
||||
|
||||
Проверка_ОзонМассив(Результат, "items");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Ozon_УстановитьСкидкуНаУцененныйТовар(ПараметрыФункции)
|
||||
|
||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||
IDТовара = 1156646653;
|
||||
|
||||
Скидка = 10;
|
||||
|
||||
Результат = OPI_Ozon.УстановитьСкидкуНаУцененныйТовар(IDКлиента, КлючAPI, IDТовара, Скидка);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УстановитьСкидкуНаУцененныйТовар", "Ozon");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
@@ -1017,7 +1017,7 @@
|
||||
НоваяСтрока.Параметр = "--empty";
|
||||
НоваяСтрока.Описание = "Истина > структура с пустыми значениями, Ложь > в значениях будут описания полей (необяз. по ум. - Нет)";
|
||||
НоваяСтрока.Область = "Загрузка и обновление товаров";
|
||||
НоваяСтрока.ОписаниеМетода = "Получает структуру для отбора списка товаров в функциях ПолучитьСписокТоваров и ПолучитьКоличествоТоваров";
|
||||
НоваяСтрока.ОписаниеМетода = "Получает структуру для отбора списка товаров";
|
||||
|
||||
|
||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||
@@ -1220,6 +1220,82 @@
|
||||
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||
|
||||
|
||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||
НоваяСтрока.Библиотека = "ozon";
|
||||
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||
НоваяСтрока.Метод = "ПолучитьЦеныТоваров";
|
||||
НоваяСтрока.МетодПоиска = "ПОЛУЧИТЬЦЕНЫТОВАРОВ";
|
||||
НоваяСтрока.Параметр = "--clientid";
|
||||
НоваяСтрока.Описание = "Идентификатор клиента";
|
||||
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||
НоваяСтрока.ОписаниеМетода = "Получает цены товаров с фильтром или без";
|
||||
|
||||
|
||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||
НоваяСтрока.Библиотека = "ozon";
|
||||
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||
НоваяСтрока.Метод = "ПолучитьЦеныТоваров";
|
||||
НоваяСтрока.МетодПоиска = "ПОЛУЧИТЬЦЕНЫТОВАРОВ";
|
||||
НоваяСтрока.Параметр = "--apikey";
|
||||
НоваяСтрока.Описание = "API ключ";
|
||||
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||
|
||||
|
||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||
НоваяСтрока.Библиотека = "ozon";
|
||||
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||
НоваяСтрока.Метод = "ПолучитьЦеныТоваров";
|
||||
НоваяСтрока.МетодПоиска = "ПОЛУЧИТЬЦЕНЫТОВАРОВ";
|
||||
НоваяСтрока.Параметр = "--filter";
|
||||
НоваяСтрока.Описание = "Фильтр выборки товаров. См. ПолучитьСтруктуруФильтраТоваров (необяз. по ум. - Пустое значение)";
|
||||
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||
|
||||
|
||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||
НоваяСтрока.Библиотека = "ozon";
|
||||
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||
НоваяСтрока.Метод = "ПолучитьЦеныТоваров";
|
||||
НоваяСтрока.МетодПоиска = "ПОЛУЧИТЬЦЕНЫТОВАРОВ";
|
||||
НоваяСтрока.Параметр = "--last";
|
||||
НоваяСтрока.Описание = "ID последнего значения (last_id) из предыдущего запроса (необяз. по ум. - Пустое значение)";
|
||||
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||
|
||||
|
||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||
НоваяСтрока.Библиотека = "ozon";
|
||||
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||
НоваяСтрока.Метод = "ПолучитьИнформациюОбУценке";
|
||||
НоваяСтрока.МетодПоиска = "ПОЛУЧИТЬИНФОРМАЦИЮОБУЦЕНКЕ";
|
||||
НоваяСтрока.Параметр = "--clientid";
|
||||
НоваяСтрока.Описание = "Идентификатор клиента";
|
||||
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||
НоваяСтрока.ОписаниеМетода = "Получает информацию об уценке и основном товаре по SKU уценённых товаров
|
||||
|
|
||||
| Пример указания параметра типа массив:
|
||||
| --param ""['Val1','Val2','Val3']""
|
||||
|";
|
||||
|
||||
|
||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||
НоваяСтрока.Библиотека = "ozon";
|
||||
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||
НоваяСтрока.Метод = "ПолучитьИнформациюОбУценке";
|
||||
НоваяСтрока.МетодПоиска = "ПОЛУЧИТЬИНФОРМАЦИЮОБУЦЕНКЕ";
|
||||
НоваяСтрока.Параметр = "--apikey";
|
||||
НоваяСтрока.Описание = "API ключ";
|
||||
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||
|
||||
|
||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||
НоваяСтрока.Библиотека = "ozon";
|
||||
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||
НоваяСтрока.Метод = "ПолучитьИнформациюОбУценке";
|
||||
НоваяСтрока.МетодПоиска = "ПОЛУЧИТЬИНФОРМАЦИЮОБУЦЕНКЕ";
|
||||
НоваяСтрока.Параметр = "--sku";
|
||||
НоваяСтрока.Описание = "SKU уцененных товаров";
|
||||
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||
|
||||
|
||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||
НоваяСтрока.Библиотека = "ozon";
|
||||
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||
@@ -1290,6 +1366,47 @@
|
||||
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||
|
||||
|
||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||
НоваяСтрока.Библиотека = "ozon";
|
||||
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||
НоваяСтрока.Метод = "УстановитьСкидкуНаУцененныйТовар";
|
||||
НоваяСтрока.МетодПоиска = "УСТАНОВИТЬСКИДКУНАУЦЕНЕННЫЙТОВАР";
|
||||
НоваяСтрока.Параметр = "--clientid";
|
||||
НоваяСтрока.Описание = "Идентификатор клиента";
|
||||
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||
НоваяСтрока.ОписаниеМетода = "Устанавливает размер скидки на уценённые товары, продающиеся по схеме FBS";
|
||||
|
||||
|
||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||
НоваяСтрока.Библиотека = "ozon";
|
||||
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||
НоваяСтрока.Метод = "УстановитьСкидкуНаУцененныйТовар";
|
||||
НоваяСтрока.МетодПоиска = "УСТАНОВИТЬСКИДКУНАУЦЕНЕННЫЙТОВАР";
|
||||
НоваяСтрока.Параметр = "--apikey";
|
||||
НоваяСтрока.Описание = "API ключ";
|
||||
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||
|
||||
|
||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||
НоваяСтрока.Библиотека = "ozon";
|
||||
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||
НоваяСтрока.Метод = "УстановитьСкидкуНаУцененныйТовар";
|
||||
НоваяСтрока.МетодПоиска = "УСТАНОВИТЬСКИДКУНАУЦЕНЕННЫЙТОВАР";
|
||||
НоваяСтрока.Параметр = "--productid";
|
||||
НоваяСтрока.Описание = "Идентификатор товара";
|
||||
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||
|
||||
|
||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||
НоваяСтрока.Библиотека = "ozon";
|
||||
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||
НоваяСтрока.Метод = "УстановитьСкидкуНаУцененныйТовар";
|
||||
НоваяСтрока.МетодПоиска = "УСТАНОВИТЬСКИДКУНАУЦЕНЕННЫЙТОВАР";
|
||||
НоваяСтрока.Параметр = "--discount";
|
||||
НоваяСтрока.Описание = "Размер скидки";
|
||||
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||
|
||||
|
||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||
НоваяСтрока.Библиотека = "ozon";
|
||||
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||
|
||||
Reference in New Issue
Block a user