feat: add document versioning and list API

This commit is contained in:
wren
2026-04-29 11:48:50 +08:00
parent f3b83c9979
commit b45d61fa97
14 changed files with 1693 additions and 92 deletions
+22 -2
View File
@@ -4,6 +4,10 @@
## 一、目标架构
补充文档:
- 并发与重试参数:`docs/leaudit/并发与重试参数说明.md`
```
┌─ API ───────────────────────────────────────────────────────────┐
│ AuditController (/audit) RuleController (/rule-sets) │
@@ -166,11 +170,11 @@ finalize_run() ← 唯一写 result_status / finished_at / rescue_
POST /upload (multipart/form-data)
file
typeId / typeCode
bizDocumentId?
region=default
fileRole=primary
createdBy?
autoRun=false
speed=normal|urgent
```
执行链:
@@ -178,7 +182,7 @@ POST /upload (multipart/form-data)
```text
Upload
-> DocumentServiceImpl.Upload()
-> upsert leaudit_documents
-> create leaudit_documents
-> 旧 active 文件失效
-> 上传原始文件到 OSS:
bdocs/{region}/{type_code}/{document_id}/v{n}/{file_role}.{ext}
@@ -186,6 +190,14 @@ Upload
-> autoRun=true 时直接调用 AuditServiceImpl.Run()
```
说明:
- `leaudit_documents` 现阶段是平台内部文档主表,不再依赖旧系统 `documents.id`
- 每次前端上传都会新建一条 `leaudit_documents`
- `speed`
- `normal` -> `leaudit.normal`
- `urgent` -> `leaudit.urgent`
## 四点六、最新补充:结果查询视图
当前 `GetRunStatus()` / `GetResult()` 已不再只返回 run 主表摘要。
@@ -204,6 +216,14 @@ Upload
- `leaudit_run_metrics`
- `leaudit_artifacts`
建议联调方式:
- 上传后从 `run.runId` 轮询 `GET /audit/run/{runId}`
- 完成后调用 `GET /audit/result/{runId}`
- worker 日志里会明确打印:
- 已投递到哪个队列
- worker 实际消费的是 `urgent` 还是 `normal`
## 四点七、关键关系图:DocumentType -> Binding -> RuleSet -> RuleVersion
这一段是当前规则执行链里最关键的一层路由关系。