美文网首页
java:权限系统数据库设计

java:权限系统数据库设计

作者: Sina华 | 来源:发表于2020-04-08 20:34 被阅读0次

    1、按钮管理表

    CREATE TABLE `t_sys_button` (
      `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
      `name` varchar(50) NOT NULL COMMENT '按钮名称',
      `permission` varchar(80) NOT NULL COMMENT '标识',
      `icon` varchar(255) DEFAULT NULL COMMENT '按钮图标url',
      `status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '状态(0禁用,1正常)',
      `remark` varchar(50) DEFAULT NULL COMMENT '备注',
      `create_id` int(11) DEFAULT NULL COMMENT '创建者id',
      `create_name` varchar(50) DEFAULT NULL,
      `create_time` datetime DEFAULT NULL,
      `update_id` int(11) DEFAULT NULL COMMENT '修改者id',
      `update_name` varchar(50) DEFAULT NULL,
      `update_time` datetime DEFAULT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=813 DEFAULT CHARSET=utf8;
    

    2、菜单管理表

    CREATE TABLE `t_sys_menu` (
      `id` bigint(11) NOT NULL AUTO_INCREMENT COMMENT '主键id',
      `parent_id` bigint(11) DEFAULT NULL COMMENT '父菜单id',
      `name` varchar(50) DEFAULT NULL COMMENT '菜单名称',
      `permission` varchar(80) NOT NULL COMMENT '权限标识',
      `url` varchar(500) DEFAULT NULL COMMENT '菜单链接',
      `status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '状态(0显示,1隐藏)',
      `icon` varchar(255) DEFAULT NULL COMMENT '菜单图标',
      `sort` int(11) DEFAULT NULL COMMENT '排序',
      `disabled` tinyint(1) DEFAULT NULL COMMENT '是否禁用(0,禁用;1,不禁用)',
      `open` tinyint(1) DEFAULT NULL COMMENT '是否展开(0,是;1,否)',
      `type` tinyint(1) DEFAULT NULL COMMENT '菜单类型(0:目录;1:菜单)',
      `remark` varchar(100) DEFAULT NULL COMMENT '备注',
      `create_id` int(11) DEFAULT NULL,
      `create_name` varchar(64) DEFAULT NULL,
      `create_time` datetime DEFAULT NULL,
      `update_id` int(11) DEFAULT NULL,
      `update_name` varchar(50) DEFAULT NULL,
      `update_time` datetime DEFAULT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=354 DEFAULT CHARSET=utf8;
    

    3、菜单按钮管理表,用于分配菜单页面具有的按钮

    CREATE TABLE `t_sys_menu_button` (
      `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
      `menu_id` int(11) NOT NULL COMMENT '菜单ID',
      `button_id` int(11) NOT NULL COMMENT '按钮ID',
      `permission` varchar(64) NOT NULL COMMENT '权限标识',
      `status` int(11) NOT NULL COMMENT '状态(0:正常;1:禁用)',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=749 DEFAULT CHARSET=utf8mb4 COMMENT='菜单按钮表';
    

    4、角色管理表

    CREATE TABLE `t_sys_role` (
      `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '角色id',
      `name` varchar(64) DEFAULT NULL COMMENT '角色名称',
      `code` varchar(64) DEFAULT NULL COMMENT '角色代码',
      `status` int(1) DEFAULT NULL COMMENT '角色状态(0禁用 1启用)',
      `type` int(4) DEFAULT NULL COMMENT '角色类型(0,普通用户;1,超级管理员;2,管理员)',
      `remark` varchar(255) DEFAULT NULL COMMENT '备注',
      `create_id` int(11) DEFAULT NULL COMMENT '新增人ID',
      `create_name` varchar(64) DEFAULT NULL COMMENT '新增人姓名',
      `create_time` datetime DEFAULT NULL COMMENT '新增时间',
      `update_id` int(11) DEFAULT NULL COMMENT '更新人',
      `update_name` varchar(64) DEFAULT NULL COMMENT '修改人姓名',
      `update_time` datetime DEFAULT NULL COMMENT '更新时间',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=59 DEFAULT CHARSET=utf8 COMMENT='角色表';
    

    5、角色菜单按钮管理表

    CREATE TABLE `t_sys_role_button` (
      `role_id` bigint(11) NOT NULL COMMENT '角色id',
      `menu_id` int(11) NOT NULL COMMENT '菜单ID',
      `button_id` bigint(11) NOT NULL COMMENT '按钮id',
      `status` tinyint(1) DEFAULT NULL COMMENT '是否禁用(0,禁用;1,启用)'
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='角色按钮表';
    

    6、角色组管理表

    CREATE TABLE `t_sys_role_group` (
      `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
      `name` varchar(20) DEFAULT NULL COMMENT '角色组名称',
      `code` varchar(20) DEFAULT NULL COMMENT '角色组代码',
      `status` tinyint(1) DEFAULT '1' COMMENT '状态(0:正常;1:禁用)',
      `remark` varchar(20) DEFAULT NULL COMMENT '备注',
      `create_id` int(11) DEFAULT NULL COMMENT '创建者',
      `create_name` varchar(64) DEFAULT NULL COMMENT '创建人姓名',
      `create_time` datetime DEFAULT NULL COMMENT '创建时间',
      `update_id` int(11) DEFAULT NULL COMMENT '更新者',
      `update_name` varchar(64) DEFAULT NULL COMMENT '更新人姓名',
      `update_time` datetime DEFAULT NULL COMMENT '更新时间',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=1147 DEFAULT CHARSET=utf8mb4 COMMENT='角色组表';
    

    7、角色组角色管理表

    CREATE TABLE `t_sys_role_group_role` (
      `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
      `role_group_id` int(11) NOT NULL COMMENT '角色组id',
      `role_id` int(11) NOT NULL COMMENT '角色id',
      `status` tinyint(1) NOT NULL COMMENT '是否禁用(0,禁用;1,启用)',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=71 DEFAULT CHARSET=utf8mb4 COMMENT='角色组角色表';
    

    8、角色菜单管理表

    CREATE TABLE `t_sys_role_menu` (
      `role_id` bigint(11) NOT NULL COMMENT '角色id',
      `menu_id` bigint(11) NOT NULL COMMENT '菜单id',
      `status` tinyint(1) NOT NULL COMMENT '状态(0禁用,1不禁用)',
      PRIMARY KEY (`role_id`,`menu_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    

    9、系统用户管理表

    CREATE TABLE `t_sys_user` (
      `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键id',
      `organ_id` int(11) DEFAULT NULL COMMENT '组织机构ID',
      `user_code` varchar(32) NOT NULL COMMENT '用户编号',
      `login_name` varchar(64) DEFAULT NULL COMMENT '登录账户',
      `username` varchar(64) NOT NULL COMMENT '姓名',
      `emp_code` varchar(32) NOT NULL COMMENT '员工编号',
      `password` varchar(64) DEFAULT NULL COMMENT '密码',
      `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态(1,正常;0,禁用)',
      `phone` varchar(11) DEFAULT NULL COMMENT '手机',
      `photo` varchar(120) DEFAULT NULL COMMENT '头像url',
      `email` varchar(50) DEFAULT NULL COMMENT '邮箱',
      `is_del` int(1) DEFAULT NULL COMMENT '删除(0:未删除 ;1:已删除)',
      `salt` varchar(100) DEFAULT NULL COMMENT '盐',
      `remark` varchar(500) DEFAULT NULL COMMENT '备注',
      `create_id` int(11) DEFAULT NULL COMMENT '创建者id',
      `create_name` varchar(64) DEFAULT NULL,
      `create_time` datetime DEFAULT NULL COMMENT '创建时间',
      `update_id` int(11) DEFAULT NULL COMMENT '更新者id',
      `update_name` varchar(64) DEFAULT NULL,
      `update_time` datetime DEFAULT NULL COMMENT '更新时间',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=72 DEFAULT CHARSET=utf8 COMMENT='系统用户';
    

    10、用户角色管理表

    CREATE TABLE `t_sys_user_role` (
      `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
      `user_id` int(11) NOT NULL COMMENT '用户id',
      `role_id` int(11) NOT NULL COMMENT '角色id',
      `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '是否禁用(0,禁用;1,启用)',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=340 DEFAULT CHARSET=utf8;
    

    11、用户组织机构管理表

    CREATE TABLE `t_sys_user_organ` (
      `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
      `user_id` int(11) NOT NULL COMMENT '用户ID',
      `organ_id` int(11) NOT NULL COMMENT '组织机构ID',
      `status` int(1) NOT NULL DEFAULT '1' COMMENT '状态(0:无效;1:有效)',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=99 DEFAULT CHARSET=utf8mb4 COMMENT='用户机构表';
    

    相关文章

      网友评论

          本文标题:java:权限系统数据库设计

          本文链接:https://www.haomeiwen.com/subject/tsyxmhtx.html