diff --git a/docs/reports/implementation/2026-05-07-project-special-check-graph-atlas-frontend-record.md b/docs/reports/implementation/2026-05-07-project-special-check-graph-atlas-frontend-record.md
new file mode 100644
index 00000000..d838dc94
--- /dev/null
+++ b/docs/reports/implementation/2026-05-07-project-special-check-graph-atlas-frontend-record.md
@@ -0,0 +1,36 @@
+# 项目详情专项排查图谱嵌入前端实施记录
+
+## 修改内容
+
+- 新增 `GraphAtlasSection.vue`,实现共用证件号输入、资金图谱/关系图谱页签、证件号标准化、md5 加密和 iframe 链接拼接。
+- 调整 `SpecialCheck.vue`,将原“图谱外链展示”占位卡片替换为图谱展示组件。
+- 调整专项排查空数据展示结构,资产负债核查无数据时仍展示图谱模块,保证图谱入口属于专项排查页面本身。
+
+## 影响范围
+
+- 仅影响项目详情页“专项排查”中的图谱展示区域。
+- 不涉及后端接口、数据库、权限、菜单和项目详情顶部一级导航。
+- 不保存证件号或 md5 结果,不新增身份证格式校验,不为外部图谱服务增加兜底或降级逻辑。
+
+## 验证情况
+
+- `cd ruoyi-ui && nvm use && npm run build:prod`:构建通过;仅出现既有包体积 warning。
+- 真实项目详情页专项排查浏览器验证:
+ - 验证地址:`http://localhost:8081/ccdiProject/detail/90338?tab=special`
+ - 验证项目:`验收测试-20260423-项目P0-01`
+ - 资产负债核查有数据时,图谱模块展示在“员工家庭资产负债专项核查”和“拓展查询”之间。
+ - 未输入证件号时点击“查询图谱”:提示“请输入证件号”,未生成 iframe。
+ - 未输入证件号时在输入框回车:提示“请输入证件号”,未生成 iframe。
+ - 输入 `110101199003074211` 后点击“查询图谱”,资金图谱 iframe `src` 包含 `id=ccdi_lanxi_trans`、`atlasToken=F4BBA291A285858BAF4526C6EC312388`、`"vId":"idno_node/9b1b5eba4a26c9a68ff1ca06f40bee1b"`。
+ - 输入 ` 33078219900101123x ` 后回车,资金图谱 iframe `src` 包含 `"vId":"idno_node/233c8519f86a57b1f00ec88a32152ce3"`,确认已执行 `trim + x 转 X + md5`。
+ - 切换到“关系图谱”后,iframe `src` 包含 `id=lanxitest`、`atlasToken=2C914E5E1FBFBC4AD15163E0AB03B800`、`"vId":"rel_node/233c8519f86a57b1f00ec88a32152ce3"`。
+- 真实项目详情页专项排查空数据浏览器验证:
+ - 验证地址:`http://localhost:8081/ccdiProject/detail/90336?tab=special`
+ - 验证项目:`456`
+ - 页面展示“暂无员工家庭资产负债核查数据”后,仍展示“图谱展示”模块和证件号输入框,并位于“拓展查询”上方。
+- 当前外部图谱内容打不开属于预期,本次验收只检查 iframe 链接正确。
+- 测试结束后已关闭本轮启动的前端 dev server,`8081` 端口无监听进程。
+
+## 遗留事项
+
+- 无。
diff --git a/ruoyi-ui/src/views/ccdiProject/components/detail/GraphAtlasSection.vue b/ruoyi-ui/src/views/ccdiProject/components/detail/GraphAtlasSection.vue
new file mode 100644
index 00000000..08324d18
--- /dev/null
+++ b/ruoyi-ui/src/views/ccdiProject/components/detail/GraphAtlasSection.vue
@@ -0,0 +1,192 @@
+
+