fix: some

This commit is contained in:
luo
2026-09-17 12:16:20 +08:00
parent 2308d82d0f
commit 76d4e4ec02
126 changed files with 11671 additions and 294 deletions

View File

@@ -0,0 +1,66 @@
## ADDED Requirements
### Requirement: 换货业务数据迁移状态契约
换货单对象 MUST 提供 migration_statusnot_migrated/pending/migrated/failed、migration_status_name中文与 migration_failure_reason仅 failed 时返回);迁移结果判定 MUST 以 migration_status 为准,前端 MUST NOT 再用 migrate_data/migration_completed/migration_balance 推断。列表、详情、创建/发货/完成返回的同一个换货对象 MUST 携带上述字段。
#### Scenario: 列表与详情返回迁移状态
- **GIVEN** 用户打开换货列表或详情
- **WHEN** 响应数据加载
- **THEN** 每单 MUST 展示 migration_status 与 migration_status_name
- **AND** migration_status=failed 时 MUST 展示 migration_failure_reason其他状态 MUST NOT 依赖该字段
#### Scenario: 迁移结果以状态字段为准
- **WHEN** 前端判定迁移结果
- **THEN** 判定依据 MUST 使用 migration_statuspending/migrated/failed
- **AND** 不得使用 migrate_data/migration_completed/migration_balance 推断
### Requirement: 换货列表与详情迁移状态展示
换货列表 MUST 在「状态」列之后新增「迁移状态」列并展示中文名;换货详情 MUST 展示迁移状态failed 时展示后端返回的安全失败原因。
#### Scenario: 列表迁移状态列
- **GIVEN** 换货列表加载完成
- **WHEN** 渲染表格
- **THEN** 「状态」列后 MUST 出现「迁移状态」列
- **AND** 该列 MUST 展示 migration_status_name
#### Scenario: 详情展示失败原因
- **GIVEN** 某换货单 migration_status=failed
- **WHEN** 用户打开详情
- **THEN** 详情 MUST 展示迁移状态为「迁移失败」
- **AND** MUST 展示后端返回的 migration_failure_reason 安全文案
### Requirement: 迁移失败单的确认完成权限控制
非 failed 换货单的「确认完成」权限 MUST 与既有逻辑一致exchange:completemigration_status=failed 的物流换货单重试 MUST 仅对超级管理员/平台账号开放,代理/企业账号前端 MUST NOT 渲染该入口,后端仍以 403/1005 兜底。
#### Scenario: 代理/企业账号隐藏重试入口
- **GIVEN** 当前账号为代理或企业账号
- **AND** 换货单 migration_status=failed 且 status=3
- **WHEN** 渲染行操作
- **THEN** 前端 MUST NOT 显示「确认完成」操作
#### Scenario: 超管/平台账号可重试
- **GIVEN** 当前账号为超级管理员或平台账号
- **AND** 换货单 migration_status=failed
- **WHEN** 渲染行操作
- **THEN** 前端 MUST 提供「确认完成」重试入口
### Requirement: 迁移执行失败1206处理
确认完成触发迁移执行失败时后端返回 code=1206 与安全文案,换货单保持「已发货待确认」,修复条件后可重试;前端 MUST 展示后端安全文案且不得改变订单状态展示。
#### Scenario: 1206 提示并可重试
- **GIVEN** 用户对含迁移的换货单执行确认完成
- **WHEN** 后端返回 code=1206
- **THEN** 前端 MUST 展示后端安全文案(不含数据库/渠道原文)
- **AND** 换货单状态仍展示为「已发货待确认」
- **AND** 用户可以修复条件后再次发起确认完成

View File

@@ -0,0 +1,25 @@
## ADDED Requirements
### Requirement: 店铺负责人导入任务字段对齐生成文档
店铺负责人导入任务对象列表、详情、创建响应MUST 按生成文档提供 task_no、file_name、creator_name、started_at、completed_at、status_name任务状态中文名行级结果 MUST 提供 status_name。前端类型与导入页展示 MUST 对齐;创建导入任务返回任务对象(含 id前端不再依赖 task_id 字段。
#### Scenario: 任务列表展示扩展字段
- **GIVEN** 用户进入业务负责人导入任务列表
- **WHEN** 列表加载完成
- **THEN** 前端 MUST 展示任务编号、文件名、创建人、开始/完成时间与状态中文名
- **AND** 原有状态/总数/成功/失败/创建时间展示 MUST 保留
#### Scenario: 结果抽屉与行级详情
- **GIVEN** 用户查看导入结果抽屉
- **WHEN** 展示任务详情
- **THEN** 任务级信息 MUST 展示文件名、创建人、开始/完成时间、状态中文名
- **AND** 行级表格 MUST 展示 status_name
#### Scenario: 创建导入任务使用任务对象返回
- **WHEN** 前端调用 POST /api/admin/shops/business-owner-imports 创建任务
- **THEN** 返回值 MUST 按任务对象解析file_key 校验与异步执行语义不变)
- **AND** 前端 MUST 使用返回对象的 id 打开结果抽屉