Files
huang 2b0f79be81
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 5m45s
归档一次性佣金配置落库与累计触发修复,同步规范文档到主 specs
- 归档 fix-one-time-commission-config-and-accumulation 到 archive/2026-01-29-*
- 同步 delta specs 到主规范(one-time-commission-trigger、commission-calculation)
- 新增累计触发逻辑文档和测试用例
- 修复一次性佣金配置落库和累计充值更新逻辑
2026-01-29 16:00:18 +08:00

31 lines
1.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 一次性佣金修复:配置可落库 + 累计触发可累加 + 单测修复
## Why
一次性佣金能力已引入配置字段与计算逻辑,但目前存在两类关键问题:
1. **配置无法生效**:你确认希望通过 `ShopSeriesAllocation` 的创建/更新接口B=1直接配置一次性佣金并落库生效否则会出现“接口看起来支持配置但实际不生效”的问题。
2. **累计触发无法累加**:你确认累计规则为“每次购买都要累加,达到阈值就发放佣金”;如果不写回累计值,阈值永远达不到。
此外,相关单测目前编译失败,需要修复以保证回归可控。
## 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` 及新增用例