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.6 KiB
1.6 KiB
一次性佣金修复:配置可落库 + 累计触发可累加 + 单测修复
Why
一次性佣金能力已引入配置字段与计算逻辑,但目前存在两类关键问题:
- 配置无法生效:你确认希望通过
ShopSeriesAllocation的创建/更新接口(B=1)直接配置一次性佣金并落库生效;否则会出现“接口看起来支持配置,但实际不生效”的问题。 - 累计触发无法累加:你确认累计规则为“每次购买都要累加,达到阈值就发放佣金”;如果不写回累计值,阈值永远达不到。
此外,相关单测目前编译失败,需要修复以保证回归可控。
What Changes
- 一次性佣金配置落库:
- 在
ShopSeriesAllocation创建/更新时写入一次性佣金相关字段 - 若类型为梯度(tiered),同步维护
tb_shop_series_one_time_commission_tier档位数据(更新时先清理再重建或做差量更新)
- 在
- 累计触发逻辑修复:
- 对“累计充值触发”场景,每次支付成功都写回累计金额
- 达到阈值的那次发放一次性佣金,并标记
FirstCommissionPaid防止重复发放
- 测试修复与补充:
- 修复
tests/unit/my_commission_service_test.go字段不匹配导致的编译失败 - 新增测试覆盖:配置落库与累计逻辑
- 修复
Impact
涉及模块(预期):
- 分配配置:
internal/service/shop_series_allocation/service.go、internal/store/postgres/shop_series_one_time_commission_tier_store.go - 佣金计算:
internal/service/commission_calculation/service.go - 测试:
tests/unit/my_commission_service_test.go及新增用例