feat(trading): support multi-item purchase intents

This commit is contained in:
2026-08-31 11:41:39 +08:00
parent 865bbe3724
commit f76c0a1518
7 changed files with 291 additions and 57 deletions
+8 -4
View File
@@ -37,16 +37,20 @@ class SubmitOrderRequest(BaseModel):
intent: dict[str, Any] = Field(
description=(
"下单意图原文。网关不解释内容,原样存库并透传给本地 worker,结构由 trading 侧定义:"
"item_url(必填,商品页 URL);quantity(可选,默认 1);"
"推荐使用 items(非空数组,每项含 item_url,及可选 quantity/variant_id/choice);"
"为兼容已发布客户端,也支持单商品 item_url(及同级 quantity/variant_id/choice);"
"quantity(可选,默认 1);"
"variant_id(多规格商品必填,取自 /api/item_detail 的 variants,不传时 worker 自动选第一个非售罄规格);"
"choice(可选,商品选项,如 \"颜色:赤\",可传字符串或字符串列表);"
"max_total_yen(可选,本次金额上限:确认页实际应付超过即中止并报 needs_human,"
"缺省用服务端 RAKUTEN_ORDER_MAX_TOTAL_YEN)"
),
examples=[{
"item_url": "https://item.rakuten.co.jp/shop/code/",
"quantity": 1,
"variant_id": "1001",
"items": [{
"item_url": "https://item.rakuten.co.jp/shop/code/",
"quantity": 1,
"variant_id": "1001",
}],
"max_total_yen": 30000,
}],
)