退款政策简化 + 预订须知必填校验 + 产品全部预约
这个提交包含在:
父节点
38a38a3bf3
当前提交
fd23ce1007
@ -0,0 +1,110 @@
|
|||||||
|
# 退款政策简化 + 预订须知必填校验
|
||||||
|
|
||||||
|
## 日期
|
||||||
|
2026-03-22
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 一、退款政策管理简化
|
||||||
|
|
||||||
|
### 变更说明
|
||||||
|
退款政策现在**直接绑定到产品**,不再区分退款类型,不再有默认政策概念。
|
||||||
|
|
||||||
|
### 删除的字段
|
||||||
|
|
||||||
|
| 接口 | 删除字段 | 说明 |
|
||||||
|
|------|---------|------|
|
||||||
|
| 退款政策列表/详情 VO | `refundType` | 不再区分定金/全款/尾款类型 |
|
||||||
|
| 退款政策列表/详情 VO | `isDefault` | 不再有默认政策概念 |
|
||||||
|
| 退款政策创建/修改请求 | `refundType` | 同上 |
|
||||||
|
| 退款政策创建/修改请求 | `isDefault` | 同上 |
|
||||||
|
| 产品详情 VO | `refundPolicyId` | 已废弃,用 refundPolicyIds |
|
||||||
|
| 产品详情 VO | `refundPolicyName` | 已废弃 |
|
||||||
|
|
||||||
|
### 退款政策列表页(退款管理 > 退款政策)
|
||||||
|
|
||||||
|
**需要删除的列:**
|
||||||
|
- ~~退款类型~~
|
||||||
|
- ~~生效开始~~
|
||||||
|
- ~~生效结束~~
|
||||||
|
- ~~默认~~
|
||||||
|
|
||||||
|
**保留的列:**
|
||||||
|
- 政策名称
|
||||||
|
- 规则数(规则条数)
|
||||||
|
- 状态(启用/禁用)
|
||||||
|
- 创建时间
|
||||||
|
- 操作
|
||||||
|
|
||||||
|
### 退款政策创建/修改表单
|
||||||
|
|
||||||
|
**需要删除的字段:**
|
||||||
|
- ~~退款类型(DEPOSIT/BALANCE/FULL 下拉)~~
|
||||||
|
- ~~是否默认(开关)~~
|
||||||
|
|
||||||
|
**保留的字段:**
|
||||||
|
- 政策名称(必填)
|
||||||
|
- 备注(选填)
|
||||||
|
- 退款规则列表(必填,每条规则包含:距出发天数 + 退款比例%)
|
||||||
|
|
||||||
|
### 接口无变化
|
||||||
|
- `GET /admin/order/refund-policy/list` — 退款政策列表
|
||||||
|
- `GET /admin/order/refund-policy/enabled` — 启用的政策列表(产品设计选择用)
|
||||||
|
- `GET /admin/order/refund-policy/{policyId}` — 政策详情
|
||||||
|
- `POST /admin/order/refund-policy` — 创建政策
|
||||||
|
- `PUT /admin/order/refund-policy/{policyId}` — 修改政策
|
||||||
|
- `DELETE /admin/order/refund-policy/{policyId}` — 删除政策(不再限制"默认不能删")
|
||||||
|
- `PUT /admin/order/refund-policy/{policyId}/toggle?enabled=true/false` — 启用/禁用
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 二、产品退款政策绑定格式变更
|
||||||
|
|
||||||
|
### `refundPolicyIds` 字段类型变更
|
||||||
|
|
||||||
|
**之前(Map):**
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"refundPolicyIds": {
|
||||||
|
"DEPOSIT": "1",
|
||||||
|
"FULL": "3",
|
||||||
|
"BALANCE": "4"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**现在(List):**
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"refundPolicyIds": ["1", "3", "4"]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**影响接口:**
|
||||||
|
- `POST /admin/product` — 创建产品
|
||||||
|
- `PUT /admin/product/{id}` — 更新产品
|
||||||
|
- `PUT /admin/product/{id}/save` — 保存产品(草稿)
|
||||||
|
- `GET /admin/product/{id}` — 产品详情(响应)
|
||||||
|
|
||||||
|
### 产品"预订须知"页面
|
||||||
|
- **退款政策选择器**:从 Map 形式改为简单多选。调用 `GET /admin/order/refund-policy/enabled` 获取列表,选中的 policyId 数组直接存入 `refundPolicyIds`
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 三、产品上架/完成新增必填校验
|
||||||
|
|
||||||
|
以下字段在**上架(PUBLISHED)**和**定制完成(COMPLETED)**时必须填写,否则校验不通过:
|
||||||
|
|
||||||
|
| 字段 | 说明 | 选择来源 |
|
||||||
|
|------|------|---------|
|
||||||
|
| `bookingTermsId` | 预订条款 | `GET /admin/product/booking-terms/enabled` |
|
||||||
|
| `refundPolicyIds` | 退款政策(可多选) | `GET /admin/order/refund-policy/enabled` |
|
||||||
|
| `warmTipsId` | 温馨提示 | `GET /admin/product/warm-tips/enabled` |
|
||||||
|
| `insuranceSchemeId` | 保险方案 | 已有 |
|
||||||
|
| `contractSchemeId` | 合同方案 | 已有 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 四、所有产品改为预约产品
|
||||||
|
|
||||||
|
所有产品的 `isBooking` 已设为 `true`(预约产品)。产品列表"预约"列应全部显示"是"。
|
||||||
正在加载...
x
在新工单中引用
屏蔽一个用户