docs: design presign detail bottom bar with order-level actions only
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
1 parent
e16afdee95
commit
f040f579d1
1 file changed
+56
@@ -0,0 +1,56 @@
|
||||
# 预签约详情底栏仅订单级三按钮 — 设计说明
|
||||
|
||||
**日期:** 2026-10-14
|
||||
**状态:** 已确认(方案 1)
|
||||
**范围:** `mobile-oa-h5` 市场专员 / 地区经理「预签约订单」详情底栏;`mobile-h5` 经 WebView 复用,无独立改动
|
||||
**前置:** 意向金转账操作已在编辑页转账卡片完成
|
||||
|
||||
## 1. 目标
|
||||
|
||||
列表卡片进入详情后,底部操作栏**只展示**订单级按钮(在后端授权范围内):
|
||||
|
||||
- 编辑
|
||||
- 转正式协议
|
||||
- 删除
|
||||
|
||||
不再在详情底栏展示意向金相关动作(添加 / 编辑 / 删除意向金、提交财务确认、撤回等)。意向金仅在编辑页操作。
|
||||
|
||||
## 2. 决策摘要
|
||||
|
||||
| 项 | 决策 |
|
||||
|----|------|
|
||||
| 实现点 | 改 `collectAllowedActions` 的 `presign` 分支 |
|
||||
| 详情可用动作 | 仅 `edit` / `convert` / `delete`(`PRESIGN_ORDER_ACTIONS`) |
|
||||
| 权限 | 仍取详情 `allowedActions` / `actions`,再与上述白名单求交 |
|
||||
| 意向金 | 编辑页转账卡片继续用各笔 `allowedActions` + `transferAllowedActions` |
|
||||
| 端覆盖 | 专员、经理同一套;不改 `mobile-h5` 壳 |
|
||||
|
||||
## 3. 实现要点
|
||||
|
||||
### 3.1 `action-policy.js`
|
||||
|
||||
`collectAllowedActions('presign', …)`:
|
||||
|
||||
- **保留**:从 `detail.allowedActions`(或 `detail.actions`)过滤出 `edit` / `convert` / `delete`
|
||||
- **移除**:拼装 `transfers[].allowedActions` → nested 转账动作;拼装 `transferAllowedActions` → `create-transfer`
|
||||
|
||||
`PRESIGN_ORDER_ACTIONS`、`MarketBottomBar` 标签(编辑 / 转正式协议 / 删除)已存在,无需改文案。
|
||||
|
||||
`MarketModuleDetail` 继续调用 `collectAllowedActions`,无需为预签再加一层过滤。
|
||||
|
||||
### 3.2 测试
|
||||
|
||||
更新 `module-actions.test.js`(及任何断言「详情含 submit-transfer / create-transfer」的用例):
|
||||
|
||||
- 有订单授权时详情动作仅为 `edit` / `convert` / `delete`(子集)
|
||||
- 转账级 `allowedActions` / `transferAllowedActions` **不再**出现在 `collectAllowedActions` 返回值中
|
||||
- 非预签模块(payment / freight 等)行为不变
|
||||
|
||||
可选:契约测试确认详情底栏不出现「添加意向金」「提交财务确认」等文案绑定(若已有详情契约则改之)。
|
||||
|
||||
## 4. 非目标
|
||||
|
||||
- 不改编辑页意向金卡片与保存自动提交财务确认逻辑
|
||||
- 不改 Web 管理端
|
||||
- 不改后端 `allowedActions` 字段结构(后端仍可下发转账动作;前端详情底栏不再消费)
|
||||
- 不强制已转正式 / 无权限时仍显示三个按钮(无权限则不显示对应项)
|
||||
Reference in new issue
Block a user