affiliate-dash 领取界面优化(合并多次迭代为一次提交)

- 第 2 步绑定页:移除金额/单号/商品信息区,移除标题上方 affiliate-dash 标签
- 二维码区参考旧设计:左右竖排红字 Q区用Q扫/V区用V扫,去浅蓝背景,放大至 220px
- 第 4 步结果页:废弃 canvas 生成发货成功图,改用旧版结果卡片(绿勾+兑换成功+信息网格+商品明细)
- 开发 Mock:新增 affiliate-dash 领取五步 mock(uid/bind/submitted/completed/failed,不调真实平台)
This commit is contained in:
yml2213
2026-08-05 19:39:15 +08:00
parent 316ee6d135
commit 4e9c416235
10 changed files with 519 additions and 65 deletions
@@ -414,11 +414,18 @@ export async function submitAffiliateDashClaim(
}
const now = nowIso()
const result = await submitAffiliateDashDelivery({
orderNo: flow.orderNo,
gameAccount,
bindUuid,
})
const isMock = Boolean(flow.mock?.enabled)
const result = isMock
? {
status: 'delivered',
message: '开发 mock 已模拟提交发货',
providerOrderNo: `MOCKAD-${flow.orderNo}`,
}
: await submitAffiliateDashDelivery({
orderNo: flow.orderNo,
gameAccount,
bindUuid,
})
const nextFlow = {
...flow,
@@ -505,6 +512,10 @@ async function bindAffiliateDashClaimForTask(task: TaskRow, gameAccount: string)
async function refreshAffiliateDashBindState(task: TaskRow): Promise<TaskRow | null> {
const taskContext = parseTaskContextValue(task)
const flow = normalizeAffiliateDashFlow(taskContext.affiliateDash)
if (flow.mock?.enabled) {
// dev-mock:不请求 affiliate-dash 平台,绑定状态以 context 为准
return task
}
if (!flow.orderNo || !flow.bindUuid) {
return task
}