Files
one-pipe-system/openspec/changes/update-series-grant-package-edit-cost-price-consistency/proposal.md
sexygoat 73ce9af11a
Some checks failed
构建并部署前端到测试环境 / build-and-deploy (push) Failing after 2m0s
fix: 代理系列授权店铺
2026-05-09 16:13:11 +08:00

1.7 KiB

Change: 修正代理系列授权套餐编辑中的成本价回填与提交一致性

Why

当前“代理系列授权套餐列表”页面在编辑已授权套餐时,成本价输入框没有稳定使用列表行中的当前成本价作为初始值;同时,用户修改输入框后,前端提交给 manageGrantPackages 接口的 cost_price 可能退化为默认值 0,会直接把代理授权套餐的成本价错误覆盖。

这类问题会导致代理系列授权价格被误改,属于高风险的业务数据错误,需要明确前端在编辑态下的回填来源和提交流程。

What Changes

  • 为代理系列授权中的“编辑授权套餐”交互补充统一规范:
    • 编辑弹窗打开时,成本价必须使用当前被编辑套餐记录中的 cost_price 回填
    • 该回填行为不能依赖“可选套餐列表”是否已预先加载
    • 用户在输入框中修改后的值,保存时必须按“元转分”写入 manageGrantPackages 请求体中的 cost_price
    • 保存时不得回退为表单默认值 0,除非用户实际输入的就是 0 且通过业务校验
  • 约束同一能力下多个编辑入口保持一致行为,包括:
    • 代理系列授权套餐列表页
    • 代理系列授权页面中的套餐管理弹窗
  • 不修改后端接口路径、字段命名或请求结构

Impact

  • Affected specs:
    • shop-series-grant-packages
  • Affected code:
    • src/views/package-management/series-grants/packages.vue
    • src/views/package-management/series-grants/index.vue
  • Dependencies:
    • GET /api/admin/shop-series-grants/{id} 继续返回授权套餐的 cost_price
    • PUT /api/admin/shop-series-grants/{id}/packages 继续接收 packages[].package_idpackages[].cost_price