feat(douyin-mashida): 商品展示统一改为内部 SKU(引流标题降级)
平台 sku_order_list[].code 是商家维护的**内部 SKU**(如「幸运币2个」), product_name 只是店铺用来**引流**的长标题(如「【测试专用】和平精英皮肤小店入口…」)。 商家按内部 SKU 认货(后续履约匹配也用它),原来的展示把引流标题当商品名, 列表/详情/兑换页三处都会让人认错货。 改为以内部 SKU 为主、引流标题降级为副信息: - 后台订单列表「商品 / 任务」:itemTitle = 内部 SKU,skuNick = 引流标题 - 后台订单详情「商品明细」:商品 = 内部 SKU;SKU/规格 不再重复展示同一串 - 兑换中心 /redeem:商品 = 内部 SKU(粗体)+ 引流标题(灰色小字,新增 productTitle 字段) 实现只在 `source === 'douyin_mashida'` 时生效(resolveOrderItemTitle / resolveOrderItemSkuNick 加 douyin 分支),其它平台展示逻辑不变; 用真实订单形态补了单测。
This commit is contained in:
@@ -36,7 +36,10 @@ export type RedeemOrderView = {
|
||||
orderNo: string
|
||||
/** 脱敏摘要(不含买家手机号/地址/open_id) */
|
||||
summary: {
|
||||
/** 商品名(抖音码速达口径:**内部 SKU**,即平台 `sku_order_list[].code`) */
|
||||
productName: string
|
||||
/** 平台商品标题(店铺里用来引流的标题,仅作副信息展示) */
|
||||
productTitle: string
|
||||
quantity: number
|
||||
amountFen: number
|
||||
paidAt: string | null
|
||||
@@ -260,7 +263,10 @@ function buildSummary(order: OrderRow, items: OrderItemRow[]) {
|
||||
const quantity = items.reduce((total, item) => total + Math.max(1, Number(item.quantity || 1)), 0)
|
||||
|
||||
return {
|
||||
productName: String(firstItem?.sku_name || order.shop_name || '').trim(),
|
||||
// 内部 SKU(平台 code,如「幸运币2个」)才是商家认的商品;
|
||||
// 平台标题(product_name)只是引流词,降级为副标题,避免买家/客服认错货。
|
||||
productName: String(firstItem?.sku_code || firstItem?.sku_name || order.shop_name || '').trim(),
|
||||
productTitle: String(firstItem?.sku_name || '').trim(),
|
||||
quantity: Math.max(1, quantity),
|
||||
amountFen: Number(order.total_amount || 0),
|
||||
paidAt: order.paid_at || null,
|
||||
|
||||
Reference in New Issue
Block a user