Files
jiapuapp/docs/superpowers/specs/2026-07-21-g01-role-shortcut-design.md
T
2026-07-21 12:50:38 +08:00

1.9 KiB

G01 当前家谱角色与快捷入口联动设计

目标

修复 G01 切换到“我加入的家谱”后仍显示“管理员”和“申请审核”的状态错误,使当前家谱身份与可见入口始终由家谱自身的 membership 字段决定。

单一规则

data/mock.js 中每条家谱记录的 membership 是 G01 当前身份的唯一来源:

  • created:当前用户是管理员,顶部显示“管理员”,快捷入口包含“世系图、成员、字辈诗、申请审核”。
  • joined:当前用户是普通成员,顶部显示“成员”,隐藏“申请审核”,仅显示“世系图、成员、字辈诗”。

不增加兼容字段,不根据家谱所在列表、当前索引或名称推断身份。

页面行为

  • 首次进入页面时,根据当前选中家谱立即显示正确身份和入口。
  • 在切换弹层选择另一家谱后,身份文字和快捷入口同步更新。
  • 三个或四个快捷入口继续使用现有等宽布局,不增加占位项。
  • 切换家谱后维持现有的列表滚动归零行为。
  • 普通成员状态不提供“申请审核”的隐藏点击区域或导航路径。

修改范围

  • pages/genealogy/g01-my-genealogies.vue:从当前家谱计算身份文字和可见快捷入口。
  • G01 相关契约或运行时测试:覆盖管理员与普通成员双向切换。

不修改其他页面、视觉资产、数据结构和权限接口。

验收标准

  1. created 家谱显示“管理员”和四个快捷入口。
  2. joined 家谱显示“成员”,且页面中不存在“申请审核”入口。
  3. 从管理员切到成员,再切回管理员,两种状态都立即恢复正确。
  4. 现有 G01 布局、弹层、空态、加载态、错误态和滚动行为测试继续通过。
  5. MuMu 模拟器中管理员态与成员态均无错位、空白占位或底部遮挡。