update: uploads

This commit is contained in:
2026-03-06 15:52:34 +08:00
parent b1b14fd964
commit f9b9b821df
19 changed files with 1333 additions and 106 deletions

View File

@@ -30,6 +30,14 @@
3. 打开:
- `http://127.0.0.1:5173`
## 导入中心(队列)说明
- 导入任务使用**持久化队列**:任务与文件项写入数据库(`import_jobs` / `import_job_items`),后端单消费者按创建时间 FIFO 串行执行。
- 状态枚举:`queued`(排队中)、`running`(执行中)、`success``failed``cancelled``retrying`
- 刷新页面后,前端会请求 `GET /api/import/jobs?status=queued,running` 恢复未完成任务并轮询进度;无需依赖本地缓存。
- 失败项可通过「重试失败项」再次入队(新建任务);排队中/执行中任务可取消。
- 上传文件按任务与序号存为唯一路径(`upload_dir/{job_id}/{seq}_{filename}`),避免同名覆盖。
## 默认登录
- 用户名:`admin`
@@ -38,8 +46,9 @@
## 功能清单
- 题目 CRUD、搜索、筛选、批量删除、批量更新
- AI 智能导入PDF/Word -> DMXAPI -> 预览 -> 确认保存)
- AI 智能导入PDF/Word -> OpenAI兼容接口 -> 预览 -> 确认保存)
- Excel 批量导入、模板下载、导出 JSON/CSV/Excel
- **导入中心(持久化队列)**:严格 FIFO 串行执行,任务状态持久化到数据库;刷新页面后自动恢复未完成任务列表;支持取消排队中/执行中任务、对失败项一键重试入队。
- 分类树管理(章节/知识点)
- 练习模式(抽题、判题、解析反馈)
- 仪表盘统计(总量、题型、难度、章节、导入历史)