hl-api-changelog/changelogs/2026-03/2026-03-22_refund_policy_simplify.md

3.4 KiB

退款政策简化 + 预订须知必填校验

日期

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,不变

{
  "refundPolicyIds": {
    "FULL": "3",
    "DEPOSIT": "1",
    "BALANCE": "4"
  }
}
  • key = 支付类型:FULL(全款)、DEPOSIT(定金)、BALANCE(尾款)
  • value = 退款政策IDGET /admin/order/refund-policy/enabled 获取)
  • 退款政策本身不再区分类型,任何政策都可以绑定到任何支付类型

退款政策与支付方式的关系

支付方式 需要配置的退款政策
全款支付 (FULL) FULL
定金+尾款 (DEPOSIT) DEPOSIT + BALANCE

上架/完成时自动校验:系统根据产品的支付方式(product_pricing.payment_type)检查 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(预约产品)。产品列表"预约"列应全部显示"是"。