You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
22 lines
1.5 KiB
22 lines
1.5 KiB
|
3 weeks ago
|
# 列偏好(crm-preference)
|
||
|
|
|
||
|
|
平台级的用户列表列偏好能力,与 `crm-dict` 平行的通用模块:用户级列显隐 + 拖拽排序,按 scope 分组。本次只做到「线索够用的最小通用深度」,不做全平台通用化打磨。契约仅 `get / save` 两法。
|
||
|
|
|
||
|
|
## Language
|
||
|
|
|
||
|
|
**列偏好**:
|
||
|
|
一个用户在某个列表页上的列显隐与列顺序设置,存于 `user_column_preference(user_id, scope_key, visible_keys, column_order)`。用户级、私有,互不影响。
|
||
|
|
_Avoid_: 表格配置、字段配置、视图设置
|
||
|
|
|
||
|
|
**scope**:
|
||
|
|
列偏好的作用范围键 `scope_key`,由业务方约定的稳定 code(如 `lead.public_pool`)。**每菜单独立**——线索域有 4 个 scope(公海 / 我的线索 / 我的关注 / 线索管理),互不同步(推翻原型「共用一套」的说法)。
|
||
|
|
_Avoid_: 页面 ID、菜单 key、视图类型
|
||
|
|
|
||
|
|
**字段池**:
|
||
|
|
某 scope 下所有可显隐 / 可排序的候选列,**归业务方定义**,`crm-preference` 不持有字段清单,只存用户勾选与排序的结果(`visible_keys` / `column_order`)。
|
||
|
|
_Avoid_: 列定义、可选字段表、schema
|
||
|
|
|
||
|
|
**保存才落库**:
|
||
|
|
列偏好的持久化时机:用户在【列表设置】弹窗内点【保存】才把显隐 + 顺序一起写库;表头拖拽的临时顺序仅前端本地保留(关页面 / 刷新即丢),【取消】或未保存关页面则本轮变更全部作废(推翻原型「拖拽实时保存」的说法)。
|
||
|
|
_Avoid_: 实时保存、自动保存、拖拽即存
|