65 lines
3.0 KiB
SQL
65 lines
3.0 KiB
SQL
-- 角色表
|
|
CREATE TABLE sys_role (
|
|
id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '角色ID',
|
|
role_name VARCHAR(50) NOT NULL COMMENT '角色名称',
|
|
role_code VARCHAR(50) NOT NULL COMMENT '角色编码',
|
|
description VARCHAR(255) COMMENT '角色描述',
|
|
status TINYINT DEFAULT 1 COMMENT '状态(0:禁用,1:启用)',
|
|
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
UNIQUE KEY uk_role_code (role_code)
|
|
) COMMENT '角色表';
|
|
|
|
-- 菜单表
|
|
CREATE TABLE sys_menu (
|
|
id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '菜单ID',
|
|
parent_id BIGINT DEFAULT 0 COMMENT '父菜单ID',
|
|
menu_name VARCHAR(50) NOT NULL COMMENT '菜单名称',
|
|
path VARCHAR(200) COMMENT '路由路径',
|
|
component VARCHAR(255) COMMENT '组件路径',
|
|
redirect VARCHAR(255) COMMENT '重定向地址',
|
|
icon VARCHAR(50) COMMENT '菜单图标',
|
|
sort_order INT DEFAULT 0 COMMENT '排序',
|
|
keep_alive TINYINT DEFAULT 0 COMMENT '是否缓存(0:不缓存,1:缓存)',
|
|
hidden TINYINT DEFAULT 0 COMMENT '是否隐藏(0:显示,1:隐藏)',
|
|
type TINYINT NOT NULL COMMENT '菜单类型(1:目录,2:菜单,3:按钮)',
|
|
status TINYINT DEFAULT 1 COMMENT '状态(0:禁用,1:启用)',
|
|
permission VARCHAR(100) COMMENT '权限标识',
|
|
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间'
|
|
) COMMENT '菜单表';
|
|
|
|
-- 角色菜单关联表
|
|
CREATE TABLE sys_role_menu (
|
|
id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT 'ID',
|
|
role_id BIGINT NOT NULL COMMENT '角色ID',
|
|
menu_id BIGINT NOT NULL COMMENT '菜单ID',
|
|
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
UNIQUE KEY uk_role_menu (role_id, menu_id)
|
|
) COMMENT '角色菜单关联表';
|
|
|
|
-- 管理员角色关联表
|
|
CREATE TABLE sys_admin_role (
|
|
id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT 'ID',
|
|
admin_id BIGINT NOT NULL COMMENT '管理员ID',
|
|
role_id BIGINT NOT NULL COMMENT '角色ID',
|
|
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
UNIQUE KEY uk_admin_role (admin_id, role_id)
|
|
) COMMENT '管理员角色关联表';
|
|
|
|
-- 初始化超级管理员角色
|
|
INSERT INTO sys_role (role_name, role_code, description) VALUES
|
|
('超级管理员', 'ROLE_SUPER_ADMIN', '系统超级管理员');
|
|
|
|
-- 初始化基础菜单数据
|
|
INSERT INTO sys_menu (parent_id, menu_name, path, component, icon, type, permission) VALUES
|
|
(0, '仪表盘', 'dashboard', 'Dashboard', 'dashboard', 2, 'dashboard:view'),
|
|
(0, '系统管理', 'system', null, 'setting', 1, 'system:view'),
|
|
(2, '用户管理', 'user', 'system/UserManagement', 'user', 2, 'system:user:view'),
|
|
(2, '角色管理', 'role', 'system/RoleManagement', 'team', 2, 'system:role:view'),
|
|
(2, '菜单管理', 'menu', 'system/MenuManagement', 'menu', 2, 'system:menu:view');
|
|
|
|
-- 为超级管理员分配所有菜单
|
|
INSERT INTO sys_role_menu (role_id, menu_id)
|
|
SELECT 1, id FROM sys_menu;
|