test/test.docx (3.49 MB)问题: parse_tasks 表的外键约束要求 document_id 必须存在于 documents 表中,但上传流程没有创建 documents 记录。
修复:
FileUploadService 中添加 DocumentService 依赖documents 记录DocumentService.saveDocument() 方法逻辑,支持外部指定 ID 的插入操作userId 存在于 users 表相关提交:
b22a18c - fix: 修复文件上传时外键约束失败问题72248a3 - fix: 修复 DocumentService.saveDocument 方法逻辑问题: MyBatis-Plus 的 JacksonTypeHandler 无法正确处理 PostgreSQL 的 JSONB 类型字段。
修复:
PostgreSqlJsonbTypeHandlerPGobject 正确设置 JSONB 类型ParseTask 实体使用新的类型处理器相关提交:
06b9243 - fix: 修复 ParseTask 实体 options 字段 JSONB 类型处理839cb73 - fix: 添加 PostgreSQL JSONB 类型处理器问题: text_storage 表不存在,导致记录文本存储路径失败。
说明: 这不是阻塞性问题。代码已经有异常捕获,失败不影响主流程。
解决方案:
backend/sql/supplement_tables.sql 初始化补充表backend/sql/README_SUPPLEMENT.md 获取详细说明documents 表记录创建成功parse_tasks 表记录创建成功(外键约束满足)/data/lingyue/texts/{id}/{documentId}.txttest/test_upload_api.sh 提供以下功能:
# 默认配置 (localhost:5232)
./test/test_upload_api.sh
# 指定服务器
./test/test_upload_api.sh 192.168.1.100 5232
# 上传并轮询状态
./test/test_upload_api.sh -p
# 查询上次上传的状态
./test/test_upload_api.sh -s
初始化补充表
psql -U postgres -d lingyue_zhibao -f backend/sql/supplement_tables.sql
初始化 RAG 表 - 如果需要使用 RAG 检索功能
psql -U postgres -d lingyue_zhibao -f backend/sql/rag_tables.sql
所有修复已提交到 dev 分支:
508ed6b - docs: 添加数据库补充表初始化说明文档
839cb73 - fix: 添加 PostgreSQL JSONB 类型处理器
06b9243 - fix: 修复 ParseTask 实体 options 字段 JSONB 类型处理
72248a3 - fix: 修复 DocumentService.saveDocument 方法逻辑
b22a18c - fix: 修复文件上传时外键约束失败问题
a54573c - test: 添加文件上传接口测试脚本
b09d6c3 - test: 添加测试文件 test.docx
✅ 文件上传和解析核心功能已正常工作
主要流程(用户注册 → 文件上传 → 文档记录 → 解析任务 → 文本提取 → 版面分析 → 状态保存)全部成功完成。
非核心功能(文本存储路径记录)需要初始化补充表后才能完全正常工作。