补开放接口文档

This commit is contained in:
yml2213
2026-07-31 12:29:43 +08:00
parent 761522e808
commit 667bfbde06
2 changed files with 234 additions and 2 deletions
+69 -2
View File
@@ -28,6 +28,20 @@ const preStyle: CSSProperties = {
wordBreak: 'break-all',
}
const deliveryModes = [
{
mode: 'Web 发货页',
scene: '商户想要“只返回一个链接”,让用户直接打开平台页面填写 UID',
interfaces: '/api/client/v1/orders/{order_no}/delivery-link',
},
{
mode: '自建发货页',
scene: '商户自己有前端页面,想在自己的系统里完成发货流程',
interfaces:
'/api/client/v1/orders/{order_no}/delivery\n/api/client/v1/orders/{order_no}/delivery/bind\n/api/client/v1/orders/{order_no}/delivery/submit',
},
]
export default function OpenApiDocs() {
return (
<div>
@@ -37,10 +51,13 @@ export default function OpenApiDocs() {
<Paragraph type="secondary">
API / API
<Text code>X-App-Key</Text> + HMAC-SHA256
<Text code>/api/open/v1</Text>
<Text code>/api/open/v1</Text> API
</Paragraph>
<Tabs
tabPosition="left"
style={{ minHeight: 680 }}
items={[
{
key: 'overview',
@@ -57,6 +74,11 @@ export default function OpenApiDocs() {
label: '接口列表',
children: <EndpointsTab />,
},
{
key: 'delivery',
label: '发货模式',
children: <DeliveryModeTab />,
},
{
key: 'status',
label: '状态说明',
@@ -80,10 +102,29 @@ function OverviewTab() {
<li> / API <Text code>AppKey</Text> <Text code>AppSecret</Text></li>
<li> <Text code>X-App-Key / X-Timestamp / X-Nonce / X-Sign</Text> </li>
<li> <Text code>sku</Text></li>
<li> <Text code>order_no</Text> </li>
<li> <Text code>order_no</Text> </li>
</ol>
}
/>
<Card size="small" title="发货链路概览">
<Table
size="small"
pagination={false}
rowKey="mode"
dataSource={deliveryModes}
columns={[
{ title: '模式', dataIndex: 'mode', width: 140 },
{ title: '适用场景', dataIndex: 'scene' },
{
title: '相关接口',
dataIndex: 'interfaces',
render: (v: string) => (
<pre style={preStyle}>{v}</pre>
),
},
]}
/>
</Card>
<Card size="small" title="环境信息">
<Descriptions size="small" column={1} bordered>
<Descriptions.Item label="Base URL">
@@ -101,6 +142,32 @@ function OverviewTab() {
)
}
function DeliveryModeTab() {
return (
<Space direction="vertical" size="middle" style={{ width: '100%' }}>
<Card size="small" title="推荐用法">
<Descriptions size="small" column={1} bordered>
<Descriptions.Item label="只想给用户一个链接">
<Text code>delivery-link</Text> Web
</Descriptions.Item>
<Descriptions.Item label="想自建发货页面">
<Text code>delivery</Text> <Text code>bind</Text> <Text code>submit</Text>
</Descriptions.Item>
<Descriptions.Item label="取消作废">
</Descriptions.Item>
</Descriptions>
</Card>
<Alert
type="info"
showIcon
message="两种模式共用同一套底层履约逻辑"
description="不管是 Web 发货页还是商户自建页面,最终都会走同一套订单校验、绑定和提交逻辑,只是前端形态不同。"
/>
</Space>
)
}
function AuthTab() {
return (
<Space direction="vertical" size="middle" style={{ width: '100%' }}>