Files
break 54c4ec7ba4
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 14m42s
fix(设备实名): 无当前卡时按绑定卡实名回退并初始化单槽当前卡
- 设备资产解析外层 real_name_status:存在当前使用卡时沿用该卡状态,无任何当前卡时任一有效绑定卡已实名即视为已实名
- 手工绑定与设备导入:设备最大槽位为 1 且有效绑定唯一时,在同一事务内将该绑定初始化为当前使用卡;多卡设备不推断
- 同步 asset-device、personal-customer 主 Spec;归档变更并附存量核对清单(75 条单槽唯一待修复绑定,其中 16 条已实名)
2026-09-18 17:49:12 +08:00

2.4 KiB
Raw Blame History

Why

C 端设备资产信息 GET /api/c/v1/asset/info 的外层 real_name_status 只取「当前使用卡」(is_current=true 的绑定),无当前卡即返回未实名。而 is_current 仅在 Gateway 观测成功后写入,导入与手工绑定创建时恒为 false。于是从未与 Gateway 建立有效观测的设备长期「无当前卡」,即使绑定卡已完成实名,对外仍显示未实名(生产确认:设备 19090 的绑定 36730 is_current=falsetb_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/deviceinternal/task(设备导入)。
  • 生产影响面(只读核对):有有效绑定的设备 19031 台,其中 639 台无当前卡639 台里 76 台存在已实名绑定卡16 台为单槽单卡),修复后其 C 端设备实名展示由未实名变为已实名。
  • 不涉及 Schema 改动、迁移、外部接口契约、金额、库存与状态机。