fix: 统一佣金状态常量并修复佣金明细关联查询
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m33s

- 删除 model/commission.go 中与 constants 包冲突的旧常量(值=1/2)
- 所有服务层改用 constants.CommissionStatusReleased(值=3)写入和查询
- 数据库迁移:status 1→3(已发放),2→4(已失效)
- 修复佣金明细列表接口,通过 JOIN 关联返回 order_no、iccid、virtual_no、order_created_at
- 新增 seller_shop_id / seller_shop_name 销售来源字段
- 统计接口过滤条件从精确匹配改为排除无效(NOT IN 4,99)
- 更新 OpenAPI 文档及 commission-record-query spec
This commit is contained in:
2026-04-11 10:42:37 +08:00
parent d0989c66bb
commit 677d6239ce
17 changed files with 604 additions and 38 deletions

View File

@@ -49,7 +49,13 @@
#### Scenario: 响应包含关联信息
- **WHEN** 查询佣金记录列表
- **THEN** 每条记录包含:订单号、卡/设备信息、套餐名称
- **THEN** 每条记录包含:
- 佣金记录 ID、金额、状态、状态名称
- 订单号order_no、订单创建时间order_created_at
- ICCID当订单类型为单卡时
- 设备虚拟号(当订单类型为设备时)
- 销售来源店铺 ID 和名称seller_shop_id, seller_shop_name
- 佣金入账时间
---
@@ -100,3 +106,55 @@
#### Scenario: 默认最近30天
- **WHEN** 代理查询每日统计不指定日期范围
- **THEN** 系统返回最近 30 天的数据
---
## MODIFIED Requirements
### Requirement: 佣金状态定义
**原内容**
佣金记录状态为二态1=已入账2=已失效
**修改为**
佣金记录状态为四态:
- 1 = 已冻结:佣金已计算但暂不可提现
- 2 = 解冻中:满足解冻条件,正在等待发放
- 3 = 已发放:佣金已入账可提现
- 4 = 已失效:佣金核验失败或订单退款导致失效
#### Scenario: 差价佣金创建时状态
- **WHEN** 差价佣金计算完成并创建记录
- **THEN** 记录状态为 3已发放
#### Scenario: 链路断裂时状态
- **WHEN** 佣金链路断裂(上级代理未分配套餐)
- **THEN** 记录状态为 99待人工修正
#### Scenario: 订单退款时状态
- **WHEN** 关联订单发生退款
- **THEN** 佣金记录状态更新为 4已失效
---
### Requirement: 佣金状态常量一致性
系统 SHALL 使用统一的状态值和状态名称映射,确保佣金状态显示正确。
#### Scenario: 已发放状态正确显示
- **WHEN** 佣金记录 status = 3
- **THEN** 状态名称返回 "已发放"
#### Scenario: 已冻结状态正确显示
- **WHEN** 佣金记录 status = 1
- **THEN** 状态名称返回 "已冻结"
#### Scenario: 解冻中状态正确显示
- **WHEN** 佣金记录 status = 2
- **THEN** 状态名称返回 "解冻中"
#### Scenario: 已失效状态正确显示
- **WHEN** 佣金记录 status = 4
- **THEN** 状态名称返回 "已失效"