All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 14m42s
- 设备资产解析外层 real_name_status:存在当前使用卡时沿用该卡状态,无任何当前卡时任一有效绑定卡已实名即视为已实名 - 手工绑定与设备导入:设备最大槽位为 1 且有效绑定唯一时,在同一事务内将该绑定初始化为当前使用卡;多卡设备不推断 - 同步 asset-device、personal-customer 主 Spec;归档变更并附存量核对清单(75 条单槽唯一待修复绑定,其中 16 条已实名)
29 lines
2.4 KiB
Markdown
29 lines
2.4 KiB
Markdown
## Why
|
||
|
||
C 端设备资产信息 `GET /api/c/v1/asset/info` 的外层 `real_name_status` 只取「当前使用卡」(`is_current=true` 的绑定),无当前卡即返回未实名。而 `is_current` 仅在 Gateway 观测成功后写入,导入与手工绑定创建时恒为 false。于是从未与 Gateway 建立有效观测的设备长期「无当前卡」,即使绑定卡已完成实名,对外仍显示未实名(生产确认:设备 19090 的绑定 36730 `is_current=false`、`tb_device.last_gateway_sync_at` 为空,卡 131609 `real_name_status=1`)。同口径下生产现有 76 台设备受此影响,且设备卡列表中的「当前卡」标识同样为空。
|
||
|
||
## What Changes
|
||
|
||
- 设备资产信息外层 `real_name_status`:存在 `is_current=true` 的有效绑定时沿用该卡状态(不推翻既有当前卡语义);设备没有任何当前卡时,回退为「任一有效绑定卡已实名即视为设备已实名」,不再一律返回未实名。
|
||
- 设备绑定卡创建:当设备最大槽位为 1 且创建后仅存在一条有效绑定时,将该绑定初始化为当前卡;多卡设备的当前卡判定仍由 Gateway 观测与切卡流程写入,不由绑定时猜测。
|
||
- 提供只读核对口径与受控人工修复步骤,用于按上述规则修复存量单槽单卡设备的当前卡标识;生产写入由维护者按生产运行说明执行。
|
||
- 不改变卡列表的逐卡实名返回、实名链接目标卡选择、设备激活状态判定,以及管理端设备列表既有的「任一有效绑定卡已实名」筛选口径。
|
||
- 不改变有当前卡时的既有判定结果。
|
||
|
||
## Capabilities
|
||
|
||
### New Capabilities
|
||
|
||
- 无。
|
||
|
||
### Modified Capabilities
|
||
|
||
- `personal-customer`: 设备资产信息在没有当前使用卡时的实名状态判定。
|
||
- `asset-device`: 单槽单卡设备绑定时的当前卡标识初始化,以及存量当前卡标识缺失的核对与受控修复口径。
|
||
|
||
## Impact
|
||
|
||
- 影响 `internal/service/asset`(设备资产解析的外层实名判定)与设备绑定创建路径 `internal/service/device`、`internal/task`(设备导入)。
|
||
- 生产影响面(只读核对):有有效绑定的设备 19031 台,其中 639 台无当前卡;639 台里 76 台存在已实名绑定卡(16 台为单槽单卡),修复后其 C 端设备实名展示由未实名变为已实名。
|
||
- 不涉及 Schema 改动、迁移、外部接口契约、金额、库存与状态机。
|