fix(fulfillment): 冻结已分配订单的内部SKU事实

This commit is contained in:
yml2213
2026-11-03 12:38:40 +08:00
parent e6763882f5
commit ac3bb1f686
3 changed files with 109 additions and 24 deletions
@@ -35,6 +35,7 @@ test(
resolveInternalSkuMapping,
upsertInternalSkuMapping,
} = await import('./internal-sku-mapping-service.js')
const { updateOrderItemSourceSnapshot } = await import('../../repositories/order-item-repo.js')
const suffix = `${Date.now()}_${Math.floor(Math.random() * 1_000_000)}`
const shopId = `it-routing-${suffix}`
const manualSku = `集成测试人工-${suffix}`
@@ -167,6 +168,15 @@ test(
assert.equal(manualItem.rows[0]?.fulfillment_channel, 'manual')
assert.ok(Number(manualItem.rows[0]?.fulfillment_config_id) > 0)
const sourceSyncedItem = await updateOrderItemSourceSnapshot(manualItemId, {
skuName: `平台覆盖-${suffix}`,
specJson: JSON.stringify({ skuNick: `平台覆盖-${suffix}` }),
itemSnapshotJson: JSON.stringify({ externalSkuName: `平台覆盖-${suffix}` }),
updatedAt: new Date().toISOString(),
})
assert.equal(sourceSyncedItem?.sku_name, manualSku)
assert.equal(sourceSyncedItem?.spec_json?.skuNick, manualSku)
const switched = await switchChannelForOrderItems({
orderItemIds: [manualItemId],
channel: 'third_party_voucher',