178 lines
5.7 KiB
Markdown
178 lines
5.7 KiB
Markdown
# 菜单管理
|
||
|
||
## 1. 功能概述
|
||
|
||
菜单管理模块用于配置系统的菜单结构,支持后台管理端和PDA端的菜单配置,实现菜单的增删改查、排序和权限关联功能。
|
||
|
||
**核心功能:**
|
||
|
||
- 菜单树形结构管理:支持多层级菜单的创建、编辑和删除
|
||
- 菜单分类管理:区分后台(admin)和PDA模块的菜单
|
||
- 菜单状态控制:支持菜单的启用/禁用操作
|
||
- 菜单排序:支持拖拽排序,调整菜单显示顺序
|
||
- 菜单权限关联:新增菜单自动关联超级管理员角色
|
||
- 菜单导航属性:控制菜单是否在导航栏显示
|
||
|
||
**功能对应截图** :
|
||
|
||

|
||
|
||
## 2. 术语说明
|
||
|
||
#### 2.1.1 菜单相关术语
|
||
|
||
| 术语 | 定义 | 说明 |
|
||
|------|------|------|
|
||
| 顶层菜单 | 没有上级菜单的菜单节点 | 作为菜单树的根节点 |
|
||
| 子菜单 | 有上级菜单的菜单节点 | 可多级嵌套 |
|
||
| 模块 | 菜单所属的系统模块 | admin(后台)、pda(PDA端) |
|
||
| 导航属性 | 菜单是否在导航栏显示 | 可见(1)或隐藏(0) |
|
||
| 链接类型 | 菜单链接的类型 | 模块(0)或外链(1) |
|
||
| 打开方式 | 链接的打开方式 | 当前窗口(_self)或新窗口(_blank) |
|
||
|
||
## 3. 菜单管理操作
|
||
|
||
### 3.1 菜单查询
|
||
|
||
**查询条件:**
|
||
|
||
| 查询条件 | 说明 |
|
||
|---------|------|
|
||
| 模块 | 选择后台(admin)或PDA模块 |
|
||
| 状态 | 筛选启用或禁用状态的菜单 |
|
||
| 导航属性 | 筛选可见或隐藏的菜单 |
|
||
| 菜单深度 | 控制菜单树的展开层级 |
|
||
|
||
**操作步骤:**
|
||
|
||
1. 进入【系统设置】→【菜单管理】→【菜单配置】
|
||
2. 在顶部查询区域选择查询条件
|
||
3. 点击【查询】按钮获取菜单列表
|
||
4. 点击【重置】按钮清空查询条件
|
||
|
||
**功能对应截图** :
|
||
|
||

|
||
|
||
### 3.2 新增菜单
|
||
|
||
**操作步骤:**
|
||
|
||
1. 进入【系统设置】→【菜单管理】→【菜单配置】
|
||
2. 点击【新增顶层菜单】按钮,或在已有菜单上点击【新增】按钮添加子菜单
|
||
3. 填写菜单表单信息
|
||
4. 点击【确定】完成新增
|
||
|
||
**字段说明:**
|
||
|
||
| 字段 | 说明 | 必填 |
|
||
|------|------|------|
|
||
| 上级菜单 | 选择父菜单,不选择表示顶层菜单 | 否 |
|
||
| 名称 | 菜单的显示名称 | 是 |
|
||
| 别名 | 菜单的别名标识,API类型菜单必填 | 否 |
|
||
| 图标 | 菜单图标,可选择或自定义 | 否 |
|
||
| 排序 | 菜单的排序序号,数值越小越靠前 | 是 |
|
||
| 导航 | 控制菜单是否在导航栏显示 | 是 |
|
||
| 链接类型 | 模块(0)或外链(1) | 是 |
|
||
| 打开方式 | 当前窗口或新窗口 | 是 |
|
||
| URL | 菜单链接地址 | 否 |
|
||
| 参数 | 链接参数 | 否 |
|
||
| 备注 | 菜单的备注说明 | 否 |
|
||
|
||
**【提示】** 新增菜单时,系统会自动将其关联到超级管理员角色。
|
||
|
||
**功能对应截图** :
|
||
|
||

|
||
|
||
### 3.3 编辑菜单
|
||
|
||
**操作步骤:**
|
||
|
||
1. 在菜单树中点击需要编辑的菜单节点
|
||
2. 在右侧表单中修改菜单信息
|
||
3. 点击【修改】按钮保存更改
|
||
|
||
**【注意】** 菜单名称在同一模块内不能重复。
|
||
|
||
**功能对应截图** :
|
||
|
||

|
||
|
||
### 3.4 删除菜单
|
||
|
||
**操作步骤:**
|
||
|
||
1. 在菜单树中找到需要删除的菜单
|
||
2. 点击菜单右侧的【删除】按钮
|
||
3. 在确认对话框中点击【确定】
|
||
|
||
**功能对应截图** :
|
||
|
||

|
||
|
||
**【重要】** 如果该菜单或其子级菜单正在被角色使用,则无法删除。
|
||
|
||
### 3.5 启用/禁用菜单
|
||
|
||
**操作步骤:**
|
||
|
||
1. 在菜单树中找到需要操作的菜单
|
||
2. 点击菜单右侧的【禁用】或【启用】按钮
|
||
3. 在确认对话框中点击【确定】
|
||
|
||
**【注意】** 状态切换会影响该菜单及其所有子级菜单。
|
||
|
||
**功能对应截图** :
|
||
|
||

|
||
|
||
### 3.6 菜单排序
|
||
|
||
**操作步骤:**
|
||
|
||
1. 在菜单树中拖拽菜单节点到目标位置
|
||
2. 系统自动保存排序结果
|
||
|
||
**支持的拖拽操作:**
|
||
- 拖拽到同级菜单的前面或后面
|
||
- 拖拽到其他菜单下作为子菜单
|
||
|
||
**功能对应截图** :
|
||

|
||
|
||
## 7. 数据流程图
|
||
|
||
```mermaid
|
||
flowchart TD
|
||
A[用户请求] --> B{是否超级管理员}
|
||
B -->|是| C[查询全部菜单]
|
||
B -->|否| D[查询角色关联菜单]
|
||
C --> E[返回菜单列表]
|
||
D --> E
|
||
E --> F[前端渲染树形结构]
|
||
F --> G[用户操作]
|
||
G --> H{操作类型}
|
||
H -->|新增| I[校验名称唯一性]
|
||
H -->|编辑| J[校验名称唯一性]
|
||
H -->|删除| K[检查角色使用情况]
|
||
H -->|状态切换| L[检查角色使用情况]
|
||
I --> M[保存菜单数据]
|
||
J --> M
|
||
K --> N{是否被使用}
|
||
L --> N
|
||
N -->|是| O[提示错误信息]
|
||
N -->|否| P[执行操作]
|
||
M --> Q[关联超级管理员]
|
||
Q --> R[返回结果]
|
||
P --> R
|
||
O --> R
|
||
```
|
||
|
||
## 8. 注意事项
|
||
|
||
**【重要】** 删除或禁用菜单前,请确保该菜单未被任何角色使用,否则操作将失败。
|
||
|
||
**【提示】** 建议定期整理菜单结构,保持菜单树的清晰性和逻辑性。
|
||
|
||
**【注意】** 菜单排序数值越小,显示越靠前,默认值为50。 |