All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 5m45s
- 归档 fix-one-time-commission-config-and-accumulation 到 archive/2026-01-29-* - 同步 delta specs 到主规范(one-time-commission-trigger、commission-calculation) - 新增累计触发逻辑文档和测试用例 - 修复一次性佣金配置落库和累计充值更新逻辑
1.7 KiB
1.7 KiB
一次性佣金修复 - 实现任务
1. 配置落库(ShopSeriesAllocation)
- 1.1 更新
internal/service/shop_series_allocation/service.go:在创建分配时处理EnableOneTimeCommission/OneTimeCommissionConfig并落库 - 1.2 更新
internal/service/shop_series_allocation/service.go:在更新分配时支持更新一次性佣金配置并落库 - 1.3 梯度配置:使用
ShopSeriesOneTimeCommissionTierStore在创建/更新时写入 tiers(更新时先清理再重建) - 1.4 参数校验:启用一次性佣金时必须提供配置;fixed 必须有 mode/value;tiered 必须有 tiers
2. 累计触发逻辑修复
- 2.1 更新
internal/service/commission_calculation/service.go:累计触发场景每次支付成功都写回累计金额 - 2.2 达到阈值时仅发放一次,发放后标记
FirstCommissionPaid=true
3. 测试修复与补充
- 3.1 修复
tests/unit/my_commission_service_test.go:将CommissionType调整为CommissionSource - 3.2 新增测试:一次性佣金配置落库(含 tiered tiers 落库)
- 3.3 新增测试:累计触发多次支付后达到阈值触发一次性佣金且不重复
- 3.4 确保 Service 层测试覆盖率 ≥ 90%(核心业务逻辑)
- 3.5 新增集成测试:完整的配置→支付→分佣发放流程(端到端验证)
4. 文档更新
- 4.1 更新 API 文档:
ShopSeriesAllocation创建/更新接口的一次性佣金参数说明 - 4.2 更新业务流程文档:累计触发逻辑流程图(如适用)
- 4.3 同步更新
docs/目录下的相关说明(如有专门的分佣文档)
5. 验证
- 5.1 运行
go test ./...确保通过