feat: add admin risk actions and arbitration settlement

This commit is contained in:
yml
2026-05-22 18:11:01 +08:00
parent dfe686ce0e
commit 55477d0ac6
26 changed files with 888 additions and 23 deletions
+24 -5
View File
@@ -86,9 +86,14 @@
- 同一个订单同一时间只允许存在一个 `open``processing` 申诉。
- 发起申诉后订单状态变为 `disputing`,账号和发布保持锁定。
- 开发态后台仲裁接口为 `/api/admin/disputes`,当前只要求登录,后续接后台管理员和 RBAC。
- 仲裁结果先只落状态和通知:全额退款、部分退款、关闭订单会将订单置为 `closed`;扣押金、释放押金、赔付号主会将订单置为 `completed`
- 仲裁完成后账号和发布恢复为 `published`
- 当前仲裁不做真实扣款、退款、赔付落账,后续接真实支付后再补资金流水和审计日志
- 仲裁会释放开发态模拟冻结金额,并根据结果生成钱包流水
- 全额退款:释放冻结金额后,将租金加押金作为可用余额退给租客,订单置为 `closed`
- 部分退款:需要填写退给租客的金额,剩余冻结金额结算给号主,订单置为 `closed`
- 释放押金:租金结算给号主,押金退给租客,订单置为 `completed`
- 扣押金/赔付号主:可填写从押金中赔付给号主的金额;不填默认处理全额押金,订单置为 `completed`
- 关闭订单:只释放冻结金额,不产生可用余额结算,订单置为 `closed`,关联商品和账号下架。
- 仲裁完成会写入 `audit_logs`,记录裁决结果、金额、订单状态和资金处理。
- 当前仍是开发态模拟账务,不代表真实退款、扣款或提现;接入真实支付后需要替换为支付渠道退款、分账和对账逻辑。
## 开发态系统配置
@@ -127,14 +132,28 @@
- 订单管理接口为 `/api/admin/orders`,前端页面为 `/admin/orders`
- 后台可查看全量订单、租客、号主、订单状态、交接状态、结算状态、租金和押金。
- 订单详情页 `/admin/orders/:id` 展示订单状态、双方用户、租期、交接记录和账号资产快照。
- 当前后台订单管理先做只读能力,后续再补后台关闭订单、标记异常和客服介入操作
- 高风险客服操作集中放在订单详情页处理,必须填写原因并写入审计日志
## 开发态商品管理
- 商品管理接口为 `/api/admin/listings`,前端页面为 `/admin/listings`
- 后台可查看全量商品、号主、账号 ID、区服、平台、段位、哈夫币、时租、押金、商品状态和审核状态。
- 当前支持按号主 ID、商品状态、审核状态和查询条数筛选。
- 商品管理先做只读能力,强制下架、标记异常和后台改价等高风险操作后续接 RBAC 和审计后再做
- 商品详情页为 `/admin/listings/:id`,支持查看完整账号、价格、租期和审核信息
- 后台可对非租赁中的商品执行强制下架和标记异常。
- 强制下架会将商品和账号状态改为 `offline`,标记异常会将商品和账号状态改为 `abnormal`
- 强制下架和标记异常必须填写原因,写入 `audit_logs`,并通知号主。
- 租赁中的商品暂不允许直接下架或标记异常,需要先处理关联订单。
## 开发态订单客服操作
- 订单详情页 `/admin/orders/:id` 支持客服关闭订单和标记异常。
- 已完成、已取消、已关闭订单为终态,不允许再次客服关闭或标记异常。
- 客服关闭订单会将订单状态改为 `closed`,交接状态改为 `admin_closed`,结算状态改为 `closed`
- 客服关闭订单会释放开发态模拟冻结金额,并将关联商品和账号下架为 `offline`
- 标记异常会将订单状态改为 `abnormal`,交接状态改为 `admin_abnormal`,关联商品和账号改为 `abnormal`
- 客服关闭和标记异常必须填写原因,写入 `audit_logs`,并通知租客和号主。
- 当前不处理真实退款、扣款或赔付,真实支付接入后需要补充资金裁决逻辑。
## 开发态审计日志