test(distribution): 补齐分销全场景E2E与HTTP接口全链路集成测试
- 新增端到端测试场景: - 场景 1: 主站收号分站加价售卖与批次结算全链路 - 场景 2: 分站收号主站售卖、独立鉴权、大盘统计与提现全流程 - 场景 3: 三方模式跨站流转、专属支付通道自动路由与双站批次独立结算 - 场景 4: 分站自收自售、3天冷却期自动释放及幂等防护 - 场景 5: 结算后退款回冲金库钱包、掏空后透支扣减与仲裁风险隔离 - 场景 6: 一键开站、成员JWT鉴权、品牌个性化、三模解析与货架同步加价 - 新增 distribution/handler_integration_test.go:覆盖 30+ 分销 HTTP 接口(前台公开端点、分站管理员登录/信息端点、站长运营端点及总台管理端点) - 修复并对齐底层逻辑: - FindOrder & ListOrders:多参与方按 PartyID 准确隔离各站收益与提价统计 - SnapshotPaidOrderTx:规范多方模式下 PartyTypeSite 的 SiteID/PartyID - 增加 ErrInsufficientBalance 哨兵错误并在 handler 映射为 400
This commit is contained in:
@@ -787,6 +787,8 @@ func writeError(c *gin.Context, err error) {
|
||||
response.Error(c, http.StatusForbidden, "admin_disabled", "分销管理员账号已被禁用")
|
||||
case errors.Is(err, ErrInvalidAmount), errors.Is(err, ErrInvalidRate), errors.Is(err, ErrInvalidServiceUnit), errors.Is(err, ErrUnsupportedMode), errors.Is(err, ErrInvalidOrderKind), errors.Is(err, ErrInvalidPeriod), errors.Is(err, ErrBatchAlreadySettled), errors.Is(err, ErrSettlementBatchEmpty), errors.Is(err, ErrSettlementTotalMismatch):
|
||||
response.BadRequest(c, "分销规则参数不正确")
|
||||
case errors.Is(err, ErrInsufficientBalance):
|
||||
response.BadRequest(c, "可提现余额不足")
|
||||
case errors.Is(err, ErrSettlementBatchStale):
|
||||
response.BadRequest(c, "批次内订单发生退款变动或维权,该批次已失效,请作废后重新生成")
|
||||
case errors.Is(err, ErrInvalidSettlementHold):
|
||||
|
||||
Reference in New Issue
Block a user