feat(ECR-009): Ops-D order filters, plan display prices, refund status

LOOP-RUN-002 sample: admin order multi-filter, membership display
price catalog, read-only refund_status. No real payment or RBAC.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
jackyu66git
2026-08-07 02:45:32 +08:00
co-authored by Cursor
parent 7ab9add5dd
commit ca3b13554c
37 changed files with 2169 additions and 25 deletions
+48
View File
@@ -0,0 +1,48 @@
# Feature Spec: 运营商业加深(Ops-D
> Status: `Active` · Map: `§7 Phase D` · Phase: `Ops-D` · ECR: `ECR-009`
> 规范:[../feature-design.md](../feature-design.md)
> 上游:Ops-A/B/CECR-006/007/008
---
## 1. 功能定义
| 字段 | 内容 |
|---|---|
| Name | 运营商业加深 Ops-D |
| Purpose | 订单可筛选;套餐展示价可配;退款状态只读可见 |
| Business Goal | 运营无需改库即可查单与维护展示价 |
| In | Out |
|---|---|
| 订单筛选:status / kind / fromto / user_id | 真支付 · 退款工单流转 |
| `refund_status` 只读字段 | 优惠券 · 发票 |
| 会员套餐展示价 CRUD(分) | RBACOps-E |
---
## 2. 验收
**Given** 库内多状态订单
**When** `GET /api/v1/admin/orders?status=paid&kind=membership&from=&to=`
**Then** 仅返回匹配项,且含 `refund_status`
**Given** Admin 配置 `monthly` 展示价
**When** `PUT /api/v1/admin/membership/plan-prices`
**Then** `GET` 返回新价;不改历史 `orders.amount_cents`
---
## 3. 页面
| 路由 | 说明 |
|---|---|
| `/orders` | 增加筛选条 + 退款状态列 |
| `/pricing` | 套餐展示价表 |
---
## 4. 非目标
真支付网关 · 退款执行 · Ops-E 权限矩阵 · UGC