This commit is contained in:
C committed 2026-01-04 12:43:39 -08:00
1 parent 0089ce8556
commit 97174b2080
1 file changed
+18 -20
+18 -20
View File
@@ -266,23 +266,9 @@ async def update_itm(item_id: str, lego_set: dict, item_data: dict = None):
print(f"[@DEBUG] Fresh variation version: {variation_version}") print(f"[@DEBUG] Fresh variation version: {variation_version}")
# Build upsert body # Build upsert body
upsert_body = { variation_obj = {
"idempotency_key": str(uuid.uuid4()),
"object": {
"type": "ITEM",
"id": item_id,
"version": current_version, # Include version for conflict prevention
"item_data": {
"name": pw_name,
"description": f"{set_name} - {set_theme}",
"variations": [
{
"type": "ITEM_VARIATION", "type": "ITEM_VARIATION",
"id": ( "id": variation_id if variation_id else "#TEMP_VARIATION_ID",
variation_id
if variation_id
else "#TEMP_VARIATION_ID"
),
"item_variation_data": { "item_variation_data": {
"item_id": item_id, "item_id": item_id,
"name": "Regular", "name": "Regular",
@@ -294,16 +280,28 @@ async def update_itm(item_id: str, lego_set: dict, item_data: dict = None):
"sku": set_upc if set_upc else None, "sku": set_upc if set_upc else None,
}, },
} }
],
# Include variation version if it exists (required for updates)
if variation_version is not None:
variation_obj["version"] = variation_version
upsert_body = {
"idempotency_key": str(uuid.uuid4()),
"object": {
"type": "ITEM",
"id": item_id,
"version": current_version, # Include version for conflict prevention
"item_data": {
"name": pw_name,
"description": f"{set_name} - {set_theme}",
"variations": [variation_obj],
}, },
}, },
} }
# Remove None values # Remove None values
if not set_upc: if not set_upc:
del upsert_body["object"]["item_data"]["variations"][0][ del variation_obj["item_variation_data"]["sku"]
"item_variation_data"
]["sku"]
print(f"[@DEBUG] Upserting item {item_id} with name: {pw_name}") print(f"[@DEBUG] Upserting item {item_id} with name: {pw_name}")