
引言
本篇主要介绍笔者 授权模块【flea-auth】下的功能子模块。
1. 总览
目前功能子模块包含 菜单、操作、 元素 和 资源 四类功能单元;
这些功能都和权限相关联【可参考 权限子模块 的 权限关联表 flea_privilege_rel 】。
| 表名 | 中文描述 |
|---|---|
| flea_menu | 菜单 |
| flea_operation | 操作 |
| flea_element | 元素 |
| flea_resource | 资源 |
| flea_function_attr | 功能扩展属性【模板表】 |
| flea_function_attr_menu | 菜单扩展属性【功能类型分表】 |
| flea_function_attr_operation | 操作扩展属性【功能类型分表】 |
| flea_function_attr_element | 元素扩展属性【功能类型分表】 |
| flea_function_attr_resource | 资源扩展属性【功能类型分表】 |
2. 详述
2.1 菜单
授权模块提供的表,可解释为一系列业务逻辑的总和,为完成某种特定功能,而定义的一类功能单元。
| 字段名 | 中文描述 |
|---|---|
| menu_id | 菜单编号 |
| menu_code | 菜单编码 |
| menu_name | 菜单名称 |
| menu_icon | 菜单FontAwesome小图标 |
| menu_sort | 菜单展示顺序(同一个父菜单下) |
| menu_view | 菜单对应页面(非叶子菜单的可以为空) |
| menu_level | 菜单层级(1:一级 2;二级 3:三级 4:四级) |
| menu_state | 菜单状态(0:下线,1: 在用 ) |
| parent_id | 父菜单编号 |
| create_date | 创建日期 |
| done_date | 修改日期 |
| effective_date | 生效日期 |
| expiry_date | 失效日期 |
| remarks | 菜单描述 |
2.2 操作
授权模块提供的表,可理解为业务逻辑上较为单一的功能单元,如角色新增,权限新增等操作。
| 字段名 | 中文描述 |
|---|---|
| operation_id | 操作编号 |
| operation_code | 操作编码 |
| operation_name | 操作名称 |
| operation_desc | 操作描述 |
| operation_state | 操作状态(0: 删除 1: 正常 ) |
| create_date | 创建日期 |
| done_date | 修改日期 |
| remarks | 备注信息 |
2.3 元素
授权模块提供的表,目前有页面元素定义,如页面按钮等。
| 字段名 | 中文描述 |
|---|---|
| element_id | 元素编号 |
| element_code | 元素编码 |
| element_name | 元素名称 |
| element_desc | 元素描述 |
| element_type | 元素类型 |
| element_content | 元素内容 |
| element_state | 元素状态(0: 删除 1: 正常 ) |
| create_date | 创建日期 |
| done_date | 修改日期 |
| remarks | 菜单描述 |
2.4 资源
授权模块提供的表,用于各种资源的授权,目前有Flea Jersey接口资源定义。
| 字段名 | 中文描述 |
|---|---|
| resource_id | 资源编号 |
| resource_code | 资源编码 |
| resource_name | 资源名称 |
| resource_desc | 资源描述 |
| resource_state | 资源状态(0: 删除 1: 正常 ) |
| create_date | 创建日期 |
| done_date | 修改日期 |
| remarks | 备注信息 |
2.4 功能扩展属性
授权模块提供的表,根据功能类型进行分表,为上述功能单元配置扩展属性。
| 字段名 | 中文描述 |
|---|---|
| attr_id | 属性编号 |
| function_id | 功能编号 |
| function_type | 功能类型(菜单、操作、元素) |
| attr_code | 属性码 |
| attr_value | 属性值 |
| state | 属性状态 (0: 删除 1: 正常 ) |
| create_date | 创建日期 |
| done_date | 修改日期 |
| effective_date | 生效日期 |
| expiry_date | 失效日期 |
| remarks | 备注信息 |
如果以后需要新增某种功能的权限控制,只需要如下操作:
- 在功能子模块中新增相关功能表;
- 在权限子模块的 权限关联表 中新定义一种 关联类型 【rel_type】,并绑定上相关授权数据。
