|
|
@@ -1,9 +1,9 @@
|
|
1
|
1
|
# 我的订单 — 前端技术方案(C 端 · shop-app)
|
|
2
|
2
|
|
|
3
|
|
-> **依据:** 《我的订单功能需求.md》v1.1、《我的订单技术方案.md》v1.2
|
|
4
|
|
-> **关联:** 《确认订单页(多商品)前端技术方案》、《确认订单页(单商品)前端技术方案》
|
|
|
3
|
+> **依据:** 《我的订单功能需求.md》v1.2、《我的订单技术方案.md》v1.3
|
|
|
4
|
+> **关联:** 《确认订单页(多商品)前端技术方案》、《确认订单页(单商品)前端技术方案》、《购物车前端技术方案》
|
|
5
|
5
|
> **范围:** 消费者 APP **`shop-app`** 个人中心订单入口、订单列表/详情、续付、确认收货、评价、售后。
|
|
6
|
|
-> **实现状态:** v1.2 — 列表展示 **全部商品行**;评价在 **行内按钮**;底部 **无** 整单评价按钮。
|
|
|
6
|
+> **实现状态:** v1.4 — 列表 **售后状态优先展示**(MO-L4)、待付款 **应付** 文案、全量商品行 + 行内评价已落地。
|
|
7
|
7
|
|
|
8
|
8
|
---
|
|
9
|
9
|
|
|
|
@@ -16,6 +16,7 @@
|
|
16
|
16
|
| 鉴权 | 进入页 **`ensureApiToken()`**;无 Token → 引导登录 |
|
|
17
|
17
|
| 分页 | 列表 `pageNum` / `pageSize`;下拉刷新 + 上拉加载 |
|
|
18
|
18
|
| 支付 v1 | **Mock 弹窗** + `payOrder`;与确认订单共用 |
|
|
|
19
|
+| 防抖 | 列表/详情操作 `useActionGuard` |
|
|
19
|
20
|
| 再买一单 | 跳转 `subpackage/goods/detail?id={goodsId}` |
|
|
20
|
21
|
|
|
21
|
22
|
---
|
|
|
@@ -27,7 +28,8 @@
|
|
27
|
28
|
| 个人中心订单区 | `pages/mine/index`(区块) | 角标 + 快捷入口 |
|
|
28
|
29
|
| 订单列表 | `subpackage/order/list` | tab + 分页列表 |
|
|
29
|
30
|
| 订单详情 | `subpackage/order/detail` | 分状态展示与操作 |
|
|
30
|
|
-| 评价列表 | `subpackage/order/review-list` | 待评价/已评价 |
|
|
|
31
|
+| 评价列表 | `subpackage/order/review-list` | 待评价/已评价(展平商品行) |
|
|
|
32
|
+| 评价查看 | `subpackage/order/review-view` | 全页查看评价 |
|
|
31
|
33
|
| 评价编辑 | `subpackage/order/review-edit` | 打星+图文 |
|
|
32
|
34
|
| 售后列表 | `subpackage/order/aftersale-list` | 进行中/已完结 |
|
|
33
|
35
|
| 售后详情 | `subpackage/order/aftersale-detail` | 进度+处理结果 |
|
|
|
@@ -39,23 +41,13 @@
|
|
39
|
41
|
|------|------|
|
|
40
|
42
|
| 订单列表 | `tab=PENDING_PAY`(可选,默认 ALL) |
|
|
41
|
43
|
| 订单详情 | `orderId=900` |
|
|
|
44
|
+| 评价列表 | `tab=PENDING` / `tab=DONE` |
|
|
42
|
45
|
| 评价编辑 | `orderId=900&orderItemId=10` |
|
|
43
|
|
-| 提交售后 | `orderId=900&itemId=10` |
|
|
|
46
|
+| 提交售后 | `orderId=900`(整单,无需 itemId) |
|
|
44
|
47
|
|
|
45
|
|
-**路径常量:**
|
|
|
48
|
+**路径常量:** `utils/pageRoute.js`(`PAGE_ORDER_*`)
|
|
46
|
49
|
|
|
47
|
|
-```javascript
|
|
48
|
|
-// utils/pageRoute.js
|
|
49
|
|
-export const PAGE_ORDER_LIST = '/subpackage/order/list'
|
|
50
|
|
-export const PAGE_ORDER_DETAIL = '/subpackage/order/detail'
|
|
51
|
|
-export const PAGE_ORDER_REVIEW_LIST = '/subpackage/order/review-list'
|
|
52
|
|
-export const PAGE_ORDER_REVIEW_EDIT = '/subpackage/order/review-edit'
|
|
53
|
|
-export const PAGE_ORDER_AFTERSALE_LIST = '/subpackage/order/aftersale-list'
|
|
54
|
|
-export const PAGE_ORDER_AFTERSALE_DETAIL = '/subpackage/order/aftersale-detail'
|
|
55
|
|
-export const PAGE_ORDER_AFTERSALE_SUBMIT = '/subpackage/order/aftersale-submit'
|
|
56
|
|
-```
|
|
57
|
|
-
|
|
58
|
|
-**分包:** `pages.json` → `pkg-order` 注册上述页面;个人中心预加载 `pkg-order`(可选)。
|
|
|
50
|
+**分包:** `pages.json` → `pkg-order`;`pages/mine/index` 预加载 `pkg-order`。
|
|
59
|
51
|
|
|
60
|
52
|
---
|
|
61
|
53
|
|
|
|
@@ -63,17 +55,20 @@ export const PAGE_ORDER_AFTERSALE_SUBMIT = '/subpackage/order/aftersale-submit'
|
|
63
|
55
|
|
|
64
|
56
|
| 类型 | 路径 | 说明 |
|
|
65
|
57
|
|------|------|------|
|
|
66
|
|
-| API | `shop-app/api/order.js` | 扩展 badges/list/detail/pay/confirm |
|
|
|
58
|
+| API | `shop-app/api/order.js` | badges/list/detail/pay/confirm |
|
|
67
|
59
|
| API | `shop-app/api/orderReview.js` | 评价 list/submit/get |
|
|
68
|
60
|
| API | `shop-app/api/orderAftersale.js` | 售后 list/detail/submit |
|
|
69
|
|
-| 常量 | `shop-app/constants/order.js` | tab 枚举、状态文案 |
|
|
70
|
|
-| 映射 | `shop-app/utils/orderDisplay.js` | VO → 页面模型、actions 按钮 |
|
|
|
61
|
+| 常量 | `shop-app/constants/order.js` | tab、主状态、售后卡片文案 |
|
|
|
62
|
+| 映射 | `shop-app/utils/orderDisplay.js` | VO → 页面模型、actions、MO-L4 |
|
|
|
63
|
+| 操作 | `shop-app/utils/orderAction.js` | 支付弹窗、确认收货、售后入口 |
|
|
|
64
|
+| 导航 | `shop-app/utils/orderNav.js` | 列表/详情/评价/售后跳转 |
|
|
71
|
65
|
| 列表页 | `subpackage/order/list.vue` | |
|
|
72
|
66
|
| 详情页 | `subpackage/order/detail.vue` | |
|
|
73
|
67
|
| 评价/售后页 | `subpackage/order/*.vue` | |
|
|
74
|
|
-| 组件 | `components/order/OrderGoodsRow.vue` | 商品行摘要 + **行内评价/查看评价** |
|
|
75
|
|
-| 组件 | `components/order/OrderStatusBar.vue` | 状态+倒计时 |
|
|
76
|
|
-| 组件 | `components/order/OrderActionBar.vue` | 底部操作按钮 |
|
|
|
68
|
+| 组件 | `components/order/OrderGoodsRow.vue` | 商品行 + **行内评价** |
|
|
|
69
|
+| 组件 | `components/order/OrderStatusBar.vue` | 详情状态+倒计时 |
|
|
|
70
|
+| 组件 | `components/order/OrderActionBar.vue` | 底部操作(无整单评价) |
|
|
|
71
|
+| 组件 | `components/order/ReviewDoneSummaryCard.vue` | 已评价紧凑卡 |
|
|
77
|
72
|
|
|
78
|
73
|
---
|
|
79
|
74
|
|
|
|
@@ -96,20 +91,13 @@ export const PAGE_ORDER_AFTERSALE_SUBMIT = '/subpackage/order/aftersale-submit'
|
|
96
|
91
|
{ tab: 'ALL', pageNum: 1, pageSize: 10 }
|
|
97
|
92
|
```
|
|
98
|
93
|
|
|
99
|
|
-**tab 枚举(与后端 `OrderAppConstants` 一致):**
|
|
|
94
|
+**列表行新增字段(v1.2):**
|
|
100
|
95
|
|
|
101
|
|
-```javascript
|
|
102
|
|
-export const ORDER_TAB = {
|
|
103
|
|
- ALL: 'ALL',
|
|
104
|
|
- PENDING_PAY: 'PENDING_PAY',
|
|
105
|
|
- PENDING_SHIP: 'PENDING_SHIP',
|
|
106
|
|
- PENDING_RECEIVE: 'PENDING_RECEIVE',
|
|
107
|
|
- COMPLETED: 'COMPLETED',
|
|
108
|
|
- CLOSED: 'CLOSED',
|
|
109
|
|
- REVIEW_PENDING: 'REVIEW_PENDING',
|
|
110
|
|
- REVIEW_DONE: 'REVIEW_DONE'
|
|
111
|
|
-}
|
|
112
|
|
-```
|
|
|
96
|
+| 字段 | 说明 |
|
|
|
97
|
+|------|------|
|
|
|
98
|
+| `aftersaleStatus` | `null` / `1` 进行中 / `2` 已完结 |
|
|
|
99
|
+| `orderStatusText` | 订单主状态文案(待付款/待发货…) |
|
|
|
100
|
+| `items[]` | 全部商品行 |
|
|
113
|
101
|
|
|
114
|
102
|
### 4.2 评价 `api/orderReview.js`
|
|
115
|
103
|
|
|
|
@@ -119,11 +107,6 @@ export const ORDER_TAB = {
|
|
119
|
107
|
| `getOrderReview(orderId, orderItemId)` | GET | `/api/order/{orderId}/review?orderItemId=` |
|
|
120
|
108
|
| `submitReview(orderId, data)` | POST | `/api/order/{orderId}/review` |
|
|
121
|
109
|
|
|
122
|
|
-```javascript
|
|
123
|
|
-// submitReview body
|
|
124
|
|
-{ orderItemId: 10, score: 5, content: '很好', pics: ['https://.../1.jpg'] }
|
|
125
|
|
-```
|
|
126
|
|
-
|
|
127
|
110
|
### 4.3 售后 `api/orderAftersale.js`
|
|
128
|
111
|
|
|
129
|
112
|
| 方法 | HTTP | 路径 |
|
|
|
@@ -134,125 +117,184 @@ export const ORDER_TAB = {
|
|
134
|
117
|
|
|
135
|
118
|
---
|
|
136
|
119
|
|
|
137
|
|
-## 5. 页面逻辑
|
|
|
120
|
+## 5. 订单列表(`list.vue`)
|
|
138
|
121
|
|
|
139
|
|
-### 5.1 个人中心 · 订单入口
|
|
|
122
|
+### 5.1 页签与入口
|
|
140
|
123
|
|
|
141
|
|
-```text
|
|
142
|
|
-onShow → getOrderBadges()
|
|
143
|
|
- → 展示 pendingPayCount / pendingShipCount / pendingReceiveCount / aftersaleInProgressCount
|
|
144
|
|
- → 点击「全部」→ list?tab=ALL
|
|
145
|
|
- → 点击「待付款」→ list?tab=PENDING_PAY
|
|
146
|
|
- …
|
|
147
|
|
-```
|
|
|
124
|
+| 页签 | `ORDER_TAB` | 说明 |
|
|
|
125
|
+|------|-------------|------|
|
|
|
126
|
+| 全部 | `ALL` | |
|
|
|
127
|
+| 待付款 | `PENDING_PAY` | 续付入口 |
|
|
|
128
|
+| 待发货 | `PENDING_SHIP` | |
|
|
|
129
|
+| 待收货 | `PENDING_RECEIVE` | 平台已发货 |
|
|
|
130
|
+| 已完成 | `COMPLETED` | 交易成功 |
|
|
|
131
|
+| 已关闭 | `CLOSED` | |
|
|
|
132
|
+
|
|
|
133
|
+顶栏链接:**评价** → `review-list`;**退款/售后** → `aftersale-list`。
|
|
148
|
134
|
|
|
149
|
|
-### 5.2 订单列表
|
|
|
135
|
+### 5.2 卡片结构
|
|
150
|
136
|
|
|
151
|
137
|
```text
|
|
152
|
|
-onLoad(query.tab)
|
|
153
|
|
- → listOrders({ tab, pageNum, pageSize })
|
|
154
|
|
- → mapOrderListRow(row)
|
|
155
|
|
- → card.statusText:有 aftersaleStatus 时展示「售后处理中/售后已完成」,否则 orderStatusText
|
|
156
|
|
- → card.items[] 逐行渲染 OrderGoodsRow
|
|
157
|
|
- → 已完成:行内 reviewStatus=PENDING →「评价」;DONE →「查看评价」
|
|
158
|
|
- → 底部 OrderActionBar:过滤 REVIEW / VIEW_REVIEW,仅 PAY / 确认收货 / 售后 / 再买一单
|
|
159
|
|
- → 行内 @review → goReviewEdit(orderId, orderItemId) 或 showItemReview(...)
|
|
|
138
|
+order-card
|
|
|
139
|
+├── 店头:头像 + 店名 + statusText(MO-L4)
|
|
|
140
|
+├── 商品区:OrderGoodsRow × items.length(全量)
|
|
|
141
|
+│ └── 已完成:行内「评价」/「查看评价」
|
|
|
142
|
+├── 下单时间 + amountLabel + payAmountText
|
|
|
143
|
+├── 待付款:支付倒计时 payRemainSeconds
|
|
|
144
|
+└── OrderActionBar(无 REVIEW / VIEW_REVIEW)
|
|
160
|
145
|
```
|
|
161
|
146
|
|
|
162
|
|
-### 5.3 订单详情
|
|
|
147
|
+### 5.3 列表状态文案(MO-L4)
|
|
163
|
148
|
|
|
164
|
|
-```text
|
|
165
|
|
-onLoad(orderId) → getOrderDetail(orderId)
|
|
166
|
|
- → items[] 全量展示;行内评价按钮(同列表)
|
|
167
|
|
- → 底部 actions 不含整单评价
|
|
168
|
|
-```
|
|
|
149
|
+`mapOrderCardStatusText(orderStatusText, aftersaleStatus)`:
|
|
|
150
|
+
|
|
|
151
|
+| aftersaleStatus | 卡片 statusText |
|
|
|
152
|
+|-----------------|-----------------|
|
|
|
153
|
+| `1` | **售后处理中** |
|
|
|
154
|
+| `2` | **售后已完成** |
|
|
|
155
|
+| `null` / 无 | **orderStatusText**(待付款/待发货/交易成功…) |
|
|
|
156
|
+
|
|
|
157
|
+- 保留字段 `orderStatusText`、`aftersaleStatus` 供调试;**展示用 `statusText`**
|
|
|
158
|
+- 有售后态时 `statusIsAftersale=true`,样式蓝色区分
|
|
|
159
|
+- **详情页**仍展示订单主状态(不套用 MO-L4)
|
|
|
160
|
+
|
|
|
161
|
+### 5.4 金额文案
|
|
|
162
|
+
|
|
|
163
|
+| orderStatus | amountLabel |
|
|
|
164
|
+|-------------|-------------|
|
|
|
165
|
+| `0` 待支付 | **应付** |
|
|
|
166
|
+| 其它 | **实付** |
|
|
|
167
|
+
|
|
|
168
|
+---
|
|
|
169
|
+
|
|
|
170
|
+## 6. 订单详情(`detail.vue`)
|
|
169
|
171
|
|
|
170
|
|
-### 5.4 续付(待付款)
|
|
|
172
|
+- `OrderStatusBar`:主状态 + 待付款倒计时 / 关闭原因 / 最新物流摘要
|
|
|
173
|
+- 收货快照、全部 `items[]`(含服务保障、行小计、行备注)
|
|
|
174
|
+- 行内评价按钮(同列表)
|
|
|
175
|
+- 底部 `OrderActionBar`:过滤整单评价按钮
|
|
|
176
|
+- 分状态字段:支付时间、成交时间、关闭原因、物流节点(无地图)
|
|
|
177
|
+
|
|
|
178
|
+---
|
|
|
179
|
+
|
|
|
180
|
+## 7. 评价模块
|
|
|
181
|
+
|
|
|
182
|
+### 7.1 评价列表 `review-list.vue`
|
|
|
183
|
+
|
|
|
184
|
+| Tab | 展示 | 点击 |
|
|
|
185
|
+|-----|------|------|
|
|
|
186
|
+| 待评价 | 展平 `PENDING` 商品行 +「评价」 | 商品区→订单详情;评价→`review-edit` |
|
|
|
187
|
+| 已评价 | `ReviewDoneSummaryCard` 紧凑卡 | → `review-view` |
|
|
|
188
|
+
|
|
|
189
|
+### 7.2 评价编辑 `review-edit.vue`
|
|
|
190
|
+
|
|
|
191
|
+`orderId` + `orderItemId` → `submitReview`;顶部展示评价商品。
|
|
|
192
|
+
|
|
|
193
|
+### 7.3 一行一评
|
|
|
194
|
+
|
|
|
195
|
+- `reviewStatus` per `orderItemId`:`PENDING` / `DONE` / `NONE`
|
|
|
196
|
+- 底部 actions **不含** `REVIEW`、`VIEW_REVIEW`
|
|
|
197
|
+
|
|
|
198
|
+---
|
|
|
199
|
+
|
|
|
200
|
+## 8. 售后模块
|
|
|
201
|
+
|
|
|
202
|
+- 列表:`aftersale-list` 进行中/已完结(文案:商家处理中/售后完结)
|
|
|
203
|
+- 详情:`aftersale-detail` 进度 + 凭证图(`normalizePicList`)
|
|
|
204
|
+- 提交:`aftersale-submit` 类型/原因/凭证
|
|
|
205
|
+
|
|
|
206
|
+**与订单列表文案区分:** 订单卡片用「售后处理中/售后已完成」;售后专区用「商家处理中/售后完结」。
|
|
|
207
|
+
|
|
|
208
|
+---
|
|
|
209
|
+
|
|
|
210
|
+## 9. 页面流程
|
|
|
211
|
+
|
|
|
212
|
+### 9.1 个人中心角标
|
|
171
|
213
|
|
|
172
|
214
|
```text
|
|
173
|
|
-点击「继续支付」
|
|
174
|
|
- → payOrder(orderId)
|
|
175
|
|
- ├── 成功 → toast + 刷新详情 / 跳转待发货 tab
|
|
176
|
|
- └── 失败(超时等)→ 提示 + 刷新
|
|
|
215
|
+onShow → getOrderBadges()
|
|
|
216
|
+ → pendingPayCount / pendingShipCount / pendingReceiveCount / aftersaleInProgressCount
|
|
|
217
|
+ → 点击快捷入口带 tab 进 list 或 aftersale-list
|
|
177
|
218
|
```
|
|
178
|
219
|
|
|
179
|
|
-### 5.5 确认收货
|
|
|
220
|
+### 9.2 续付(待付款)
|
|
180
|
221
|
|
|
181
|
222
|
```text
|
|
182
|
|
-uni.showModal 二次确认
|
|
183
|
|
- → confirmReceive(orderId)
|
|
184
|
|
- → 可选 navigateTo review-edit?orderId=
|
|
|
223
|
+「去支付」→ openPayModal → payOrder
|
|
|
224
|
+ ├── 成功 → 刷新列表/详情
|
|
|
225
|
+ └── 失败/超时 → Toast + 刷新
|
|
185
|
226
|
```
|
|
186
|
227
|
|
|
187
|
|
-### 5.6 评价编辑
|
|
|
228
|
+### 9.3 确认收货
|
|
188
|
229
|
|
|
189
|
230
|
```text
|
|
190
|
|
-review-edit?orderId=&orderItemId=
|
|
191
|
|
- → submitReview(orderId, { orderItemId, score, content, pics })
|
|
192
|
|
- → 返回列表/详情并刷新
|
|
|
231
|
+showModal → confirmReceive → 可选 goReviewEdit
|
|
193
|
232
|
```
|
|
194
|
233
|
|
|
195
|
|
-### 5.7 提交售后
|
|
|
234
|
+### 9.4 提交售后(整单)
|
|
196
|
235
|
|
|
197
|
236
|
```text
|
|
198
|
|
-从详情带 orderId + itemId 进入
|
|
199
|
|
- → 选 applyType → 动态展示原因选项、是否填 returnQuantity
|
|
200
|
|
- → 凭证图 upload
|
|
201
|
|
- → submitAftersale({ orderId, orderItemId, applyType, ... })
|
|
202
|
|
- → 跳转 aftersale-detail 或 aftersale-list?tab=IN_PROGRESS
|
|
|
237
|
+详情/列表「申请售后」
|
|
|
238
|
+ → goAftersaleSubmit(orderId)(不选商品、不弹 ActionSheet)
|
|
|
239
|
+ → aftersale-submit 展示订单全部 items[]
|
|
|
240
|
+ → 申请金额默认订单实付;退货数量上限为整单件数之和
|
|
|
241
|
+ → submitAftersale({ orderId, orderItemId: 首行ID, ... })
|
|
|
242
|
+ ※ orderItemId 为接口兼容字段,业务口径为整单售后
|
|
|
243
|
+ → aftersale-detail 或 aftersale-list
|
|
203
|
244
|
```
|
|
204
|
245
|
|
|
205
|
246
|
---
|
|
206
|
247
|
|
|
207
|
|
-## 6. 展示映射 `orderDisplay.js`
|
|
|
248
|
+## 10. 展示映射 `orderDisplay.js`
|
|
208
|
249
|
|
|
209
|
|
-- `mapOrderListRow`:`items[]` 全量映射;`firstItem = items[0]` 兼容
|
|
210
|
|
-- **列表状态文案:**
|
|
211
|
|
- - 透传 `orderStatusText`(订单主状态)
|
|
212
|
|
- - 透传 `aftersaleStatus`(`null` / `1` / `2`)
|
|
213
|
|
- - `statusText`(卡片展示):`aftersaleStatus === '1'` → **售后处理中**;`'2'` → **售后已完成**;否则 **orderStatusText**
|
|
214
|
|
-- 单行含 `reviewStatus`(`PENDING` / `DONE` / `NONE`)、`orderItemId`
|
|
215
|
|
-- `footerActions(actions)`:过滤 `REVIEW`、`VIEW_REVIEW`
|
|
216
|
|
-- `showItemReview(orderId, orderItemId)`:弹窗展示已评内容(`orderAction.js`)
|
|
217
|
|
-- 售后专区列表/详情仍用 `mapAftersaleStatusText`(商家处理中 / 售后完结),与 **订单列表** 文案区分
|
|
|
250
|
+| 函数 | 用途 |
|
|
|
251
|
+|------|------|
|
|
|
252
|
+| `mapOrderListRow` | 列表卡片;`items[]` 全量;MO-L4 `statusText`;`amountLabel` |
|
|
|
253
|
+| `mapOrderCardStatusText` | 列表售后态优先 |
|
|
|
254
|
+| `mapOrderDetail` | 详情;主状态 `orderStatusText` |
|
|
|
255
|
+| `getItemReviewAction` | 行内评价按钮 |
|
|
|
256
|
+| `mapActions` | 过滤整单评价 |
|
|
|
257
|
+| `flattenPendingReviewItems` / `mapReviewDoneRow` | 评价列表 |
|
|
|
258
|
+| `mapAftersaleListRow` / `mapAftersaleDetail` | 售后专区 |
|
|
218
|
259
|
|
|
219
|
260
|
---
|
|
220
|
261
|
|
|
221
|
|
-## 7. 与确认订单衔接
|
|
|
262
|
+## 11. 与确认订单衔接
|
|
222
|
263
|
|
|
223
|
264
|
| 场景 | 行为 |
|
|
224
|
265
|
|------|------|
|
|
225
|
|
-| 支付成功页 | 可 `redirectTo` list?tab=PENDING_SHIP 或 detail |
|
|
226
|
|
-| 取消支付 | list?tab=CLOSED 或 detail 已关闭 |
|
|
227
|
|
-| pay/cancel API | **共用** `api/order.js` |
|
|
|
266
|
+| 支付成功 | `pay-result` 或进 `list?tab=PENDING_SHIP` |
|
|
|
267
|
+| 取消支付 | `list?tab=CLOSED` 或详情已关闭 |
|
|
|
268
|
+| 购物车结算 | `checkout-cart` → 支付后进订单列表 |
|
|
228
|
269
|
|
|
229
|
270
|
---
|
|
230
|
271
|
|
|
231
|
|
-## 8. 测试要点(前端)
|
|
|
272
|
+## 12. 联调检查清单
|
|
232
|
273
|
|
|
233
|
|
-| 编号 | 场景 |
|
|
234
|
|
-|------|------|
|
|
235
|
|
-| F1 | 未登录进入列表 → 引导登录 |
|
|
236
|
|
-| F2 | 角标与列表 tab 数量一致 |
|
|
237
|
|
-| F3 | 待付款倒计时展示与续付 |
|
|
238
|
|
-| F4 | 确认收货后状态变交易成功 |
|
|
239
|
|
-| F5 | 多商品订单列表展示全部 items;行内评价 |
|
|
240
|
|
-| F6 | 底部无整单「评价」按钮 |
|
|
241
|
|
-| F7 | 评价提交后该行变「查看评价」 |
|
|
242
|
|
-| F8 | 售后提交后进进行中列表 |
|
|
243
|
|
-| F9 | 列表存在 aftersaleStatus=1 → 卡片状态「售后处理中」;=2 →「售后已完成」;null → orderStatusText |
|
|
|
274
|
+- [ ] 未登录引导登录
|
|
|
275
|
+- [ ] 角标与列表 tab 一致
|
|
|
276
|
+- [ ] 多商品订单列表展示全部 items
|
|
|
277
|
+- [ ] 行内评价;底部无整单评价
|
|
|
278
|
+- [ ] `aftersaleStatus=1` → 列表「售后处理中」;`=2` →「售后已完成」
|
|
|
279
|
+- [ ] 无售后 → 显示 orderStatusText
|
|
|
280
|
+- [ ] 待付款显示「应付」+ 倒计时 + 去支付
|
|
|
281
|
+- [ ] 确认收货 → 交易成功 + 可评价
|
|
|
282
|
+- [ ] 评价列表待评价/已评价交互
|
|
|
283
|
+- [ ] 售后提交后进进行中列表
|
|
244
|
284
|
|
|
245
|
285
|
---
|
|
246
|
286
|
|
|
247
|
|
-## 9. 修订记录
|
|
|
287
|
+## 13. 修订记录
|
|
248
|
288
|
|
|
249
|
289
|
| 版本 | 说明 |
|
|
250
|
290
|
|------|------|
|
|
251
|
|
-| **v1.3** | 订单列表 `aftersaleStatus` 前端映射 statusText;与后端 orderStatusText 分离 |
|
|
252
|
|
-| **v1.2** | 列表/详情/评价列表:`items[]` 全量;行内评价;底部 actions 去评价 |
|
|
253
|
|
-| **v1.0** | 首版:路由、API、页面流程、与后端接口对齐 |
|
|
254
|
|
-| **v1.1** | 落地 list/detail/review/aftersale 分包页、个人中心订单入口与角标、公共组件 |
|
|
|
291
|
+| **v1.5** | 售后改为 **整单申请**:去掉多商品选择;`aftersale-submit` 展示全量商品;路由仅 `orderId` |
|
|
|
292
|
+| **v1.4** | 对齐需求 **v1.2**:`mapOrderCardStatusText`(MO-L4)、待付款「应付」、常量 `ORDER_AFTERSALE_CARD_*`;文档补全评价/售后/确认订单边界 |
|
|
|
293
|
+| **v1.3** | 文档规划 aftersaleStatus 映射(代码待落地) |
|
|
|
294
|
+| **v1.2** | 列表/详情全量 items;行内评价;底部去整单评价 |
|
|
|
295
|
+| **v1.1** | 落地分包页、个人中心角标、公共组件 |
|
|
|
296
|
+| **v1.0** | 首版路由与 API |
|
|
255
|
297
|
|
|
256
|
298
|
---
|
|
257
|
299
|
|
|
258
|
|
-*文档版本:v1.3 · 关联《我的订单功能需求.md》v1.2、《我的订单技术方案.md》v1.3*
|
|
|
300
|
+*文档版本:v1.5 · 关联《我的订单功能需求.md》v1.2、《我的订单技术方案.md》v1.3*
|