37 lines
1.9 KiB
Markdown
37 lines
1.9 KiB
Markdown
## ADDED Requirements
|
||
|
||
### Requirement: 退款审批提交失败状态与后台重提
|
||
|
||
退款后台 SHALL 识别业务状态 `7` 为「审批提交失败」终态,列表与详情 MUST 支持该状态展示和筛选。有原重提权限的用户 SHALL 使用原退款重提表单重新发起,不得恢复失败单的原审批。
|
||
|
||
#### Scenario: 显式提交失败
|
||
|
||
- **WHEN** 退款记录 `status=7`
|
||
- **THEN** 列表和详情 MUST 展示失败标签,状态筛选 MUST 允许值 7
|
||
- **AND** MUST 隐藏恢复及补发审批,不因陈旧 `approval_recoverable=true` 重新显示
|
||
- **AND** 有重提权限时 MUST 通过 `POST /api/admin/refunds/{id}/resubmit` 重新发起
|
||
- **AND** 成功后 MUST 刷新记录,不复用旧审批实例
|
||
|
||
#### Scenario: 不混淆原路退款失败
|
||
|
||
- **WHEN** 退款记录 `status=6`
|
||
- **THEN** 页面 MUST 继续按原「原路退款失败」含义及 `anomaly_flag` 限制处理
|
||
- **AND** MUST NOT 将该状态改成审批提交失败或放宽其原有异常限制
|
||
|
||
#### Scenario: 结果未知保留恢复资格
|
||
|
||
- **WHEN** 退款提交结果未知,业务状态不是 7,后端允许恢复且用户有原权限
|
||
- **THEN** 页面 MUST 保留恢复审批入口
|
||
- **AND** MUST NOT 直接把未知结果改成终态或创建重复申请
|
||
|
||
### Requirement: 退款企微结束后使用后台重新发起
|
||
|
||
后台退款页面 SHALL 对企微拒绝/撤销/删除后返回的 `status=3` 按「已拒绝」处理,允许符合原权限和规则的后台重提。页面 MUST NOT 引导用户在企微重新提交作为后台退款重提方式。
|
||
|
||
#### Scenario: 已拒绝退款重新发起
|
||
|
||
- **WHEN** 用户查看状态 3 的退款,且具备原重提权限
|
||
- **THEN** 页面 MUST 保留后台重新发起入口并调用原 `resubmit` 接口
|
||
- **AND** 若存在「在企微重新提交」文案,MUST 移除或改为后台重新发起指引
|
||
- **AND** 换货资格 MUST 仍由换货接口判断,不新增退款状态前置拦截
|