Commit Graph

5 Commits

Author SHA1 Message Date
zwt13703 dd2af6be4a feat: 参考文件支持多文件上传 + 生成前检查
- ref_file_path 改为 Text 类型存储 JSON 数组
- parse_reference_files: 支持解析多个文件路径
- 测试端点: 接受多个 ref_files,多文件内容合并
- 新增 upload-ref 端点: 生成前先上传参考文件
- 生成任务: 检查 need_ref_file,多文件提取文本
- 前端: 文件选择器改为 multiple,测试/上传均支持多文件
- 生成前自动检测缺少参考文件的生成点并提示上传
2026-07-06 21:02:19 +08:00
zwt13703 c11ea22e88 fix: 占位符替换 - 新增 selected_text 字段彻底解决位置偏移问题
- 新增 generation_points.selected_text 字段存储用户实际选中的文本
- 生成任务优先使用 selected_text 直改 docx,不再依赖脆弱的位置偏移
- 前端创建生成点时同时传递选中文本内容
- 原始 docx 直改方案完美保留所有样式(加粗/标题/表格)
- 端到端验证: {{ placeholder }} → AI 内容替换成功,样式不变
2026-07-06 18:20:00 +08:00
zwt13703 e937449e6a fix: 样式丢失问题 - 生成任务改为直改原始 docx 保留样式
- generate.py: 直接加载原始 docx 用 python-docx 替换文本,不再经过 HTML→docx
- html_to_docx: 增强支持 bold/italic/heading 等基本格式
- text替换: 支持段落内 runs 和表格 cell 内的文本替换
- 结果: AI 内容正确插入,字体/加粗/标题等原始样式完全保留
2026-07-06 17:53:15 +08:00
zwt13703 3db8208c55 fix: Celery 异步任务 event loop 冲突修复
- 原因: 全局 async_session_factory 绑定在 Celery 主进程 event loop
- Celery fork worker 后创建新 loop,旧 connection 绑定冲突
- 修复: 每个任务内创建独立 async engine + session factory
- 任务完成后 dispose engine 释放连接
2026-07-06 17:45:05 +08:00
zwt13703 afabb6446a feat: 阶段三 - 异步任务与 AI 集成
- AI 调用适配器:工厂模式,支持 openai/azure/custom 三种供应商
- 参考文件解析器:提取 txt/docx/pdf 文本内容
- Celery 配置与生成任务:模板加载→生成点排序→参考解析→AI调用→HTML插入→文档保存
- 任务管理 API:触发/状态查询/结果下载(docx+pdf)/取消/列表
- 单点测试 API:生成点预览不保存文档
- 23 个 API 端点全部注册
2026-07-06 16:28:00 +08:00