修复商城订单列表展示与模拟数据

This commit is contained in:
czl231
2026-08-16 00:47:35 +08:00
parent 26cd78ac12
commit 2942d9a71c
7 changed files with 238 additions and 7 deletions

View File

@@ -0,0 +1,56 @@
# 商城订单列表展示修复操作日志
操作时间2026-08-16
操作类型:修改
影响模块:平台总后台电商平台管理、商城订单只读列表
## 操作前状态
- 商城订单用户关系按普通唯一标识字段展示,管理员只能看到 UUID。
- Mock 数据误用跨领域通用状态 `10``35`,与商城正式实现的独立交易状态不一致。
- 已支付 Mock 订单缺少支付时间,部分 Mock 订单的商品金额和应付金额为零。
## 具体操作
1. 将商城订单用户列改为名称优先展示,并保留 UUID 复制与详情跳转。
2. 保持商城独立交易状态:`16=待支付``18=已支付``22=已取消`
3. 将 Mock 待支付订单从 `10` 修复为 `16`,已支付订单从 `35` 修复为 `18`
4. 补齐 Mock 订单商品金额、应付金额及已支付订单的支付时间。
5. 待支付订单的空支付时间明确显示为“未支付”,不再显示无语义短横线。
6. 增加独立幂等修复命令,只更新固定十条商城 Mock 订单。
7. 增加前端展示契约与后端种子测试,防止跨领域状态再次混入商城订单。
## 行为变化
- 修改前:用户 UUID 作为主要信息Mock 订单状态、金额和支付时间与商城流程不一致。
- 修改后:用户名称作为主要信息,待支付记录明确显示“未支付”;重新执行 Mock 数据命令时会幂等修复既有 Mock 订单。
- 商城订单仍为只读资源,正式业务接口、权限和非 Mock 订单数据均未改变。
## 代码变更
- `frontend/platform_admin/src/api/resources.ts`:更新商城订单用户展示契约。
- `frontend/platform_admin/scripts/check-resource-display-contracts.mjs`:增加商城订单回归检查。
- `backend/api/internal/seed/mock.go`:修正并幂等修复 Mock 商城订单状态、金额和支付时间。
- `backend/api/internal/seed/mock_test.go`:增加商城独立状态回归测试。
- `backend/api/cmd/cli/main.go`:增加 `repair-mock-ec-order` 独立修复命令。
- `docs/项目文档_平台资源中文展示统一_v1.0.md`:记录 v1.4 变更。
## 验证结果
- `pnpm resource-display-contracts:check`:通过。
- `pnpm type:check`:通过。
- `pnpm build`通过Vite 成功完成 2621 个模块的生产构建。
- `go test ./internal/seed ./cmd/cli`:通过。
- `go test ./...`:通过。
- `go vet ./...`:通过。
- `go build ./cmd/main/main.go`:通过。
- `go run ./cmd/cli repair-mock-ec-order`:通过,固定十条商城 Mock 订单已全部修复。
- 完整 `mock-data` 命令曾因既有 `mock_producer_010` 用户名冲突失败,事务已整体回滚;随后使用独立修复命令成功处理商城订单,未修改冲突的生产商数据。
## 风险评估
- 仅固定 `MOCK-ECORDER-*` 与 Mock identity 范围的数据会被种子逻辑修复。
- 关系加载失败时继续显示“名称加载失败”UUID 可用于排障。
- 既有重复生产商 Mock 账号仍需单独排查,不属于本次商城订单展示修复范围。

View File

@@ -65,3 +65,4 @@ frontend/platform_admin/
- v1.2:树形资源统一改为树形表格,明确展示名称、排序、状态、系统标识和操作,唯一标识降级为复制入口。
- v1.2.1:补齐 Arco 表格 `columns` 插槽,修复树形表格容器存在但列和数据不渲染的问题。
- v1.3购物车列表的用户与商品关系列统一展示可读名称UUID 降级为复制和排障信息。
- v1.4商城订单列表统一展示用户名称未支付时间明确显示“未支付”Mock 订单改用商城独立交易状态,并补齐金额与支付时间。