Files
break 73f5125d3d
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 8m26s
七月迭代短暂完结,还有很多后端的关键东西没有弄,这是一版赶时间做的东西
2026-07-25 17:06:58 +08:00

3.1 KiB
Raw Blame History

ADDED Requirements

Requirement: 按资产类型配置允许支付方式

system_config SHALL 分别定义卡和设备允许的支付方式集合。两个配置首次初始化均 MUST 包含 walletwechatalipay管理员可独立取消或重新勾选任一方式但每个集合至少保留一种合法方式。C 端 SHALL 返回配置集合与当前业务场景限制的交集,订单创建和支付准备 MUST 在后端再次校验;配置为空、包含未知值、重复值或无法读取时失败关闭,不得放开全部方式。

Scenario: 卡配置不允许微信支付

  • WHEN 卡允许支付方式不包含微信且客户端尝试创建微信支付订单
  • THEN 系统拒绝订单或支付准备请求并返回支付方式不可用错误

Scenario: 前端读取设备允许方式

  • WHEN C 端初始化设备购买流程
  • THEN 响应只返回设备配置允许的支付方式列表

Scenario: 管理员独立关闭钱包

  • WHEN 管理员在卡或设备支付配置中取消勾选钱包且仍保留至少一种其他方式
  • THEN 系统保存配置,后续 C 端购包响应不再返回钱包且后端拒绝钱包支付请求

Scenario: 管理员取消全部方式

  • WHEN 管理员尝试取消某类资产的全部支付方式
  • THEN 系统拒绝更新并保留原有效配置

Requirement: 强充场景过滤钱包并保持自动购包

系统判定当前资产仍命中既有强充规则时C 端购包可选方式 MUST 在资产配置集合基础上剔除 wallet;后端创建订单时 MUST 执行相同校验。选择有效微信或支付宝后 SHALL 继续沿用充值入账和异步自动购包流程,不得降级为提示用户手工充值。

Scenario: 首次强充选择支付方式

  • WHEN 当前资产尚未触发对应系列的一次性佣金且本次购包命中强充规则
  • THEN 前端响应不包含钱包,微信或支付宝支付成功后系统自动完成充值入账和后续购包

Scenario: 绕过前端提交钱包强充

  • WHEN 客户绕过前端在强充购包请求中提交 wallet
  • THEN 后端拒绝请求且不创建套餐订单、充值单或支付单

Scenario: 一次性佣金已经触发

  • WHEN 当前资产对应系列的一次性佣金已经触发
  • THEN 系统不再按该规则强充,购包可选方式重新按当前资产配置集合返回

Requirement: 新订单选择方式并由待支付订单固化

普通购买和从历史订单发起的续费 SHALL 在创建新订单前选择当前有效支付方式;新订单创建成功后 MUST 固化该方式,后续支付不得在原订单上切换。续费不是修改历史订单,历史订单和既有待支付订单均不得被覆盖支付方式。

Scenario: 从历史订单发起续费

  • WHEN 客户从历史已支付订单发起续费
  • THEN 客户可从当前有效集合重新选择方式并创建一张新订单

Scenario: 待支付订单尝试切换方式

  • WHEN 客户支付既有待支付订单时提交与订单保存值不同的方式
  • THEN 系统拒绝切换并保持订单原支付方式