1、权限表设计
CREATE TABLE `admin_permission` (
`permission_id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT \'编号\',
`pid` int(10) DEFAULT NULL COMMENT \'所属上级\',
`name` varchar(20) DEFAULT NULL COMMENT \'名称\',
`type` tinyint(4) DEFAULT NULL COMMENT \'类型(1:目录,2:菜单,3:按钮)\',
`permission_value` varchar(50) DEFAULT NULL COMMENT \'权限值\',
`uri` varchar(100) DEFAULT NULL COMMENT \'路径\',
`icon` varchar(50) DEFAULT NULL COMMENT \'图标\',
`status` tinyint(4) DEFAULT NULL COMMENT \'状态(0:禁止,1:正常)\',
`ctime` datetime DEFAULT NULL COMMENT \'创建时间\',
`orders` bigint(20) DEFAULT NULL COMMENT \'排序\',
PRIMARY KEY (`permission_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT=\'权限\';
2、角色表设计
CREATE TABLE `admin_role` (
`role_id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT \'编号\',
`name` varchar(20) DEFAULT NULL COMMENT \'角色名称\',
`title` varchar(20) DEFAULT NULL COMMENT \'角色标题\',
`description` varchar(1000) DEFAULT NULL COMMENT \'角色描述\',
`ctime` datetime NOT NULL COMMENT \'创建时间\',
`orders` bigint(20) NOT NULL COMMENT \'排序\',
PRIMARY KEY (`role_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT=\'角色\';
3、管理员表设计
CREATE TABLE `admin_user` (
`user_id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT \'编号\',
`username` varchar(20) NOT NULL COMMENT \'帐号\',
`password` varchar(32) NOT NULL COMMENT \'密码MD5(密码+盐)\',
`salt` varchar(32) DEFAULT NULL COMMENT \'盐\',
`realname` varchar(20) DEFAULT NULL COMMENT \'姓名\',
`avatar` varchar(150) DEFAULT NULL COMMENT \'头像\',
`phone` varchar(20) DEFAULT NULL COMMENT \'电话\',
`email` varchar(50) DEFAULT NULL COMMENT \'邮箱\',
`sex` tinyint(4) DEFAULT NULL COMMENT \'性别(1:男,2:女)\',
`locked` tinyint(4) DEFAULT NULL COMMENT \'状态(0:正常,1:锁定)\',
`ctime` datetime DEFAULT NULL COMMENT \'创建时间\',
PRIMARY KEY (`user_id`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8mb4 COMMENT=\'管理员用户\';
4、用户角色关联表
CREATE TABLE `admin_user_role` (
`user_role_id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT \'编号\',
`user_id` int(10) unsigned NOT NULL COMMENT \'用户编号\',
`role_id` int(10) DEFAULT NULL COMMENT \'角色编号\',
PRIMARY KEY (`user_role_id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COMMENT=\'用户角色关联表\';
5、 角色权限关联表
CREATE TABLE `admin_role_permission` (
`role_permission_id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT \'编号\',
`role_id` int(10) unsigned NOT NULL COMMENT \'角色编号\',
`permission_id` int(10) unsigned NOT NULL COMMENT \'权限编号\',
PRIMARY KEY (`role_permission_id`),
KEY `FK_Reference_23` (`role_id`),
CONSTRAINT `FK_Reference_23` FOREIGN KEY (`role_id`) REFERENCES `admin_role` (`role_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT=\'角色权限关联表\';
6、操作日志表
CREATE TABLE `admin_log` (
`log_id` int(11) NOT NULL AUTO_INCREMENT COMMENT \'编号\',
`description` varchar(100) DEFAULT NULL COMMENT \'操作描述\',
`username` varchar(20) DEFAULT NULL COMMENT \'操作用户\',
`start_time` datetime DEFAULT NULL COMMENT \'操作时间\',
`spend_time` datetime DEFAULT NULL COMMENT \'消耗时间\',
`base_path` varchar(500) DEFAULT NULL COMMENT \'根路径\',
`uri` varchar(500) DEFAULT NULL COMMENT \'URI\',
`url` varchar(500) DEFAULT NULL COMMENT \'URL\',
`method` varchar(10) DEFAULT NULL COMMENT \'请求类型\',
`parameter` mediumtext,
`user_agent` varchar(500) DEFAULT NULL COMMENT \'用户标识\',
`ip` varchar(30) DEFAULT NULL COMMENT \'IP地址\',
`result` mediumtext,
`permissions` varchar(100) DEFAULT NULL COMMENT \'权限值\',
PRIMARY KEY (`log_id`),
KEY `log_id` (`log_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT=\'操作日志\';