we messed up lole

This commit is contained in:
C committed 2026-01-04 14:22:40 -08:00
1 parent b40526c494
commit a11aba2564
1 file changed
+24 -8
+24 -8
View File
@@ -286,10 +286,30 @@ 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}")
print(f"[@DEBUG] Final category_id for upsert: {category_id}") print(f"[@DEBUG] Final category_id for upsert: {category_id}")
# Build upsert body # Preserve existing variation and update only what we need
if variations:
# Start with existing variation to preserve all fields
variation_obj = variations[0].copy()
variation_data = variation_obj.get("item_variation_data", {}).copy()
# Update only the fields we want to change
variation_data["price_money"] = {
"amount": price_in_cents,
"currency": "USD",
}
variation_data["sku"] = set_number # LEGO set number
variation_data["upc"] = set_upc if set_upc else None # Barcode/GTIN
variation_obj["item_variation_data"] = variation_data
# Update version if exists (required for updates)
if variation_version is not None:
variation_obj["version"] = variation_version
else:
# Create new variation if none exists
variation_obj = { variation_obj = {
"type": "ITEM_VARIATION", "type": "ITEM_VARIATION",
"id": variation_id if variation_id else "#TEMP_VARIATION_ID", "id": "#TEMP_VARIATION_ID",
"item_variation_data": { "item_variation_data": {
"item_id": item_id, "item_id": item_id,
"name": "Regular", "name": "Regular",
@@ -298,15 +318,11 @@ async def update_itm(item_id: str, lego_set: dict, item_data: dict = None):
"amount": price_in_cents, "amount": price_in_cents,
"currency": "USD", "currency": "USD",
}, },
"sku": set_number, # LEGO set number (e.g., "10338") "sku": set_number,
"upc": set_upc if set_upc else None, # Barcode/GTIN "upc": 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
# Get the full existing item_data and modify only what we need # Get the full existing item_data and modify only what we need
# This preserves ALL existing fields (location settings, tax, etc) # This preserves ALL existing fields (location settings, tax, etc)
existing_item_data = fresh_item.get("item_data", {}) existing_item_data = fresh_item.get("item_data", {})