# 公文知识图谱前端页面与交互设计方案（融合版）

## 1. 文档目标

本文档用于收敛本系统的前端信息架构、页面布局、核心交互流程与跨场景联动方式，覆盖以下能力场景：

- 文档检索
- 文档详情与图谱关系查看
- 图谱增强问答
- Research 专题研究
- 事项知识卡与办事问答
- 政策主题地图
- 治理分析
- 图谱探索、管理后台、转换记录与 Mock OA 支撑链路

本文档不是视觉稿，而是一版可直接指导产品设计、前端实现和后端联调的页面与交互方案。

## 2. 设计输入

本文档融合了以下信息来源：

1. README 中已经落地的产品模块与技术架构。
2. `docs/PRD.md` 中的检索、Research、图谱、管理场景。
3. `docs/permission-design.md` 中的版本与 `content_hash` 去重模型。
4. `prd/graph-schema-optimization.md` 中的图谱场景规划：推荐、依据链、修订史、对话增强问答、事项知识卡、主题地图、治理分析、专题研究。
5. `prd/vectorized-stirring-corbato-phase1-implement.md` 中的 Matter 接口收敛方案，特别是 `matter_id` 作为稳定路由标识。
6. 现有前端路由与页面实现：`/search`、`/qa`、`/research`、`/doc/:id`、`/matters`、`/matters/:matterId`、`/guides`、`/guides/:profileId`、`/guides/by-doc/:docId`、`/graph`、`/admin`、`/admin/graph`、`/admin/convert-logs`、`/mock`。
7. 你提供的外部方案中值得保留的结构：顶部一级导航、智能问答、事项页、主题地图、治理分析页，以及更完整的“加入 Research”弹窗与跨页沉淀逻辑。

## 3. 设计目标与原则

### 3.1 总体目标

建设一个“检索 + 阅读 + 关系发现 + 研究分析 + 办事查询”一体化前端，而不是多个割裂的功能页。

### 3.2 设计原则

1. 搜索是入口，研究是深化。
2. 文档是基础对象，主题和事项是结构化组织视角。
3. 图谱是增强层，不强迫用户理解图数据库。
4. Research 是工作台，不是孤立页面。
5. 先可用，再高级，先把“找得到、看得懂、能继续研究”做实。
6. 权限前置，界面不泄露无权限文档痕迹。
7. 版本感知，搜索按内容聚合，查看和研究按具体版本落地。
8. 证据优先，任何结论都要能回到文档、版本、事项、主题或图谱链路。

## 4. 现状与目标边界

### 4.1 当前已落地页面

| 页面 | 路由 | 状态 | 说明 |
|------|------|------|------|
| 文档检索页 | `/search` | 已有 | 已具备搜索、筛选、聚合统计、分页 |
| 文档详情页 | `/doc/:id` | 已有 | 已具备原文/摘要/关联/图谱 Tab |
| 智能问答页 | `/qa` | 已有 | 已具备 SSE 流式输出、引用文档、Guide 证据标签 |
| Research 工作台 | `/research` | 已有 | 已具备 SSE 流式输出、引用文档、迷你图谱 |
| 事项查询页 | `/matters`、`/matters/:matterId` | 已有 | 已具备事项搜索、事项知识卡、办理要求查看 |
| 办事指南页 | `/guides`、`/guides/:profileId`、`/guides/by-doc/:docId` | 已有 | 已具备 Guide 列表、详情、按文档回退定位 |
| 图谱探索页 | `/graph` | 已有 | 已具备实体搜索、节点详情、关联文档 |
| 管理后台 | `/admin` | 已有 | 已具备统计卡片、服务状态、入库日志 |
| 图谱管理 | `/admin/graph` | 已有 | 现有系统管理能力 |
| 转换记录 | `/admin/convert-logs` | 已有 | Java 转换日志查看 |
| Mock OA 测试台 | `/mock` | 已有 | 登录、令牌、上传、监控、验证 |

### 4.2 建议新增页面

| 页面 | 建议路由 | 状态 | 后端依赖 |
|------|----------|------|----------|
| 主题地图页 | `/topics`、`/topics/:themeName` | 规划新增 | `GET /api/v1/topics*` |
| 治理分析页 | `/analytics` | 规划新增 | `GET /api/v1/analytics*` |

### 4.3 核心对象主轴

系统应围绕 4 类核心对象组织页面：

- `Document`：文件
- `Matter`：事项
- `PolicyTheme`：主题
- `Research Session`：研究工作台

图谱探索页 `/graph` 保留为专业增强页，不要求所有用户都直接理解节点与边。

## 5. 总体信息架构

### 5.1 导航结构建议

建议采用“顶部一级导航 + 左侧局部导航 + 顶部 Tab”的融合结构。

目标态顶部一级导航：

- 文档检索
- 智能问答
- Research
- 事项查询
- 办事指南
- 主题地图
- 治理分析

左侧局部导航建议保留当前系统的两组心智：

- 文档服务
  - 文档检索
  - 智能问答
  - Research
  - 事项查询
   - 办事指南
  - 主题地图
  - 知识图谱探索
- 系统管理
  - 治理分析
  - 管理后台
  - 图谱管理
  - 转换记录
  - Mock OA 测试台

首版不必推翻当前 Sider 结构，可以先在现有 Shell 上增加业务入口和路由别名，逐步过渡到目标态。

### 5.2 全局框架

所有页面共用统一 Shell：

1. Header
   - 系统名称
   - 全局搜索入口
   - 当前用户信息
   - 系统通知/状态入口
   - Research 参考资料篮入口
2. Sider
   - 局部功能导航
3. Tab 栏
   - 支持多任务切换
4. 主内容区
   - 当前工作页面

### 5.3 全局搜索

Header 中的全局搜索承担“从任意页面快速回到检索”的职责：

1. 在任意页面输入关键词后统一跳转到 `/search`。
2. 自动带入查询词和上一次筛选上下文。
3. 如果用户从 Research、详情、事项、主题页发起搜索，原页面保留在 Tab 中，不打断上下文。

## 6. 跨场景核心能力：Research 参考资料篮

这是整套方案中最关键的联动能力，用来满足“文档检索页与文档详情页中的文档，能够随时导入 Research 作为参考资料”。

### 6.1 能力定义

新增全局概念“Research 参考资料篮”，用于承接用户从搜索、详情、问答、事项、主题、图谱等页面主动加入的研究素材。它与 Research 自动生成的“引用文档”不同：

- 参考资料：用户主动挑选，带有任务意图。
- 引用文档：系统生成答案或报告时自动使用并标注的证据。

### 6.2 支持的资料类型

资料篮不应只支持文档，应支持以下 5 类对象：

- `document`：整篇文档
- `snippet`：文档片段或摘要段落
- `answer`：一轮问答结果
- `matter`：事项知识卡
- `theme`：主题对象

### 6.3 建议字段

| 字段 | 说明 |
|------|------|
| `item_type` | document / snippet / answer / matter / theme |
| `doc_id` | 具体文档版本 ID，可空 |
| `content_hash` | 内容去重标识，可空 |
| `matter_id` | 事项 ID，可空 |
| `theme_name` | 主题名，可空 |
| `title` | 展示标题 |
| `doc_code` | 文号/文件编码，可空 |
| `knowledge_category` | 知识分类 |
| `selected_from` | search / detail / qa / graph / matter / topic / admin / mock |
| `importance` | core / reference |
| `note` | 用户备注 |
| `snippet` | 片段内容，可空 |
| `added_at` | 导入时间 |

### 6.4 全局入口与承载形式

1. Header 右侧增加“Research 参考资料篮”按钮，显示当前数量。
2. 点击后打开 Drawer，展示已选资料。
3. Drawer 底部提供两个主动作：
   - `导入到当前 Research`
   - `新建 Research 并导入`
4. 在 `/research` 页面中，资料篮升级为常驻右侧 Tab 或侧栏。

### 6.5 导入交互

“加入 Research”建议统一弹出 `ImportToResearchDialog`，而不是不同页面各写一套行为。弹窗字段建议包括：

1. 导入目标
   - 当前 Research
   - 已有 Research
   - 新建 Research
2. 参考级别
   - 核心参考
   - 一般参考
3. 用户备注
4. 附带策略
   - 同时导入上游依据链
   - 同时导入相关事项
   - 仅导入当前对象

### 6.6 导入反馈

所有页面的反馈保持一致：

1. Toast：`已加入 Research 参考资料篮`
2. 次级按钮：`前往 Research`
3. 若重复加入同一对象，提示 `该资料已存在`
4. 资料篮计数即时更新

## 7. 页面总览

| 页面 | 主要目标 | 核心对象 | 对应后端能力 |
|------|----------|----------|-------------|
| 文档检索页 | 搜索、筛选、浏览文档，导入 Research | Document | OpenSearch 检索 + 聚合 |
| 文档详情页 | 阅读文档、查看依据链/修订史/同主题推荐 | Document | 文档详情 + Phase 0 图谱查询 |
| 智能问答页 | 图谱增强问答与引用沉淀 | Document / Matter / Theme | RAG + Graph Query Planner |
| Research 工作台 | 汇集资料、生成专题研究结果 | Research Session | Research SSE / Topic Research |
| 事项查询页 | 查看事项知识卡与办理要求骨架 | Matter | Phase 1 Matter API |
| 办事指南页 | 核对收费、窗口、预约、快递、咨询、流程等办理细节 | Service Guide | Guide Index / Service Guide API |
| 主题地图页 | 按主题导航文件与事项 | PolicyTheme | Topics API |
| 治理分析页 | 做数据质量与治理洞察 | Document / Theme / Org | Analytics API |
| 知识图谱探索页 | 专业图谱浏览与发现 | Graph Node | Graph Explorer API |
| 管理后台 | 看系统状态与日志 | System / Document | Admin API |

## 8. 页面设计

## 8.1 文档检索页 `/search`

### 页面目标

支持用户：

- 搜索文档
- 按分类、主题、部门、地区、状态筛选
- 快速查看摘要与元信息
- 进入详情页
- 选中文档并导入 Research

### 页面布局

建议采用三栏布局：

1. 左侧：检索过滤区
2. 中间：结果列表区
3. 右侧：选中文档操作区 / Research 暂存区

### 左侧过滤区设计

基础条件：

- 关键词输入框
- 检索按钮
- 高级搜索展开按钮

高级过滤项：

- `knowledge_category`
- `doc_type`
- `status`
- `Organization`
- `Region`
- `PolicyTheme`
- 发布时间范围
- 是否仅看现行有效
- 是否排除占位文档

说明：现阶段前端已实现的筛选项较少，可以先保留当前可用项，同时在 UI 结构上预留知识分类、状态、地域、主题等过滤位。

### 中间结果列表设计

每条结果建议展示：

- 标题
- 发文字号或文号
- 发布日期
- 发布机构
- 文种
- 状态
- 知识分类
- 主题标签，最多 2 到 3 个
- 摘要片段
- `同内容 N 个版本`

每条结果的操作按钮：

- 查看详情
- 加入 Research
- 复制引用
- 查看关系
- 查看版本

### 右侧 Research 暂存区设计

区域名称建议采用 `Research 参考资料篮`。

主要功能：

- 显示当前已选中的文档
- 支持多选加入
- 支持移除
- 支持导入到已有 Research
- 支持新建 Research 并导入
- 显示已选文档数量

### 检索页到 Research 的关键交互

方式 A：加入资料篮，再统一导入

1. 在检索结果中点击 `加入 Research`
2. 文档进入右侧资料篮
3. 用户在右侧点击：
   - `导入到当前 Research`
   - `新建 Research 并导入`

方式 B：直接导入

1. 在文档卡片点击 `加入 Research`
2. 弹出对话框：
   - 选择已有 Research
   - 新建 Research 名称
   - 设为核心参考 / 普通参考
   - 添加备注

### 批量操作

列表左侧支持多选 checkbox，顶部操作条出现：

- 批量加入 Research
- 批量导出
- 批量收藏，可选

### 空状态与提示

无结果时显示：

- 无匹配文档
- 推荐主题关键词
- 推荐放宽过滤条件
- 推荐切换到智能问答尝试自然语言提问

## 8.2 文档详情页 `/doc/:id`

### 页面目标

支持用户：

- 阅读文档内容
- 查看元数据
- 查看依据链、修订史、同主题推荐、相关事项
- 将该文档导入 Research
- 从文档出发继续提问

### 页面布局建议

首版可沿用当前 `页头 + Tabs` 结构，目标态建议增强为“两栏布局”：

1. 左侧：正文区
2. 右侧：结构化信息与图谱增强区

### 左侧正文区

展示内容：

- 标题
- 文号
- 发布日期
- 发布机构
- 文种
- 状态
- 知识分类
- 正文
- 附件，如有

正文增强：

- 命中关键词高亮
- 条款锚点导航，Phase 2 后
- 支持选中文本后 `导入选中文段`

### 右侧结构化卡片

建议拆成 5 张卡：

1. 文档概览
   - 主题
   - 地区
   - 状态
   - 是否现行有效
   - 文档摘要
2. 依据链
   - 上位依据文件列表
   - 查看完整依据链
   - 对应 `GET /api/v1/graph/document/{doc_id}/policy-chain`
3. 修订/废止历史
   - 对应 `GET /api/v1/graph/document/{doc_id}/revision-history`
4. 同主题 / 同机构 / 同地域推荐
   - 对应 `GET /api/v1/graph/document/{doc_id}/recommendations`
   - 同主题清单可用 `GET /api/v1/graph/document/{doc_id}/same-theme`
5. 操作区
   - 加入 Research
   - 问这个文档
   - 复制引用
   - 下载原文

### 文档详情页到 Research 的交互

主按钮：`加入 Research`

弹窗内容：

- 选择导入目标：当前 / 已有 / 新建 Research
- 选择参考级别：核心参考 / 一般参考
- 备注输入框
- 是否同时加入依据链上游文件
- 是否同时加入关联事项

导入后反馈：

- Toast：`已加入 Research：某某专题`
- 按钮状态变成 `已加入`
- 支持 `前往 Research 查看`

### 版本与占位文档

1. 文档头展示 `同内容 N 个版本` 标签。
2. 点击打开版本 Drawer，调用 `GET /api/v1/document/versions/{content_hash}`。
3. 在依据链中出现占位文档时，显式标注 `占位文档，仅识别到文号，原文未入库`。

## 8.3 智能问答页 `/qa`

### 页面目标

支持用户提出自然语言问题，系统结合 RAG 与图谱能力回答，同时把高价值回答和引用沉淀进 Research。

### 页面布局

建议采用三栏工作台：

1. 左侧：对话列表 / 历史会话
2. 中间：聊天区
3. 右侧：图谱上下文 / 参考文档 / 追问建议

### 回答结构建议

每条回答分块展示：

- 结论
- 依据文件
- 相关事项
- 图谱关系提示
- 推荐继续追问

若命中图谱规划器，显示 `图谱增强` 标签。

### 后端处理约束

遵循图谱优化 PRD 中的原则：

1. 高频问题优先规则匹配。
2. 未命中时由 LLM 做意图分类。
3. 图谱查询失败时自动回退普通 RAG。
4. 图谱结果为空时不阻断回答。

### 问答页与 Research 联动

每个引用文档卡片旁提供：

- 加入 Research
- 查看文档详情

在整轮回答下方提供：

- `将本轮回答及引用资料加入 Research`

加入内容包括：

- 用户问题
- AI 回答摘要
- 引用文档列表
- 图谱命中摘要

## 8.4 Research 工作台 `/research`

### 页面目标

支持用户围绕主题、事项或问题做专题研究，管理参考资料，并生成研究结论。

### 页面布局

建议采用三栏布局：

1. 左侧：Research 列表
2. 中间：研究主工作区
3. 右侧：参考资料区 / 研究设置区

### 左侧 Research 列表

显示：

- Research 名称
- 创建时间
- 参考资料数
- 最后更新时间
- 状态：草稿 / 生成中 / 已完成

支持：

- 新建
- 重命名
- 删除
- 归档，可选

### 中间研究主工作区

建议分为 4 个模块：

1. 研究主题与问题
2. 研究报告输出区
3. 引用依据
4. 编辑与再生成

第一版报告结构建议包括：

- 专题概述
- 核心文件清单
- 时间演进轨迹
- 依据链梳理
- 相关事项概览

### 右侧参考资料区

显示当前 Research 已导入资料：

- 文档标题或对象标题
- 来源：搜索导入 / 详情导入 / 问答导入 / 主题导入 / 事项导入 / 手动添加
- 参考级别
- 备注
- 删除按钮

支持操作：

- 调整优先级
- 设为核心参考
- 添加备注
- 查看原文
- 从资料发起问答

### Research 新建方式

支持 5 种入口：

1. 检索页导入文档后新建
2. 文档详情页直接新建
3. 智能问答页把本轮问答加入
4. 事项页从事项直接发起
5. 主题地图页从主题直接发起

### 输入范围约束

结合图谱优化 PRD，Research 专题研究首版建议优先支持已有 `PolicyTheme` 和已有 `Matter` 作为输入对象。自由文本专题仍保留，但在 UI 中标记为“通用研究模式”，避免与图谱结构化专题混淆。

## 8.5 事项查询页 `/matters`、`/matters/:matterId`

### 页面目标

围绕事项提供结构化知识卡和办事问答入口，解决“办什么事、适用谁、依据什么文件”的定位问题。

### 路由与主键要求

事项详情前端必须使用 `matter_id` 作为稳定路由标识，不再用名称拼接路径。这一点要与后端保持一致：

- `GET /api/v1/graph/matters?query=...`
- `GET /api/v1/graph/matters/{matter_id}`
- `GET /api/v1/graph/matters/{matter_id}/requirements`

### 页面布局

1. 左侧：事项搜索与列表
2. 右侧：事项知识卡详情

### 事项知识卡结构

展示：

- 事项名称
- 事项类型
- 状态
- 适用对象
- 办理部门
- 适用地域
- 办理条件
- 所需材料
- 办理时限
- 依据文件

### 与办事指南页的边界

- 事项页面向“事项语义层”，聚焦事项本身的核心知识卡，不承载所有办理细节。
- 当用户已经定位到事项后，如需进一步核对收费、窗口、预约、快递、咨询电话、流程步骤等操作细节，应进入关联办事指南。
- 推荐交互路径为：`事项查询 -> 事项详情 -> 查看关联办事指南 -> 办事指南详情`。

### 操作按钮

- 问这个事项
- 加入 Research
- 查看依据文件
- 导出办理清单

### 与 Research 联动

点击 `加入 Research` 时支持：

- 将事项卡本身加入 Research
- 同时加入该事项的依据文件
- 可选择仅加入核心文件

## 8.6 办事指南页 `/guides`、`/guides/:profileId`、`/guides/by-doc/:docId`

### 页面目标

围绕标准办事指南提供结构化细节核对入口，解决“具体怎么办、在哪办、多久办、多少钱、能否预约或快递”的操作问题。

### 路由与主键要求

- Guide 详情优先使用 `profile_id` 作为稳定路由标识。
- 当外部入口只有文档 ID 时，允许使用 `/guides/by-doc/:docId` 作为回退定位入口。
- 对应后端接口：
   - `GET /api/v1/service-guides`
   - `GET /api/v1/service-guides/by-matter/{matter_id}`
   - `GET /api/v1/service-guides/by-doc/{doc_id}`
   - `GET /api/v1/service-guides/{profile_id}`

### 页面布局

1. 列表页：顶部筛选区 + 中部结果列表 + 底部分页
2. 详情页：页头摘要 + 结构化分组内容

### 列表页展示重点

- 事项名称
- 实施编码
- 办理机构
- 适用地区
- 常用叫法
- 是否支持快递
- 是否支持预约
- 是否待复核

### 详情页结构建议

- 基本信息：事项名、版本、实施主体、适用对象
- 办理方式：线上深度、是否必须现场、是否支持快递、是否支持预约
- 申请材料
- 收费项目
- 办理时限
- 办理流程
- 办理窗口
- 咨询与投诉方式
- 依据文件与原文入口

### 与事项页的关系

- 事项页负责“先定位对象”，办事指南页负责“再核对细节”。
- 一个事项可以关联 0 到多份办事指南；办事指南是该事项在具体指南文档中的结构化落地版本。
- 当用户问题是“建设用地审批是什么、有哪些依据、适用于谁”，优先进入事项页；当问题是“建设用地审批收费多少、去哪个窗口、能否快递”，优先进入办事指南页。

### 与 Research / QA 联动

- 支持 `问这个指南`，把当前 Guide 作为 Guide 证据源带入 QA。
- 支持 `加入 Research`，可将当前 Guide 详情或对应原文一起导入。
- 引用路由优先跳转 `/guides/:profileId`，缺少 `profile_id` 时回退 `/guides/by-doc/:docId`。

## 8.7 主题地图页 `/topics`、`/topics/:themeName`

### 页面目标

提供按主题组织知识的导航视图，承接 PolicyTheme → Matter → Document 的结构化浏览。

### 页面布局

1. 左侧：主题树 / 主题列表
2. 中间：主题详情
3. 右侧：相关事项 / 文件 / 时间线

### 中间主题详情展示

- 主题名称
- 主题说明
- 涉及文件数
- 最近更新时间
- 涉及事项数
- 核心部门，可选

下方 Tab：

- 相关事项
- 核心文件
- 时间线
- 研究入口

### 主题页到 Research 的交互

主按钮：`基于本主题发起 Research`

弹窗字段：

- Research 名称，默认填充当前主题
- 自动加入核心文件
- 是否加入相关事项
- 选择研究深度：标准 / 深度

## 8.8 治理分析页 `/analytics`

### 页面目标

服务内部知识治理、数据质量管理和制度分析。

### 页面布局

建议采用 dashboard 风格：

1. 顶部：统计卡片
2. 中部：分析模块
3. 底部：问题明细表

### 顶部统计卡片

- 文档总数
- 有效文件数
- 已废止文件数
- 主题数
- 事项数
- 占位文档数

### 中部分析模块

- 失效引用检测
- 孤立文件检测
- 依据链覆盖率
- 主题时间线
- 部门发文统计

### 治理分析页交互

每条问题记录支持：

- 打开文档详情
- 查看被引用的失效文件
- 发起智能问答
- 发起 Research
- 标记为待核查，可选

建议对接的后端接口：

- `GET /api/v1/analytics/invalid-references`
- `GET /api/v1/analytics/theme-timeline/{name}`
- `GET /api/v1/analytics/org/{name}`
- `GET /api/v1/analytics/basis-coverage`
- `GET /api/v1/analytics/orphan-documents`

## 8.9 知识图谱探索页 `/graph`

### 页面目标

这是专业增强页，服务进阶用户从实体和关系角度理解文档网络，并把图谱发现送回详情、问答和 Research。

### 页面布局

1. 左侧：实体搜索、类型过滤、节点详情、关联文档
2. 右侧：G6 图谱画布与工具栏

### 关键交互

1. 选中 Document 节点后，提供 `查看文档`、`加入 Research`。
2. 选中非 Document 节点时，关联文档列表支持 `加入 Research`。
3. 从图谱跳到详情、问答、Research 时，资料篮状态保持不丢。

## 8.10 管理后台、转换记录与 Mock OA

这三类页面继续保留为支撑链路页面，但都应接入 Research 联动：

1. 管理后台中的入库日志可打开详情或直接发起 Research 验证。
2. 转换记录若能映射到文档，应支持 `查看文档`、`搜索同内容`。
3. Mock OA 上传成功后，反馈区建议提供：
   - 查看文档详情
   - 去搜索验证
   - 导入 Research 验证研究链路

## 9. 核心跨页面交互设计

### 9.1 文档检索 → Research

支持单篇或批量导入文档作为参考资料。

### 9.2 文档详情 → Research

支持从单篇文档直接发起专题研究，或导入当前文档、摘要、片段、依据链。

### 9.3 智能问答 → Research

支持将问答结果与引用文档一并加入 Research。

### 9.4 事项页 → Research

支持围绕事项建立专题研究，并可附带依据文件。

### 9.5 事项页 → 办事指南页

支持从事项详情进入关联办事指南列表，并继续跳转到具体 Guide 详情核对办理细节。

### 9.6 主题页 → Research

支持从主题地图直接发起 Research，自动加入主题核心文件和事项。

### 9.7 文档详情 → 智能问答

支持 `问这个文档`，自动把当前文档作为问答上下文。

### 9.8 文档详情 / QA / Research 引用 → 办事指南页

支持从文档详情、问答引用和 Research 引用直接跳到 Guide 详情；若引用只带 `doc_id`，则走 by-doc 回退路由。

### 9.9 检索页 → 文档详情 → 主题页 / 事项页

通过知识分类、PolicyTheme、Matter 等元数据和图谱关系无缝跳转。

## 10. 推荐的通用组件与状态层

### 10.1 建议新增状态层

除现有 `searchStore`、`researchStore`、`userStore`、`tabsStore` 外，建议新增：

- `researchBasketStore`
- `qaStore`
- `matterStore`
- `topicStore`
- `analyticsStore`

### 10.2 推荐的通用组件

- `DocumentCard`
- `GraphInsightCard`
- `ResearchBasket`
- `MatterCard`
- `ThemePanel`
- `CitationCard`
- `ImportToResearchDialog`
- `DocumentVersionDrawer`
- `DocumentQuickPreview`
- `StatusTag`

## 11. 前后端接口联动建议

以下为业务逻辑接口，不含前端代理前缀。

### 11.1 检索页

- `POST /api/v1/search`
- `POST /api/v1/search/suggest`
- `GET /api/v1/document/versions/{content_hash}`

### 11.2 详情页

- `GET /api/v1/document/{doc_id}`
- `GET /api/v1/document/{doc_id}/graph`
- `GET /api/v1/document/file/{doc_id}`
- `GET /api/v1/graph/document/{doc_id}/recommendations`
- `GET /api/v1/graph/document/{doc_id}/policy-chain`
- `GET /api/v1/graph/document/{doc_id}/revision-history`
- `GET /api/v1/graph/document/{doc_id}/same-theme`

### 11.3 智能问答页，建议新增

- `POST /api/v1/qa`
- 图谱增强逻辑依赖 Graph Query Planner

### 11.4 Research

- `POST /api/v1/research`
- `POST /api/v1/research/topic`，规划能力

### 11.5 事项页

- `GET /api/v1/graph/matters`
- `GET /api/v1/graph/matters/{matter_id}`
- `GET /api/v1/graph/matters/{matter_id}/requirements`

### 11.6 办事指南页

- `GET /api/v1/service-guides`
- `GET /api/v1/service-guides/by-matter/{matter_id}`
- `GET /api/v1/service-guides/by-doc/{doc_id}`
- `GET /api/v1/service-guides/{profile_id}`

### 11.7 主题页

- `GET /api/v1/topics`
- `GET /api/v1/topics/{theme_name}`

### 11.8 治理分析页

- `GET /api/v1/analytics/invalid-references`
- `GET /api/v1/analytics/theme-timeline/{name}`
- `GET /api/v1/analytics/org/{name}`
- `GET /api/v1/analytics/basis-coverage`
- `GET /api/v1/analytics/orphan-documents`

## 12. 权限、状态与异常处理建议

### 12.1 状态标签统一

文档和事项状态标签建议统一颜色：

- 有效：绿色
- 部分失效：橙色
- 已废止：红色
- 失效：灰色
- 待确认：黄色

### 12.2 权限展示原则

1. 只展示用户可见文档。
2. 不提示“还有无权限结果”。
3. Research 资料篮中若资料不可访问或已删除，标记为 `资料不可用` 并允许移除。

### 12.3 占位文档提示

1. 普通检索结果默认不展示占位文档。
2. 在依据链、修订史中出现时要显式标注。
3. 文案统一为：`仅识别到文号，原文未入库`。

### 12.4 版本处理原则

1. 搜索页默认展示最佳可见版本。
2. 通过 `version_count` 和版本抽屉承接深挖需求。
3. 导入 Research 时默认导入当前版本，允许显式改为导入全部可见版本。
4. Research 中引用必须保留 `doc_id`，不能只保留 `content_hash`。

### 12.5 异常态

1. 智能问答图谱增强失败时，自动回退普通 RAG。
2. Research 流式失败时，保留已导入资料和已生成内容。
3. 文档原文不可下载时，摘要、图谱和关联卡片仍可用。
4. 图谱为空时，不影响详情、问答和 Research 使用。

## 13. 典型流程示例

### 13.1 从检索到 Research

1. 用户在文档检索输入 `营商环境 优化`。
2. 筛选 `knowledge_category = 政策与法规`。
3. 勾选 3 篇文件。
4. 点击 `批量加入 Research`。
5. 在弹窗中选择：
   - 新建 Research：`营商环境优化专题`
   - 将 3 篇文档设为核心参考
6. 跳转 Research 工作台。
7. 用户点击 `生成专题研究`。

### 13.2 从详情继续研究

1. 用户打开一份政策文件详情。
2. 右侧看到依据链和同主题推荐。
3. 点击 `加入 Research`。
4. 选择 `加入当前 Research`。
5. 同时勾选 `附带依据链上游文件`。
6. 返回 Research 继续分析。

### 13.3 从问答沉淀研究素材

1. 用户在智能问答页提问：`政府采购供应商资格需要哪些条件？`
2. 系统回答并列出相关事项和依据文件。
3. 用户点击 `将本轮问答加入 Research`。
4. 生成一条研究素材记录：
   - 问题
   - 回答摘要
   - 引用文档
   - 相关事项卡

## 14. 首版落地优先级

### P0

1. 文档检索页增强。
2. 文档详情页增强。
3. Research 工作台基础版增强。
4. 检索 / 详情 → Research 导入链路。
5. 全局 Research 参考资料篮。

### P1

1. 智能问答页。
2. 事项查询页与办事指南页联动增强。
3. 详情页右侧图谱卡片增强。
4. 版本抽屉与片段导入。

### P2

1. 主题地图页。
2. 治理分析页。
3. 条款级展示与锚点导航。
4. Topic Research 结构化专题研究。

## 15. 一句话总结

整套前端应围绕一个核心体验展开：

> 用户从检索进入，在详情中理解，在问答中提炼，在 Research 中沉淀，在事项中定位对象，在办事指南中核对细节，在主题、治理分析和图谱视图中扩展。

其中最关键的跨场景能力仍然是：

> 文档检索页与文档详情页中的文档，能够随时导入 Research 作为参考资料。

这版融合方案保留了当前系统已经落地的搜索、详情、QA、Research、事项、办事指南、图谱、管理和 Mock 链路，同时把主题地图、治理分析这些图谱增强场景纳入同一套前端信息架构中，便于后续分阶段落地而不推翻现有实现。