上架需求增加

This commit is contained in:
supernijia
2026-07-25 09:58:29 +08:00
parent f1b7a7aae8
commit 8ab36b1aaf
38 changed files with 4326 additions and 10 deletions
@@ -17,17 +17,19 @@ public class OpenApiConfig {
.info(new Info()
.title("AI Image Backend API")
.description("""
文件处理后端接口文档
数富 AI Java 后端接口文档,包含文件处理、任务调度、店铺匹配、紫鸟接入和管理后台接口
当前迁移范围:仅迁移数据去重(dedupe)、格式转换(convert)、数据拆分(split)三块处理逻辑到 Java;
Python 桌面端壳、pywebview 调用方式、前端页面交互保持不变。
任务型模块通常按以下链路联调:
1. 前端或 Python 桌面端调用 /api/files/upload 上传源文件;
2. 调用模块的解析或创建任务接口,由 Java 解析数据并持久化任务;
3. 前端激活任务并派发给 Python,Python 按分页接口拉取任务明细;
4. 执行期间调用 /api/tasks/{taskId}/heartbeat 上报心跳和处理进度;
5. Python 将处理结果回传模块接口,Java 异步生成 XLSX/ZIP 并上传 OSS
6. 任务详情或历史接口返回公开 OSS 下载直链。
建议联调顺序:
1. 先启动 Java 后端;
2. 在 Python 桌面端中选择文件并执行 dedupe/convert/split
3. Python 壳会先调用 /api/files/upload 上传临时文件;
4. 再调用对应的 /api/dedupe/run、/api/convert/run、/api/split/run
5. Java 生成结果文件后,Python 壳再通过下载接口取回并保存到用户本地目录。
跨语言请求中的 user_id、task_ids 等字段使用 snake_case;响应字段默认使用 camelCase。
上架模块的 Python 分页、结果回传和任务级进度接口优先使用 taskId/fileId 定位,user_id 仅作为可选的旧客户端归属校验;创建批次、总览和历史接口仍按用户维度调用。
本地启动说明:
- 默认配置读取 application.yml
@@ -41,4 +43,5 @@ public class OpenApiConfig {
.description("Knife4j 文档")
.url("/doc.html"));
}
}