研究并开发一套基于Vue 的前端开发框架。通过调研、分析前端框架的研究进展和发展现状,结合前端开发的实际需求,完成基于前后端分离的MVVM架构模式、
Vue.js和Element-UI、Vue Router完成框架的设计开发。用户使用框架进行开发时只需要进行简单地配置便可以迅速搭建起应用的主体骨架,帮助开发者将注意
力更多地放在具体业务逻辑的实现上,而不用花费大量的时间去处理风格样式和底层的交互设计,减轻了开发难度,提高了开发效率。
管理系统主要分为登录页和主页两个页面,用户登录成功之后就跳转到主页。在进入主页之前调用后端接口获取用户角色所对应的资源,即左侧菜单列表,然后
通过点击左侧菜单列表进行路由跳转,加载不同的功能页面,完成相应的操作。一般超级管理员,可以看到所有功能,其他用户,要根据自己分配到权限,才能
进入相应的功能页面。
1)菜单管理:可以实现对后台管理系统左侧菜单的管理,支持更换图标、更换名称、控制菜单显示和排序。
2)资源管理:实现了基于访问路径的后台动态权限控制,控制的权限可以精确到接口级别。查看资源列表,目前的资源是按控制器级别配置的;添加及编辑资源,这里我们添加了一个资源分类的概念,便于以后的资源分配;
3)角色管理:用于对后台用户角色进行管理,我们可以给角色分配指定的菜单和资源。
4)查看角色列表,添加及编辑角色用于管理角色的基本属性;分配菜单,可以给角色分配允许访问的菜单;分配资源,可以给角色分配允许访问的后台资源
5)后台用户管理:可以对后台用户进行管理并分配角色,支持分配多个角色。
6)部门管理:对部门的基本属性进行管理。
7)用户登录验证页面和无权限页面404页面。
3.3 系统UML用例分析
本通用权限管理系统主要包括用户登录、用户管理、角色管理、菜单管理、部门管理、岗位管理、字典管理、参数设置、日志管理九个大模块。通用权限管理系统用例图如图3-1所示。
4.1 系统功能模块设计
本通用权限管理系统主要实现了用户登录、用户管理、角色管理、菜单管理、部门管理、岗位管理、字典管理、参数设置、日志管理九大功能模块,通用权限管理系统的功能模块图如图4-1所示。
表4-1 sys_logininfor系统访问记录信息表
列名 | 数据类型 | 主键 | 外键 | 允许空 | 说明 |
info_id | bigint(20) | 是 | 是 | 否 | 编号 |
user_name | varchar(50) | 否 | 否 | 是 | 用户账号 |
ipaddr | varchar(128) | 否 | 否 | 是 | 登录IP地址 |
login_location | varchar(255) | 否 | 否 | 是 | 登录地点 |
browser | varchar(50) | 否 | 否 | 是 | 浏览器类型 |
os | varchar(50) | 否 | 否 | 是 | 操作系统 |
status | char(1) | 否 | 否 | 是 | 登录状态(0成功 1失败) |
msg | varchar(255) | 否 | 否 | 是 | 提示消息 |
login_time | datetime | 否 | 否 | 是 | 访问时间 |
表4-2 sys_dict_data字典信息表
列名 | 数据类型 | 主键 | 外键 | 允许空 | 说明 |
dict_code | bigint(20) | 是 | 是 | 否 | 字典编号 |
dict_sort | int(4) | 否 | 否 | 是 | 字典排序 |
dict_label | varchar(100) | 否 | 否 | 是 | 字典标签 |
dict_value | varchar(100) | 否 | 否 | 是 | 字典键值 |
dict_type | varchar(100) | 否 | 否 | 是 | 字典类型 |
css_class | varchar(100) | 否 | 否 | 是 | 样式属性(其他样式扩展) |
list_class | varchar(100) | 否 | 否 | 是 | 表格回显样式 |
is_default | char(1) | 否 | 否 | 是 | 是否默认(Y是 N否) |
status | char(1) | 否 | 否 | 是 | 状态 |
create_by | varchar(64) | 否 | 是 | 是 | 创建人 |
create_time | datetime | 否 | 否 | 是 | 创建时间 |
update_by | varchar(64) | 否 | 是 | 是 | 更新人 |
update_time | datetime | 否 | 否 | 是 | 更新时间 |
remark | varchar(500) | 否 | 否 | 是 | 备注 |
表4-3 sys_dept部门信息表
列名 | 数据类型 | 主键 | 外键 | 允许空 | 说明 |
dept_id | bigint(20) | 是 | 是 | 否 | 部门id |
parent_id | bigint(20) | 否 | 否 | 是 | 父部门id |
ancestors | varchar(50) | 否 | 否 | 是 | 祖级列表 |
dept_name | varchar(30) | 否 | 否 | 是 | 部门名称 |
order_num | int(4) | 否 | 否 | 是 | 显示顺序 |
leader | varchar(20) | 否 | 否 | 是 | 负责人 |
phone | varchar(11) | 否 | 否 | 是 | 联系电话 |
| varchar(50) | 否 | 否 | 是 | 邮箱 |
del_flag | char(1) | 否 | 否 | 是 | 删除标志(0代表存在 2代表删除) |
status | char(1) | 否 | 否 | 是 | 部门状态(0正常 1停用) |
create_by` | varchar(64) | 否 | 是 | 是 | 创建人 |
create_time | datetime | 否 | 否 | 是 | 创建时间 |
update_by | varchar(64) | 否 | 是 | 是 | 更新人 |
update_time | datetime | 否 | 否 | 是 | 更新时间 |
表4-4 sys_post岗位信息表
列名 | 数据类型 | 主键 | 外键 | 允许空 | 说明 |
post_id | bigint(20) | 是 | 否 | 否 | 岗位id |
post_code | varchar(64) | 否 | 否 | 是 | 岗位编码 |
post_name | varchar(50) | 否 | 否 | 是 | 岗位名称 |
post_sort | int(4) | 否 | 否 | 是 | 显示顺序 |
status | char(1) | 否 | 否 | 是 | 状态(0正常 1停用) |
create_by | varchar(64) | 否 | 是 | 是 | 创建人 |
create_time | datetime | 否 | 否 | 是 | 创建时间 |
update_by | varchar(64) | 否 | 是 | 是 | 更新人 |
update_time | datetime | 否 | 否 | 是 | 更新时间 |
remark | varchar(500) | 否 | 否 | 是 | 备注 |
表4-5 sys_user用户信息表
列名 | 数据类型 | 主键 | 外键 | 允许空 | 说明 |
user_id | bigint(20) | 是 | 否 | 否 | 用户id |
dept_id | bigint(20) | 否 | 是 | 是 | 部门id |
user_name | varchar(30) | 否 | 否 | 是 | 用户账号 |
nick_name | varchar(30) | 否 | 否 | 是 | 用户昵称 |
user_type | varchar(2) | 否 | 否 | 是 | 用户类型(00系统用户) |
| varchar(50) | 否 | 否 | 是 | 用户邮箱 |
phonenumber | varchar(11) | 否 | 否 | 是 | 手机号码 |
sex | char(1) | 否 | 否 | 是 | 用户性别 |
avatar | varchar(100) | 否 | 否 | 是 | 头像路径 |
password | varchar(100) | 否 | 否 | 是 | 密码 |
status | char(1) | 否 | 否 | 是 | '帐号状态(0正常 1停用) |
del_flag | char(1) | 否 | 否 | 是 | 删除标志(0代表存在 2代表删除) |
login_ip | varchar(128) | 否 | 否 | 是 | 最后登录IP |
login_date | datetime | 否 | 否 | 是 | 最后登录时间 |
create_by | varchar(64) | 否 | 是 | 是 | 创建者 |
create_time | datetime | 否 | 否 | 是 | 创建时间 |
update_by | varchar(64) | 否 | 是 | 是 | 更新者 |
update_time | datetime | 否 | 否 | 是 | 更新时间 |
remark | varchar(500) | 否 | 否 | 是 | 备注 |
表4-6 sys_oper_log操作日志记录信息表
列名 | 数据类型 | 主键 | 外键 | 允许空 | 说明 |
oper_id | bigint(20) | 是 | 否 | 否 | 日志id |
title | bigint(20) | 否 | 否 | 是 | 模块标题 |
business_type | varchar(30) | 否 | 否 | 是 | 业务类型(0其它 1新增 2修改 3删除) |
method | varchar(30) | 否 | 否 | 是 | 方法名称 |
request_method | varchar(2) | 否 | 否 | 是 | 请求方式 |
operator_type | varchar(50) | 否 | 否 | 是 | 操作类别(0其它 1后台用户 2手机端用户) |
oper_name | varchar(11) | 否 | 否 | 是 | 操作人员 |
dept_name | char(1) | 否 | 否 | 是 | 部门名称 |
oper_url | varchar(100) | 否 | 否 | 是 | 请求URL |
oper_ip | varchar(100) | 否 | 否 | 是 | 主机地址 |
oper_location | char(1) | 否 | 否 | 是 | 操作地点 |
oper_param | char(1) | 否 | 否 | 是 | 请求参数 |
json_result | varchar(128) | 否 | 否 | 是 | 返回参数 |
status | datetime | 否 | 否 | 是 | 操作状态(0正常 1异常) |
error_msg | varchar(64) | 否 | 否 | 是 | 错误消息 |
oper_time | datetime | 否 | 否 | 是 | 操作时间 |
表4-7 sys_role角色信息表
列名 | 数据类型 | 主键 | 外键 | 允许空 | 说明 |
role_id | bigint(20) | 是 | 否 | 否 | 角色ID |
role_name | varchar(30) | 否 | 否 | 是 | 角色名称 |
role_key | varchar(100) | 否 | 否 | 是 | 角色权限字符串 |
role_sort | int(4) | 否 | 否 | 是 | 显示顺序 |
data_scope | char(1) | 否 | 否 | 是 | 数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限) |
menu_check_strictly | tinyint(1) | 否 | 否 | 是 | 菜单树选择项是否关联显示 |
dept_check_strictly | tinyint(1) | 否 | 否 | 是 | 部门树选择项是否关联显示 |
status | char(1) | 否 | 否 | 是 | 角色状态(0正常 1停用) |
del_flag | char(1) | 否 | 否 | 是 | 删除标志(0代表存在 2代表删除) |
create_by | varchar(64) | 否 | 否 | 是 | 创建者 |
create_time | datetime | 否 | 否 | 是 | 创建时间 |
update_by | varchar(64) | 否 | 否 | 是 | 更新者 |
update_time | datetime | 否 | 否 | 是 | 更新时间 |
remark | varchar(500) | 否 | 否 | 是 | 备注 |