# 外部人员详情原因快照后端实施计划

## 背景

外部人员「查看详情」的对象异常明细由前端命中标签组装，但命中标签接口未返回 `reasonDetail`，导致对象卡片只能展示模型名和规则名，缺少和员工详情一致的异常原因快照。

## 实施内容

- 在 `CcdiProjectRiskHitTagVO` 增加 `reasonDetail` 字段。
- 在外部人员风险来源 SQL 中透传 `ccdi_bank_statement_tag_result.reason_detail`。
- 在 `selectExternalRiskHitTagsByScope` 中按模型和规则聚合命中标签，并优先返回对象级原因快照；对象级为空时返回流水级原因快照。
- 同步在员工命中标签查询中映射 JSON 内的 `reasonDetail`，保持 VO 字段语义一致。

## 影响范围

- 外部人员预警列表详情、命中模型外部人员详情的 `riskPointTagList/hitTagList` 响应字段增加 `reasonDetail`。
- 不改变原有筛选、排序、风险等级和模型统计逻辑。

## 验证

- 执行项目风险模型人员与对象明细相关 Mapper 测试。
- 执行后端模块编译或打包，确认 VO 与 XML 映射无编译和解析问题。
