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
+35 -19
+35 -19
View File
@@ -286,26 +286,42 @@ 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
variation_obj = { if variations:
"type": "ITEM_VARIATION", # Start with existing variation to preserve all fields
"id": variation_id if variation_id else "#TEMP_VARIATION_ID", variation_obj = variations[0].copy()
"item_variation_data": { variation_data = variation_obj.get("item_variation_data", {}).copy()
"item_id": item_id,
"name": "Regular",
"pricing_type": "FIXED_PRICING",
"price_money": {
"amount": price_in_cents,
"currency": "USD",
},
"sku": set_number, # LEGO set number (e.g., "10338")
"upc": set_upc if set_upc else None, # Barcode/GTIN
},
}
# Include variation version if it exists (required for updates) # Update only the fields we want to change
if variation_version is not None: variation_data["price_money"] = {
variation_obj["version"] = variation_version "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 = {
"type": "ITEM_VARIATION",
"id": "#TEMP_VARIATION_ID",
"item_variation_data": {
"item_id": item_id,
"name": "Regular",
"pricing_type": "FIXED_PRICING",
"price_money": {
"amount": price_in_cents,
"currency": "USD",
},
"sku": set_number,
"upc": set_upc if set_upc else None,
},
}
# 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)