供应商接入标准化流程:商务签约 → 技术适配 → 自动测试 → 灰度上线。
流程图:供应商接入流程
flowchart TD
A[商务签约完成] --> B[提交 API 文档和测试凭证]
B --> C[创建 supplier_onboarding]
C --> D[AI 生成适配器代码]
D --> E[Mock 测试
基于模拟数据]
E --> F{测试通过?}
F -->|否| G[AI 修复代码]
G --> E
F -->|是| H[集成测试
连接真实供应商测试环境]
H --> I{集成测试通过?}
I -->|否| J[生成诊断报告]
J --> K[通知人工介入]
K --> H
I -->|是| L[数据质量校验]
L --> M{质量达标?}
M -->|否| N[标记问题
部分上线]
N --> O
M -->|是| O[灰度发布 5%流量]
O --> P[监控灰度指标
响应时间/错误率/数据质量]
P --> Q{灰度正常?}
Q -->|否| R[自动回滚]
R --> H
Q -->|是| S[逐步扩大流量
10%→30%→50%→100%]
S --> T[正式上线]
T --> U[进入每日回归测试]
class F,I,M,Q decision
class A,T,U done
class R error
class G,J,K,N warning
class B,C,D,E,H,L,O,P,S process
classDef process fill:#1a2744,stroke:#58a6ff,stroke-width:1px,color:#c9d1d9
classDef decision fill:#3a2a1a,stroke:#f0883e,stroke-width:2px,color:#f0883e
classDef done fill:#1a3a2a,stroke:#3fb950,stroke-width:1px,color:#3fb950
classDef error fill:#3a1a1a,stroke:#f85149,stroke-width:2px,color:#f85149
classDef warning fill:#3a2a1a,stroke:#d29922,stroke-width:1px,color:#d29922
classDef skip fill:#21262d,stroke:#484f58,color:#8b949e
数据模型
CREATE TABLE supplier_onboarding (
id BIGSERIAL PRIMARY KEY,
supplier_id BIGINT REFERENCES suppliers(id),
status VARCHAR(32) DEFAULT 'pending',
-- pending/adapter_dev/mock_test/integration_test/staging/production/failed
api_doc_url VARCHAR(512),
test_credentials JSONB,
adapter_code TEXT,
test_results JSONB,
staging_config JSONB,
production_config JSONB,
health_score DECIMAL(5,2),
started_at TIMESTAMPTZ,
completed_at TIMESTAMPTZ,
notes TEXT
);
CREATE TABLE supplier_test_suite (
id BIGSERIAL PRIMARY KEY,
onboarding_id BIGINT REFERENCES supplier_onboarding(id),
test_type VARCHAR(32) NOT NULL, -- mock/integration/regression
test_name VARCHAR(128) NOT NULL,
status VARCHAR(16), -- passed/failed/skipped
duration_ms INT,
error_detail TEXT,
executed_at TIMESTAMPTZ DEFAULT now()
);
API 接口
| 方法 | 路径 | 说明 |
|---|---|---|
| POST | /api/suppliers/onboarding | 创建供应商接入任务 |
| PUT | /api/suppliers/onboarding/{id}/advance | 推进到下一阶段 |
| GET | /api/suppliers/onboarding/{id}/test-results | 获取测试结果 |
业务逻辑
创建 supplier_onboarding 记录后,状态机驱动整个流程。每个阶段有对应的自动化任务:adapter_dev 阶段根据 API 文档自动生成适配器骨架代码;mock_test 阶段运行 Mock 测试用例;integration_test 阶段对接真实供应商沙箱环境;staging 阶段小流量灰度验证;全部通过后进入 production。任何阶段失败进入 failed 状态,记录 notes 供人工排查。