Explorar o código

docs: 更新进度报告至 80%

主要更新:
- 整体进度从 70% 提升到 80%
- 新增功能记录(2026-01-22):
  - 一键上传全自动处理流程
  - 数据源管理系统(CRUD + 取值 + 聚合)
  - 任务中心进度跟踪(6阶段)
  - 端到端测试脚本完善
- Week 3-4 任务完成情况更新
- API 接口清单完善(新增任务中心、数据源 API)
- 里程碑更新(数据源管理已完成)
何文松 hai 1 mes
pai
achega
4789db7523
Modificáronse 1 ficheiros con 102 adicións e 75 borrados
  1. 102 75
      进度报告.md

+ 102 - 75
进度报告.md

@@ -1,10 +1,10 @@
 # 📊 灵越智报 2.0 - 当前进度总结
 
-**整体进度:70%**  |  **报告日期:2026-01-21**
+**整体进度:80%**  |  **报告日期:2026-01-22**
 
 ---
 
-## ✅ 已完成(70%)
+## ✅ 已完成(80%)
 
 ### 基础设施
 - Spring Boot 3.1.5 单体应用架构(lingyue-starter)
@@ -18,6 +18,31 @@
 - 🔍 **RAG 向量化存储** → ✅ 已完成
 - 🏷️ **NER 实体识别服务** → ✅ 已完成并测试验证
 - 📄 **文档结构化解析** → ✅ 已完成(图片、表格、样式)
+- 📦 **数据源管理** → ✅ 已完成(CRUD + 取值 + 聚合)
+- ⏱️ **任务中心** → ✅ 已完成(多阶段进度跟踪)
+
+### 新增功能(2026-01-22)✅ 一键上传全自动处理 + 数据源管理
+
+- ✅ **一键上传全自动处理流程**
+  - 上传接口:`POST /api/v1/parse/upload`(唯一入口)
+  - 自动触发:RAG向量化 → 结构化解析 → NER实体提取 → 图数据库存储
+  - 手动重处理 API 保留,支持单独重新生成
+  
+- ✅ **数据源管理系统**
+  - 支持绑定 `GraphNode` 和 `DocumentElement` 两种类型
+  - 支持多种值类型:text/image/table/mixed
+  - 支持多种聚合方式:first/last/concat/sum/avg/list
+  - 完整 CRUD + 取值 + 批量取值 API
+  
+- ✅ **任务中心进度跟踪**
+  - 6阶段进度:upload → parse → rag → structured → ner → graph
+  - 阶段权重:parse(15%) + rag(10%) + structured(15%) + ner(50%) + graph(10%)
+  - 实时进度查询 API + 结果摘要展示
+  
+- ✅ **端到端测试脚本完善**
+  - `test_upload_api.sh` 支持完整流程测试
+  - 自动轮询等待 NER 完成(基于 GraphNode 数量稳定检测)
+  - 支持任务中心查询、数据源操作等
 
 ### 新增功能(2026-01-21)✅ 文档结构化解析完成
 - ✅ **Word 文档结构化提取**
@@ -114,43 +139,38 @@
 | 图查询接口 | ✅ | 按文档、按用户查询 |
 | **Neo4j 集成** | ✅ | 本地部署,双写同步 |
 
-### Week 3-4 任务完成:
+### Week 3-4 任务完成情况
 
 | 任务 | 状态 | 说明 |
 |------|------|------|
-| 数据源创建接口 | ⏳ | 下一步重点 |
-| 数据源绑定节点 | ⏳ | 下一步重点 |
-| 数据源查询接口 | ⏳ | 下一步重点 |
+| 数据源创建接口 | ✅ | `POST /api/v1/datasource` |
+| 数据源绑定节点 | ✅ | `PUT /api/v1/datasource/{id}/refs` |
+| 数据源查询接口 | ✅ | 按ID/文档/用户/类型查询 |
+| 数据源取值接口 | ✅ | `GET /api/v1/datasource/{id}/value` |
+| 批量取值接口 | ✅ | `POST /api/v1/datasource/batch-value` |
+| 任务中心进度跟踪 | ✅ | 6阶段进度 + 结果摘要 |
+| 端到端流程测试 | ✅ | 完整测试脚本 |
 | 模板创建接口 | ⏳ | 下一步重点 |
 | 占位符绑定数据源 | ⏳ | 下一步重点 |
 | 模板渲染接口 | ⏳ | 下一步重点 |
-| 端到端流程测试 | ⏳ | 需要完善 |
 
 ---
 
-## 📋 下一步计划:数据源与模板基础(Week 3
+## 📋 下一步计划:模板系统(Week 4
 
-**计划周期:2026-01-21 ~ 2026-01-27**
+**计划周期:2026-01-23 ~ 2026-01-27**
 
-**目标:实现数据源管理和模板系统基础功能**(设计文档 2.4 / 2.6)
+**目标:实现模板系统基础功能**(设计文档 2.6)
 
-### 1. 数据源管理(优先级最高)
+### 1. 数据源管理 ✅ 已完成
 
-根据设计文档 2.4.1:
-> 数据源是图数据库中的节点集合,具有层次关系
+- [x] 数据源创建接口
+- [x] 数据源绑定节点(支持 GraphNode + DocumentElement)
+- [x] 数据源查询接口(按ID/文档/用户/类型)
+- [x] 数据源取值接口(支持聚合:first/last/concat/sum/avg/list)
+- [x] 数据源批量取值(用于模板渲染)
 
-**实施任务:**
-- [ ] 数据源创建接口(DataSource 实体,节点绑定)
-- [ ] 数据源绑定节点(节点 ID 数组存储,关联关系维护)
-- [ ] 数据源查询接口(按类型、按文档查询)
-- [ ] 数据源编辑接口(添加/移除节点)
-
-**数据源类型**:
-- 表格数据源:表格单元格作为独立节点
-- 文本数据源:文本片段作为节点
-- 图片数据源:图片作为节点
-
-### 2. 模板系统基础
+### 2. 模板系统基础(下一步重点)
 
 根据设计文档 2.6.1:
 > 模板是对应输出的占位符结构,占位符绑定到数据源编号
@@ -158,54 +178,32 @@
 **实施任务:**
 - [ ] 模板创建接口(Template 实体,占位符解析)
 - [ ] 占位符绑定数据源(placeholder_mapping JSONB 存储)
-- [ ] 模板渲染接口(占位符替换,数据源值获取
+- [ ] 模板渲染接口(占位符替换,调用数据源批量取值)
 - [ ] 模板复制功能(基于已有模板复制)
 
-### 3. 数据库表设计
-
-根据现有 `supplement_tables.sql`,需要完善:
-
-```sql
--- 数据源表
-CREATE TABLE IF NOT EXISTS data_sources (
-    id VARCHAR(32) PRIMARY KEY,
-    name VARCHAR(255) NOT NULL,
-    type VARCHAR(50) NOT NULL,  -- table/text/image
-    document_id VARCHAR(32),
-    node_ids JSONB,  -- 绑定的节点 ID 数组
-    metadata JSONB,
-    user_id VARCHAR(32),
-    create_time TIMESTAMP,
-    update_time TIMESTAMP
-);
-
--- 模板表
-CREATE TABLE IF NOT EXISTS templates (
-    id VARCHAR(32) PRIMARY KEY,
-    name VARCHAR(255) NOT NULL,
-    content TEXT,  -- 模板内容(含占位符)
-    placeholder_mapping JSONB,  -- 占位符到数据源的映射
-    user_id VARCHAR(32),
-    create_time TIMESTAMP,
-    update_time TIMESTAMP
-);
-```
-
-### 4. 接口设计
+### 3. 已实现的数据源 API
 
-**数据源 API**:
-- `POST /api/datasource` - 创建数据源
-- `GET /api/datasource/{id}` - 获取数据源
-- `GET /api/datasource/document/{documentId}` - 按文档查询
-- `PUT /api/datasource/{id}/nodes` - 更新绑定节点
-- `DELETE /api/datasource/{id}` - 删除数据源
+| 接口 | 方法 | 说明 | 状态 |
+|------|------|------|------|
+| `/api/v1/datasource` | POST | 创建数据源 | ✅ |
+| `/api/v1/datasource/{id}` | GET | 获取数据源 | ✅ |
+| `/api/v1/datasource/document/{documentId}` | GET | 按文档查询 | ✅ |
+| `/api/v1/datasource/user/{userId}` | GET | 按用户查询 | ✅ |
+| `/api/v1/datasource/{id}` | PUT | 更新数据源 | ✅ |
+| `/api/v1/datasource/{id}/refs` | PUT | 更新绑定节点 | ✅ |
+| `/api/v1/datasource/{id}` | DELETE | 删除数据源 | ✅ |
+| `/api/v1/datasource/{id}/value` | GET | 获取数据源值 | ✅ |
+| `/api/v1/datasource/batch-value` | POST | 批量获取值 | ✅ |
+
+### 4. 待实现的模板 API
 
-**模板 API**:
-- `POST /api/template` - 创建模板
-- `GET /api/template/{id}` - 获取模板
-- `PUT /api/template/{id}/mapping` - 更新占位符映射
-- `POST /api/template/{id}/render` - 渲染模板
-- `POST /api/template/{id}/copy` - 复制模板
+| 接口 | 方法 | 说明 | 状态 |
+|------|------|------|------|
+| `/api/v1/template` | POST | 创建模板 | ⏳ |
+| `/api/v1/template/{id}` | GET | 获取模板 | ⏳ |
+| `/api/v1/template/{id}/mapping` | PUT | 更新占位符映射 | ⏳ |
+| `/api/v1/template/{id}/render` | POST | 渲染模板 | ⏳ |
+| `/api/v1/template/{id}/copy` | POST | 复制模板 | ⏳ |
 
 ---
 
@@ -292,38 +290,67 @@ database/
   - ✅ NER 实体提取
   - ✅ 文档结构化解析(图片、表格)
   - ✅ Neo4j 图数据库集成
-  - ⏳ 数据源管理(下一步)
+  - ✅ **数据源管理**(已完成)
+  - ✅ **一键上传全自动处理**(已完成)
+  - ✅ **任务中心进度跟踪**(已完成)
   - ⏳ 模板基础(下一步)
 
 ---
 
 ## 📋 API 接口清单
 
+### 文件上传(唯一入口)
+
+| 接口 | 方法 | 说明 | 状态 |
+|------|------|------|------|
+| `/api/v1/parse/upload` | POST | **一键上传,自动触发全流程** | ✅ |
+
 ### 文档解析服务(parse-service)
 
 | 接口 | 方法 | 说明 | 状态 |
 |------|------|------|------|
-| `/parse/structured/{documentId}` | GET | 触发结构化解析 | ✅ |
+| `/parse/structured/{documentId}` | GET | 手动触发结构化解析 | ✅ |
 | `/parse/elements/{documentId}` | GET | 获取所有结构化元素 | ✅ |
 | `/parse/elements/{documentId}/images` | GET | 获取图片列表 | ✅ |
 | `/parse/elements/{documentId}/tables` | GET | 获取表格列表 | ✅ |
 | `/api/v1/files/images/{docId}/{filename}` | GET | 获取图片资源 | ✅ |
 
+### 任务中心(parse-service)
+
+| 接口 | 方法 | 说明 | 状态 |
+|------|------|------|------|
+| `/api/v1/tasks/list` | GET | 获取任务列表 | ✅ |
+| `/api/v1/tasks/{taskId}/detail` | GET | 获取任务详情 | ✅ |
+| `/api/v1/tasks/by-document/{documentId}` | GET | 按文档ID查询任务 | ✅ |
+| `/api/v1/tasks/statistics` | GET | 获取任务统计 | ✅ |
+
 ### NER 服务(ner-service)
 
 | 接口 | 方法 | 说明 | 状态 |
 |------|------|------|------|
 | `/api/ner/extract` | POST | 文本实体抽取 | ✅ |
-| `/api/ner/document/{id}` | POST | 文档实体抽取 | ✅ |
+| `/api/ner/document/{id}` | POST | 手动触发文档实体抽取 | ✅ |
 | `/api/ner/relations` | POST | 关系抽取 | ✅ |
 
 ### 图谱服务(graph-service)
 
 | 接口 | 方法 | 说明 | 状态 |
 |------|------|------|------|
-| `/api/v1/graph/nodes` | GET/POST | 节点 CRUD | ✅ |
-| `/api/v1/graph/relations` | GET/POST | 关系 CRUD | ✅ |
-| `/api/v1/graph/document/{id}` | GET | 按文档查询 | ✅ |
+| `/api/graph/nodes` | POST | 创建节点 | ✅ |
+| `/api/graph/nodes/{nodeId}` | GET/PUT/DELETE | 节点 CRUD | ✅ |
+| `/api/graph/documents/{documentId}/nodes` | GET | 按文档查询节点 | ✅ |
+| `/api/graph/relations` | POST | 创建关系 | ✅ |
+
+### 数据源服务(graph-service)
+
+| 接口 | 方法 | 说明 | 状态 |
+|------|------|------|------|
+| `/api/v1/datasource` | POST | 创建数据源 | ✅ |
+| `/api/v1/datasource/{id}` | GET | 获取数据源 | ✅ |
+| `/api/v1/datasource/document/{documentId}` | GET | 按文档查询 | ✅ |
+| `/api/v1/datasource/{id}/refs` | PUT | 更新绑定节点 | ✅ |
+| `/api/v1/datasource/{id}/value` | GET | **获取数据源值** | ✅ |
+| `/api/v1/datasource/batch-value` | POST | **批量获取值** | ✅ |
 
 ---