Files
one-pipe-system/openspec/changes/update-refund-management/specs/refund-pages/spec.md
2026-09-17 12:16:20 +08:00

34 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## ADDED Requirements
### Requirement: 退款列表页字段与操作适配
列表页 MUST 展示状态 5/6Tag并支持新增列退款方式、冻结实收金额、渠道退款状态、渠道退款流水号、渠道退款金额、失败分类、异常标记、当前退款套餐已用量MB、当前退款套餐总量MB操作列的「重新申请」MUST 按枚举可重提规则3/4/66 且 `anomaly_flag=1` 禁止)控制,审批类操作 MUST 按 `approval_instance_id` 与权限控制。
#### Scenario: 异常标记展示
- **GIVEN** 列表项 `anomaly_flag` 为 1
- **WHEN** 渲染异常标记列
- **THEN** 前端 MUST 明确标注异常并展示 `anomaly_reason`
### Requirement: 退款详情页尝试历史与字段展示
详情页 MUST 展示新增响应字段(退款方式、冻结实收金额、渠道退款状态/流水号/申请号/金额/时间、失败分类/原因/消息、异常标记与原因、套餐已用量/总量),并展示 `attempts[]` 尝试历史(尝试编号、退款方式、金额、审批状态、提交时间、凭证)。
#### Scenario: 详情展示新字段与尝试历史
- **GIVEN** 详情接口返回渠道退款与失败分类字段及 attempts 记录
- **WHEN** 渲染详情页
- **THEN** 前端 MUST 展示退款方式、渠道退款状态、失败分类与尝试历史
### Requirement: 创建退款弹窗
创建弹窗 MUST 新增「退款方式」选择(`original_route` 原路退回 / `customer_account` 客户收款信息 / `asset_wallet` 资产钱包 / `agent_wallet` 代理钱包);选择 `customer_account` 时 MUST 展开客户收款信息表单并要求同时提供至少 1 个退款凭证其余方式隐藏客户收款信息表单且凭证改为选填MUST 移除实收金额输入与提交字段。
#### Scenario: 切换退款方式联动
- **GIVEN** 创建弹窗打开且退款方式切换为 `customer_account`
- **WHEN** 客户收款信息为空
- **THEN** 前端 MUST 在提交时阻止并提示补充信息
### Requirement: 重提弹窗
重提弹窗 MUST 支持可选重新选择退款方式与客户收款信息(不传沿用原值),其余字段沿用现有重提逻辑;成功重提后 MUST 刷新列表并提示重新审批。
#### Scenario: 未重新选择时沿用原值
- **GIVEN** 重提弹窗打开且未重新选择退款方式与客户收款信息
- **WHEN** 提交重提
- **THEN** 请求体 MUST 不携带 `method` / `customer_account_info`,由后端沿用原值