From fd23ce1007cd7fd046728dd71180b00f493b5135 Mon Sep 17 00:00:00 2001 From: API Changelog Bot Date: Sun, 22 Mar 2026 19:54:20 +0800 Subject: [PATCH] =?UTF-8?q?=E9=80=80=E6=AC=BE=E6=94=BF=E7=AD=96=E7=AE=80?= =?UTF-8?q?=E5=8C=96=20+=20=E9=A2=84=E8=AE=A2=E9=A1=BB=E7=9F=A5=E5=BF=85?= =?UTF-8?q?=E5=A1=AB=E6=A0=A1=E9=AA=8C=20+=20=E4=BA=A7=E5=93=81=E5=85=A8?= =?UTF-8?q?=E9=83=A8=E9=A2=84=E7=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../2026-03-22_refund_policy_simplify.md | 110 ++++++++++++++++++ 1 file changed, 110 insertions(+) create mode 100644 changelogs/2026-03/2026-03-22_refund_policy_simplify.md diff --git a/changelogs/2026-03/2026-03-22_refund_policy_simplify.md b/changelogs/2026-03/2026-03-22_refund_policy_simplify.md new file mode 100644 index 0000000..e55694f --- /dev/null +++ b/changelogs/2026-03/2026-03-22_refund_policy_simplify.md @@ -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`(预约产品)。产品列表"预约"列应全部显示"是"。