修正数据
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m55s

This commit is contained in:
2026-04-27 18:10:08 +08:00
parent bb33232b1b
commit fe4c545308
57 changed files with 4477 additions and 226 deletions

View File

@@ -0,0 +1,53 @@
## MODIFIED Requirements
### Requirement: 套餐历史列表查询
系统 SHALL 提供资产的全量套餐记录查询接口,包含历史和当前生效套餐。
**API 端点**: `GET /api/admin/assets/:asset_type/:id/packages`
**每条记录响应字段**:
- `package_usage_id`
- `package_name`
- `package_type`
- `master_usage_id`
- `real_total_mb`
- `real_used_mb`
- `virtual_total_mb`
- `virtual_used_mb`
- `reduction_pct`
- `activated_at`
- `expires_at`
- `status`
- `paid_amount`
**兼容规则**:
- 不再返回 `real_data_mb``virtual_data_mb``package_used_mb``package_remain_mb` 等旧展示字段
#### Scenario: 历史列表返回统一五字段
- **WHEN** 管理员调用 `GET /api/admin/assets/card/123/packages`
- **THEN** 每条套餐记录都返回统一五字段和 `reduction_pct`
#### Scenario: 无套餐历史时返回空数组
- **WHEN** 管理员查询一张从未购买套餐的卡
- **THEN** 系统返回空数组,不报错
### Requirement: 当前主套餐详情查询
系统 SHALL 提供查询资产当前生效主套餐的接口,用于展示主套餐详细信息。
**API 端点**: `GET /api/admin/assets/:asset_type/:id/current-package`
**查询条件**: `status = 1 AND master_usage_id IS NULL`
**响应字段**:
- 与套餐历史列表中的单条记录字段一致
- 不包含加油包汇总
- 无生效主套餐时返回 HTTP 200`data = null`
#### Scenario: 当前套餐只返回主套餐
- **WHEN** 管理员调用 `GET /api/admin/assets/card/123/current-package`,该卡存在 1 个生效主套餐和多个加油包
- **THEN** 系统只返回主套餐的统一五字段与 `reduction_pct`
#### Scenario: 无当前主套餐返回 200 + null
- **WHEN** 管理员查询没有生效中主套餐的资产
- **THEN** 系统返回 HTTP 200
- **AND** 响应体中的 `data = null`