All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m55s
1.8 KiB
1.8 KiB
MODIFIED Requirements
Requirement: 套餐历史列表查询
系统 SHALL 提供资产的全量套餐记录查询接口,包含历史和当前生效套餐。
API 端点: GET /api/admin/assets/:asset_type/:id/packages
每条记录响应字段:
package_usage_idpackage_namepackage_typemaster_usage_idreal_total_mbreal_used_mbvirtual_total_mbvirtual_used_mbreduction_pctactivated_atexpires_atstatuspaid_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