feat: add file upload workflow
This commit is contained in:
+12
-1
@@ -24,6 +24,7 @@
|
||||
- 发布租号前必须登录并完成实名认证。
|
||||
- 一期创建发布时同时创建 `game_accounts` 和 `rental_listings`。
|
||||
- 哈夫币数量是号主手动填报值,不代表实时值。
|
||||
- 号主可上传账号资产截图,地址保存在 `game_accounts.screenshot_urls`,最多保留 12 个。
|
||||
- 当前提交审核会进入 `review_status = pending`,由后台商品审核通过后才上架。
|
||||
- 后台审核通过后,发布状态变为 `published`,审核状态变为 `approved`,账号状态变为 `published`。
|
||||
- 后台审核拒绝后,发布保留为草稿,审核状态变为 `rejected`,拒绝原因写入 `review_reason`。
|
||||
@@ -69,6 +70,16 @@
|
||||
- 每个超时动作只推进一次状态,避免重复通知。
|
||||
- 超时动作会给相关用户写入站内信,并以 `system` 身份写入 `audit_logs`。
|
||||
|
||||
## 开发态文件上传
|
||||
|
||||
- 文件上传接口为 `/api/files/upload`,文件访问接口为 `/api/files/object`。
|
||||
- 开发环境使用 MinIO,配置项包括 `STORAGE_ENDPOINT`、`STORAGE_BUCKET`、`STORAGE_ACCESS_KEY_ID` 和 `STORAGE_SECRET_ACCESS_KEY`。
|
||||
- 当前支持上传 10MB 内的 JPG、PNG、WebP 和 PDF。
|
||||
- 上传场景包括账号截图、交接附件、申诉证据、实名回执引用和头像等。
|
||||
- 账号资产截图已接入发布页面,商品审核和商品详情后台可通过后台文件代理查看。
|
||||
- 申诉证据已在订单详情页接入上传,上传成功后会把文件访问地址追加到证据列表。
|
||||
- 文件访问通过后端代理读取私有对象,后续接 OSS/COS 时保持业务接口不变。
|
||||
|
||||
## 开发态钱包账务
|
||||
|
||||
- 钱包账务当前为模拟流水,不代表真实支付、充值或提现。
|
||||
@@ -151,7 +162,7 @@
|
||||
- 商品管理接口为 `/api/admin/listings`,前端页面为 `/admin/listings`。
|
||||
- 后台可查看全量商品、号主、账号 ID、区服、平台、段位、哈夫币、时租、押金、商品状态和审核状态。
|
||||
- 当前支持按号主 ID、商品状态、审核状态和查询条数筛选。
|
||||
- 商品详情页为 `/admin/listings/:id`,支持查看完整账号、价格、租期和审核信息。
|
||||
- 商品详情页为 `/admin/listings/:id`,支持查看完整账号、价格、租期、审核信息和账号资产截图。
|
||||
- 后台可对非租赁中的商品执行强制下架和标记异常。
|
||||
- 强制下架会将商品和账号状态改为 `offline`,标记异常会将商品和账号状态改为 `abnormal`。
|
||||
- 强制下架和标记异常必须填写原因,写入 `audit_logs`,并通知号主。
|
||||
|
||||
Reference in New Issue
Block a user