diff --git a/src/app/api/sync/product/route.ts b/src/app/api/sync/product/route.ts index f9f60a6..8d1e0a3 100644 --- a/src/app/api/sync/product/route.ts +++ b/src/app/api/sync/product/route.ts @@ -156,19 +156,16 @@ export async function POST(request: Request) { medusaId: productData.medusaId, } - // 基础字段:只更新空字段 - if (!existingProduct.seedId && productData.seedId) { - mergedData.seedId = productData.seedId - } - if (!existingProduct.title) mergedData.title = productData.title - if (!existingProduct.handle) mergedData.handle = productData.handle + // 基础字段:Medusa 来源的字段总是更新 + mergedData.seedId = productData.seedId + mergedData.title = productData.title + mergedData.status = productData.status + // thumbnail 只在为空时同步(Payload 编辑优先) if (!existingProduct.thumbnail) mergedData.thumbnail = productData.thumbnail - if (!existingProduct.status) mergedData.status = productData.status // description 始终从 Medusa 同步(纯文本,只读字段) mergedData.description = medusaProduct.description || null - // 最低价格和 seedId:总是更新 - mergedData.seedId = productData.seedId + // 价格:总是更新 mergedData.startPrice = productData.startPrice // 如果是预购产品,fundingGoal 也总是更新