docs: specify organization menu switches
parent
22bed6e1f5
commit
01e68b255b
@ -0,0 +1,34 @@
|
|||||||
|
# 学校组织管理菜单开关设计
|
||||||
|
|
||||||
|
## 目标
|
||||||
|
|
||||||
|
让平台超管能为每所学校独立启用院系管理、专业管理和行政班管理,并让教师端菜单、班级页面与后端写接口一致地遵守配置。
|
||||||
|
|
||||||
|
## 配置模型
|
||||||
|
|
||||||
|
`school_product_config` 增加三个布尔字段:`faculty_management_enabled`、`major_management_enabled`、`admin_class_management_enabled`。
|
||||||
|
|
||||||
|
组织模式仍是快捷预设:标准学校将三个开关置为开启并由学校维护学生名单;教师教学班维护名单将三个开关置为关闭并由教师维护名单。手工调整任一开关后,组织模式记录为 `CUSTOM`;非行政班模式仍由教师维护名单。
|
||||||
|
|
||||||
|
## 依赖规则
|
||||||
|
|
||||||
|
- 关闭院系管理时,系统自动关闭专业管理和行政班管理。
|
||||||
|
- 关闭专业管理时,系统自动关闭行政班管理。
|
||||||
|
- 行政班管理只能在院系管理和专业管理均开启时启用。
|
||||||
|
- 已有院系、专业、行政班及其成员数据不会被删除;关闭开关只会隐藏菜单并拒绝新的相关写操作。
|
||||||
|
|
||||||
|
## 界面行为
|
||||||
|
|
||||||
|
平台学校编辑窗保留组织模式下拉框作为预设,并新增三个开关。专业和行政班开关在依赖未满足时禁用并显示原因。切换预设会同步更新开关;手动切换有效开关后显示“自定义配置”。
|
||||||
|
|
||||||
|
教师端侧栏按三个开关分别过滤院系、专业菜单;班级管理菜单始终保留,但行政班标签、筛选和创建入口仅在行政班开关开启时显示。教师教学班名单模式继续隐藏教师管理菜单。
|
||||||
|
|
||||||
|
## 后端约束
|
||||||
|
|
||||||
|
API 返回完整配置。院系、专业和行政班写操作分别检查对应开关;直接调用接口不能绕过前端。平台超管可修改配置。配置更新会规范化依赖关系并保留既有数据。
|
||||||
|
|
||||||
|
## 验收
|
||||||
|
|
||||||
|
- 教师名单学校三个开关均关闭,教师端不显示院系/专业菜单,班级页无行政班。
|
||||||
|
- 打开院系和专业、关闭行政班后,院系与专业菜单可见,班级页仅显示教学班。
|
||||||
|
- 关闭院系会自动关闭其余两个开关;现存组织数据可在重新打开后继续访问。
|
||||||
Loading…
Reference in New Issue