feat: new handies for ozon

This commit is contained in:
2025-03-20 16:43:03 +03:00
parent fbecb61885
commit b5d195998c
2 changed files with 11 additions and 6 deletions

View File

@@ -25,7 +25,7 @@ class OzonMarketplaceApi(BaseMarketplaceApi):
return "https://api-seller.ozon.ru"
async def get_products(self, data: dict) -> dict:
method = '/v2/product/list'
method = '/v3/product/list'
response = await self._method('POST', method, json=data)
return response
@@ -36,7 +36,9 @@ class OzonMarketplaceApi(BaseMarketplaceApi):
data = {
'limit': limit,
'last_id': last_id,
'filter':{
'visibility': 'ALL',
}
}
response = await self.get_products(data)
if not response:
@@ -54,7 +56,7 @@ class OzonMarketplaceApi(BaseMarketplaceApi):
break
async def get_products_info(self, data: dict) -> dict:
method = '/v2/product/info/list'
method = '/v3/product/info/list'
response = await self._method('POST', method, json=data)
return response

View File

@@ -36,7 +36,7 @@ class OzonProductSynchronizer(BaseProductSynchronizer):
if primary_image:
image = ProductImage(
product=product,
image_url=primary_image
image_url=primary_image[0]
)
return [image]
product_images = []
@@ -84,7 +84,7 @@ class OzonProductSynchronizer(BaseProductSynchronizer):
products_info = await self.api.get_products_info(data)
if not products_info:
continue
result = products_info.get('result')
result = products_info
if not result:
continue
items = result.get('items')
@@ -131,7 +131,7 @@ class OzonProductSynchronizer(BaseProductSynchronizer):
products_info = await self.api.get_products_info(data)
if not products_info:
continue
result = products_info.get('result')
result = products_info
if not result:
continue
items = result.get('items')
@@ -169,6 +169,9 @@ class OzonProductSynchronizer(BaseProductSynchronizer):
def _update_images(self, product, product_info):
existing_images = {image.image_url for image in product.images}
primary_image = product_info.get('primary_image')
if isinstance(primary_image,list) and primary_image:
primary_image = primary_image[0]
if primary_image and primary_image not in existing_images:
image = ProductImage(
product=product,