fix(设备实名): 无当前卡时按绑定卡实名回退并初始化单槽当前卡
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 14m42s

- 设备资产解析外层 real_name_status:存在当前使用卡时沿用该卡状态,无任何当前卡时任一有效绑定卡已实名即视为已实名
- 手工绑定与设备导入:设备最大槽位为 1 且有效绑定唯一时,在同一事务内将该绑定初始化为当前使用卡;多卡设备不推断
- 同步 asset-device、personal-customer 主 Spec;归档变更并附存量核对清单(75 条单槽唯一待修复绑定,其中 16 条已实名)
This commit is contained in:
2026-09-18 17:48:17 +08:00
parent d24e777a4c
commit 54c4ec7ba4
12 changed files with 465 additions and 4 deletions

View File

@@ -53,6 +53,35 @@
- **WHEN** 客户请求 `GET /api/c/v1/asset/info`
- **THEN** 响应的当前套餐摘要保持无套餐零值
### Requirement: 缺少当前使用卡时的设备实名判定
系统 SHALL 在个人客户查询设备资产 `GET /api/c/v1/asset/info` 时按下述规则返回外层 `real_name_status`:存在有效绑定卡的当前使用标识时,返回该卡的实名状态;不存在任何当前使用卡时,只要该设备存在任一已实名(`real_name_status=1`的有效绑定卡SHALL 返回已实名,否则返回未实名。返回的 `real_name_status_name` SHALL 与 `real_name_status` 保持一致。卡列表中的逐卡实名状态 MUST 保持按卡返回,不受本判定影响。该判定 MUST NOT 因运营商实时接口调用失败或超时而改变。
#### Scenario: 无当前使用卡但绑定卡已实名
- **GIVEN** 设备存在有效绑定卡且其中至少一张已实名,且该设备没有任何 `is_current=true` 的有效绑定卡
- **WHEN** 已认证个人客户请求该设备的 `GET /api/c/v1/asset/info`
- **THEN** 响应外层 `real_name_status` 返回 `1``real_name_status_name` 为已实名
- **AND** 卡列表中该已实名卡仍按其自身实名状态返回
#### Scenario: 无当前使用卡且绑定卡均未实名
- **GIVEN** 设备存在有效绑定卡且全部未实名,且该设备没有任何 `is_current=true` 的有效绑定卡
- **WHEN** 已认证个人客户请求该设备的 `GET /api/c/v1/asset/info`
- **THEN** 响应外层 `real_name_status` 返回 `0``real_name_status_name` 为未实名
#### Scenario: 有当前使用卡时沿用该卡状态
- **GIVEN** 设备存在一张 `is_current=true` 的未实名绑定卡,同时存在另一张已实名绑定卡
- **WHEN** 已认证个人客户请求该设备的 `GET /api/c/v1/asset/info`
- **THEN** 响应外层 `real_name_status` 返回该当前使用卡的未实名状态
#### Scenario: 运营商实时查询失败不改变实名判定
- **GIVEN** 设备的运营商实时状态查询失败或超时
- **WHEN** 已认证个人客户请求该设备的 `GET /api/c/v1/asset/info`
- **THEN** 响应仍按绑定卡事实返回外层实名状态,不因实时查询失败而返回未实名
## 可达操作索引
本节只用于入口导航,不是行为 Requirement业务义务以上述 Requirements 为准。