2025-10-05 18:00:29 +08:00
|
|
|
|
use school_news;
|
2025-09-28 14:20:09 +08:00
|
|
|
|
-- 部门表
|
|
|
|
|
|
DROP TABLE IF EXISTS `tb_sys_dept`;
|
|
|
|
|
|
CREATE TABLE `tb_sys_dept` (
|
|
|
|
|
|
`id` VARCHAR(50) NOT NULL COMMENT 'id',
|
|
|
|
|
|
`dept_id` VARCHAR(50) NOT NULL COMMENT '部门ID',
|
|
|
|
|
|
`name` VARCHAR(100) NOT NULL COMMENT '部门名称',
|
|
|
|
|
|
`parent_id` VARCHAR(50) DEFAULT NULL COMMENT '父部门ID',
|
|
|
|
|
|
`description` VARCHAR(255) DEFAULT NULL COMMENT '部门描述',
|
|
|
|
|
|
`creator` VARCHAR(50) DEFAULT NULL COMMENT '创建者',
|
|
|
|
|
|
`updater` VARCHAR(50) DEFAULT NULL COMMENT '更新者',
|
|
|
|
|
|
`create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
|
|
|
`update_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
|
|
|
`delete_time` TIMESTAMP NULL DEFAULT NULL COMMENT '删除时间',
|
|
|
|
|
|
`deleted` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
|
|
|
|
PRIMARY KEY (`id`),
|
|
|
|
|
|
UNIQUE KEY `uk_dept_id` (`dept_id`),
|
|
|
|
|
|
KEY `idx_dept_parent` (`parent_id`)
|
|
|
|
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
|
|
|
|
|
|
|
2025-10-07 11:02:35 +08:00
|
|
|
|
INSERT INTO `tb_sys_dept` (id,dept_id,name, description) VALUES ('1','root_department', '超级部门', '系统超级部门');
|
|
|
|
|
|
INSERT INTO `tb_sys_dept` (id,dept_id,name, parent_id, description) VALUES ('2','default_department', '默认部门', 'root_department', '系统默认创建的部门');
|
2025-09-28 14:20:09 +08:00
|
|
|
|
|
|
|
|
|
|
-- 角色表
|
|
|
|
|
|
DROP TABLE IF EXISTS `tb_sys_role`;
|
|
|
|
|
|
CREATE TABLE `tb_sys_role` (
|
|
|
|
|
|
`id` VARCHAR(50) NOT NULL COMMENT 'id',
|
|
|
|
|
|
`role_id` VARCHAR(50) NOT NULL COMMENT '角色ID',
|
|
|
|
|
|
`name` VARCHAR(100) NOT NULL COMMENT '角色名称',
|
|
|
|
|
|
`description` VARCHAR(255) DEFAULT NULL COMMENT '角色描述',
|
|
|
|
|
|
`creator` VARCHAR(50) DEFAULT NULL COMMENT '创建者',
|
|
|
|
|
|
`updater` VARCHAR(50) DEFAULT NULL COMMENT '更新者',
|
|
|
|
|
|
`create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
|
|
|
`update_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
|
|
|
`delete_time` TIMESTAMP NULL DEFAULT NULL COMMENT '删除时间',
|
|
|
|
|
|
`deleted` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
|
|
|
|
PRIMARY KEY (`id`),
|
|
|
|
|
|
UNIQUE KEY `uk_role_id` (`role_id`)
|
|
|
|
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
|
|
|
|
|
|
|
|
|
|
|
|
INSERT INTO `tb_sys_role` (id,role_id, name, description) VALUES ('1','admin', '管理员', '系统管理员角色');
|
2025-10-07 11:02:35 +08:00
|
|
|
|
INSERT INTO `tb_sys_role` (id,role_id, name, description) VALUES ('2','freedom', '自由角色', '自由角色');
|
2025-09-28 14:20:09 +08:00
|
|
|
|
|
|
|
|
|
|
-- 部门-角色关联
|
|
|
|
|
|
DROP TABLE IF EXISTS `tb_sys_dept_role`;
|
|
|
|
|
|
CREATE TABLE `tb_sys_dept_role` (
|
|
|
|
|
|
`id` VARCHAR(50) NOT NULL COMMENT '部门角色ID',
|
|
|
|
|
|
`dept_id` VARCHAR(50) NOT NULL COMMENT '部门ID',
|
|
|
|
|
|
`role_id` VARCHAR(50) NOT NULL COMMENT '角色ID',
|
|
|
|
|
|
`creator` VARCHAR(50) DEFAULT NULL COMMENT '创建者',
|
|
|
|
|
|
`updater` VARCHAR(50) DEFAULT NULL COMMENT '更新者',
|
|
|
|
|
|
`create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
|
|
|
`update_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
|
|
|
`delete_time` TIMESTAMP NULL DEFAULT NULL COMMENT '删除时间',
|
|
|
|
|
|
`deleted` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
|
|
|
|
PRIMARY KEY (`id`),
|
|
|
|
|
|
UNIQUE KEY `uk_dept_role` (`dept_id`, `role_id`)
|
|
|
|
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
|
|
|
|
|
|
|
2025-10-07 11:02:35 +08:00
|
|
|
|
INSERT INTO `tb_sys_dept_role` (id, dept_id, role_id) VALUES
|
|
|
|
|
|
('1', 'root_department', 'admin'),
|
|
|
|
|
|
('2', 'default_department', 'freedom');
|
2025-09-28 14:20:09 +08:00
|
|
|
|
|
|
|
|
|
|
-- 用户-角色关联
|
2025-10-06 16:19:35 +08:00
|
|
|
|
DROP TABLE IF EXISTS `tb_sys_user_dept_role`;
|
|
|
|
|
|
CREATE TABLE `tb_sys_user_dept_role` (
|
2025-09-28 14:20:09 +08:00
|
|
|
|
`id` VARCHAR(50) NOT NULL COMMENT '用户角色ID',
|
|
|
|
|
|
`user_id` VARCHAR(50) NOT NULL COMMENT '用户ID',
|
2025-10-06 16:19:35 +08:00
|
|
|
|
`dept_id` VARCHAR(50) NOT NULL COMMENT '部门ID',
|
2025-09-28 14:20:09 +08:00
|
|
|
|
`role_id` VARCHAR(50) NOT NULL COMMENT '角色ID',
|
|
|
|
|
|
`creator` VARCHAR(50) DEFAULT NULL COMMENT '创建者',
|
|
|
|
|
|
`updater` VARCHAR(50) DEFAULT NULL COMMENT '更新者',
|
|
|
|
|
|
`create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
|
|
|
`update_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
|
|
|
`delete_time` TIMESTAMP NULL DEFAULT NULL COMMENT '删除时间',
|
|
|
|
|
|
`deleted` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
|
|
|
|
PRIMARY KEY (`id`),
|
2025-10-06 16:19:35 +08:00
|
|
|
|
UNIQUE KEY `uk_user_dept_role` (`user_id`, `dept_id`, `role_id`)
|
2025-09-28 14:20:09 +08:00
|
|
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
|
|
|
|
|
|
|
2025-10-07 11:02:35 +08:00
|
|
|
|
INSERT INTO `tb_sys_user_dept_role` (id, user_id, dept_id, role_id) VALUES ('1', '1', 'root_department', 'admin');
|
2025-09-28 14:20:09 +08:00
|
|
|
|
|
|
|
|
|
|
-- 权限表
|
|
|
|
|
|
DROP TABLE IF EXISTS `tb_sys_permission`;
|
|
|
|
|
|
CREATE TABLE `tb_sys_permission` (
|
|
|
|
|
|
`id` VARCHAR(50) NOT NULL COMMENT 'id',
|
|
|
|
|
|
`permission_id` VARCHAR(50) NOT NULL COMMENT '权限ID',
|
|
|
|
|
|
`name` VARCHAR(100) NOT NULL COMMENT '权限名称',
|
|
|
|
|
|
`code` VARCHAR(100) NOT NULL COMMENT '权限代码',
|
|
|
|
|
|
`description` VARCHAR(255) DEFAULT NULL COMMENT '权限描述',
|
|
|
|
|
|
`creator` VARCHAR(50) DEFAULT NULL COMMENT '创建者',
|
|
|
|
|
|
`updater` VARCHAR(50) DEFAULT NULL COMMENT '更新者',
|
|
|
|
|
|
`create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
|
|
|
`update_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
|
|
|
`delete_time` TIMESTAMP NULL DEFAULT NULL COMMENT '删除时间',
|
|
|
|
|
|
`deleted` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
|
|
|
|
PRIMARY KEY (`id`),
|
|
|
|
|
|
UNIQUE KEY `uk_permission_id` (`permission_id`)
|
|
|
|
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
|
|
|
|
|
|
|
|
|
|
|
|
INSERT INTO `tb_sys_permission` (id,permission_id, name, code, description) VALUES
|
2025-10-08 14:11:54 +08:00
|
|
|
|
('1','perm_system_manage', '系统管理', 'system:manage', '系统管理权限'),
|
|
|
|
|
|
('2','perm_system_dept_manage', '系统部门查看', 'system:dept:manage', '系统部门查看权限'),
|
|
|
|
|
|
('3','perm_system_menu_manage', '系统菜单查看', 'system:menu:manage', '系统菜单查看权限'),
|
|
|
|
|
|
('4','perm_system_permission_manage', '系统权限查看', 'system:permission:manage', '系统权限查看权限'),
|
|
|
|
|
|
('5','perm_system_role_manage', '系统角色查看', 'system:role:manage', '系统角色查看权限');
|
2025-09-28 14:20:09 +08:00
|
|
|
|
|
|
|
|
|
|
-- 角色-权限关联
|
|
|
|
|
|
DROP TABLE IF EXISTS `tb_sys_role_permission`;
|
|
|
|
|
|
CREATE TABLE `tb_sys_role_permission` (
|
|
|
|
|
|
`id` VARCHAR(50) NOT NULL COMMENT '角色权限ID',
|
|
|
|
|
|
`role_id` VARCHAR(50) NOT NULL COMMENT '角色ID',
|
|
|
|
|
|
`permission_id` VARCHAR(50) NOT NULL COMMENT '权限ID',
|
|
|
|
|
|
`creator` VARCHAR(50) DEFAULT NULL COMMENT '创建者',
|
|
|
|
|
|
`updater` VARCHAR(50) DEFAULT NULL COMMENT '更新者',
|
|
|
|
|
|
`create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
|
|
|
`update_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
|
|
|
`delete_time` TIMESTAMP NULL DEFAULT NULL COMMENT '删除时间',
|
|
|
|
|
|
`deleted` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
|
|
|
|
PRIMARY KEY (`id`),
|
|
|
|
|
|
UNIQUE KEY `uk_role_permission` (`role_id`, `permission_id`)
|
|
|
|
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
|
|
|
|
|
|
|
|
|
|
|
|
INSERT INTO `tb_sys_role_permission` (id, role_id, permission_id) VALUES
|
2025-10-08 14:11:54 +08:00
|
|
|
|
('1', 'admin', 'perm_system_manage'),
|
|
|
|
|
|
('2', 'admin', 'perm_system_dept_manage'),
|
|
|
|
|
|
('3', 'admin', 'perm_system_menu_manage'),
|
|
|
|
|
|
('4', 'admin', 'perm_system_permission_manage'),
|
|
|
|
|
|
('5', 'admin', 'perm_system_role_manage');
|
2025-09-28 14:20:09 +08:00
|
|
|
|
|
|
|
|
|
|
-- 菜单表
|
|
|
|
|
|
DROP TABLE IF EXISTS `tb_sys_menu`;
|
|
|
|
|
|
CREATE TABLE `tb_sys_menu` (
|
|
|
|
|
|
`id` VARCHAR(50) NOT NULL COMMENT 'id',
|
|
|
|
|
|
`menu_id` VARCHAR(50) NOT NULL COMMENT '菜单ID',
|
|
|
|
|
|
`name` VARCHAR(100) NOT NULL COMMENT '菜单名称',
|
|
|
|
|
|
`parent_id` VARCHAR(50) DEFAULT NULL COMMENT '父菜单ID',
|
|
|
|
|
|
`url` VARCHAR(255) DEFAULT NULL COMMENT '菜单URL',
|
2025-10-07 13:31:06 +08:00
|
|
|
|
`component` VARCHAR(255) DEFAULT NULL COMMENT '菜单组件',
|
2025-09-28 14:20:09 +08:00
|
|
|
|
`icon` VARCHAR(100) DEFAULT NULL COMMENT '菜单图标',
|
|
|
|
|
|
`order_num` INT(4) DEFAULT 0 COMMENT '菜单排序号',
|
|
|
|
|
|
`type` INT(4) DEFAULT 0 COMMENT '菜单类型(0目录 1菜单 2按钮)',
|
|
|
|
|
|
`creator` VARCHAR(50) DEFAULT NULL COMMENT '创建者',
|
|
|
|
|
|
`updater` VARCHAR(50) DEFAULT NULL COMMENT '更新者',
|
|
|
|
|
|
`create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
|
|
|
`update_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
|
|
|
`delete_time` TIMESTAMP NULL DEFAULT NULL COMMENT '删除时间',
|
|
|
|
|
|
`deleted` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
|
|
|
|
PRIMARY KEY (`id`),
|
|
|
|
|
|
UNIQUE KEY `uk_menu_id` (`menu_id`),
|
|
|
|
|
|
KEY `idx_menu_parent` (`parent_id`)
|
|
|
|
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
|
|
|
|
|
|
|
|
|
|
|
|
-- Insert default menus
|
2025-10-08 09:34:50 +08:00
|
|
|
|
INSERT INTO `tb_sys_menu` (id,menu_id, name, parent_id, url, component, icon, order_num, type) VALUES
|
2025-10-08 14:11:54 +08:00
|
|
|
|
('1','menu_system_manage', '系统管理', NULL, '/manage/system/manage', 'manage/system/ManageView', 'el-icon-setting', 1, 1),
|
|
|
|
|
|
('2','menu_system_dept', '部门管理', 'menu_system_manage', '/manage/system/dept', 'manage/system/DeptManageView', 'el-icon-office-building', 2, 1),
|
|
|
|
|
|
('3','menu_system_menu', '菜单管理', 'menu_system_manage', '/manage/system/menu', 'manage/system/MenuManageView', 'el-icon-menu', 2, 1),
|
|
|
|
|
|
('4','menu_system_permission', '权限管理', 'menu_system_manage', '/manage/system/permission', 'manage/system/PermissionManageView', 'el-icon-key', 3, 1),
|
|
|
|
|
|
('5','menu_system_role', '角色管理', 'menu_system_manage', '/manage/system/role', 'manage/system/RoleManageView', 'el-icon-user', 4, 1);
|
2025-09-28 14:20:09 +08:00
|
|
|
|
|
|
|
|
|
|
DROP TABLE IF EXISTS `tb_sys_menu_permission`;
|
|
|
|
|
|
CREATE TABLE `tb_sys_menu_permission` (
|
|
|
|
|
|
`id` VARCHAR(50) NOT NULL COMMENT '菜单权限ID',
|
|
|
|
|
|
`permission_id` VARCHAR(50) NOT NULL COMMENT '权限ID',
|
|
|
|
|
|
`menu_id` VARCHAR(50) NOT NULL COMMENT '菜单ID',
|
|
|
|
|
|
`creator` VARCHAR(50) DEFAULT NULL COMMENT '创建者',
|
|
|
|
|
|
`updater` VARCHAR(50) DEFAULT NULL COMMENT '更新者',
|
|
|
|
|
|
`create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|
|
|
|
|
`update_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|
|
|
|
|
`delete_time` TIMESTAMP NULL DEFAULT NULL COMMENT '删除时间',
|
|
|
|
|
|
`deleted` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
|
|
|
|
|
|
PRIMARY KEY (`id`),
|
|
|
|
|
|
UNIQUE KEY `uk_menu_permission` (`menu_id`, `permission_id`)
|
|
|
|
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
|
2025-10-08 09:34:50 +08:00
|
|
|
|
-- Insert menu-permission associations
|
2025-09-28 14:20:09 +08:00
|
|
|
|
INSERT INTO `tb_sys_menu_permission` (id, permission_id, menu_id) VALUES
|
2025-10-08 14:11:54 +08:00
|
|
|
|
('1', 'perm_system_manage', 'menu_system_manage'),
|
|
|
|
|
|
('2', 'perm_system_dept_manage', 'menu_system_dept'),
|
|
|
|
|
|
('3', 'perm_system_menu_manage', 'menu_system_menu'),
|
|
|
|
|
|
('4', 'perm_system_permission_manage', 'menu_system_permission'),
|
|
|
|
|
|
('5', 'perm_system_role_manage', 'menu_system_role');
|