42 lines
3.2 KiB
SQL
42 lines
3.2 KiB
SQL
-- 创建菜单表(增强版,包含完整父子级别参数)
|
||
CREATE TABLE `yz_menus` (
|
||
`id` INT NOT NULL AUTO_INCREMENT COMMENT '菜单ID',
|
||
`name` VARCHAR(100) NOT NULL COMMENT '菜单名称',
|
||
`path` VARCHAR(255) NOT NULL COMMENT '菜单路径',
|
||
`parent_id` INT DEFAULT 0 COMMENT '父菜单ID,0表示顶级菜单',
|
||
`level` TINYINT DEFAULT 1 COMMENT '菜单层级:1-一级菜单,2-二级菜单,3-三级菜单',
|
||
`full_path` VARCHAR(500) DEFAULT NULL COMMENT '完整路径(包含所有父级路径)',
|
||
`is_leaf` TINYINT DEFAULT 0 COMMENT '是否叶子节点:0-非叶子节点,1-叶子节点',
|
||
`has_children` TINYINT DEFAULT 0 COMMENT '是否有子菜单:0-无子菜单,1-有子菜单',
|
||
`children_count` INT DEFAULT 0 COMMENT '子菜单数量',
|
||
`icon` VARCHAR(100) DEFAULT NULL COMMENT '菜单图标',
|
||
`order` INT DEFAULT 0 COMMENT '排序序号',
|
||
`status` TINYINT DEFAULT 1 COMMENT '状态:0-禁用,1-启用',
|
||
`component_path` VARCHAR(500) DEFAULT NULL COMMENT '组件路径',
|
||
`is_external` TINYINT DEFAULT 0 COMMENT '是否外部链接:0-内部路由,1-外部链接',
|
||
`external_url` VARCHAR(1000) DEFAULT NULL COMMENT '外部链接地址',
|
||
`menu_type` TINYINT DEFAULT 1 COMMENT '菜单类型:1-普通菜单,2-分组菜单,3-按钮菜单',
|
||
`permission` VARCHAR(200) DEFAULT NULL COMMENT '权限标识',
|
||
`description` VARCHAR(500) DEFAULT NULL COMMENT '菜单描述',
|
||
`create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||
`update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||
`create_by` VARCHAR(100) DEFAULT NULL COMMENT '创建人',
|
||
`update_by` VARCHAR(100) DEFAULT NULL COMMENT '更新人',
|
||
PRIMARY KEY (`id`),
|
||
KEY `idx_parent_id` (`parent_id`),
|
||
KEY `idx_level` (`level`),
|
||
KEY `idx_status` (`status`),
|
||
KEY `idx_order` (`order`),
|
||
KEY `idx_menu_type` (`menu_type`),
|
||
KEY `idx_full_path` (`full_path`(255))
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='菜单表(增强版)';
|
||
|
||
-- 插入默认菜单数据(包含完整父子级别参数)
|
||
INSERT INTO `yz_menus` (`name`, `path`, `parent_id`, `level`, `full_path`, `is_leaf`, `has_children`, `children_count`, `icon`, `order`, `status`, `component_path`, `menu_type`, `description`) VALUES
|
||
('仪表盘', '/dashboard', 0, 1, '/dashboard', 1, 0, 0, 'el-icon-monitor', 1, 1, '@/views/dashboard/index.vue', 1, '系统仪表盘,展示关键指标'),
|
||
('文件管理', '/files', 0, 1, '/files', 1, 0, 0, 'el-icon-folder', 3, 1, '@/views/files/index.vue', 1, '文件管理系统'),
|
||
('系统管理', '/system', 0, 1, '/system', 0, 1, 3, 'el-icon-setting', 4, 1, null, 2, '系统管理功能模块'),
|
||
('用户管理', '/system/users', 4, 2, '/system/users', 1, 0, 0, 'el-icon-user', 1, 1, '@/views/system/users/index.vue', 1, '用户信息管理'),
|
||
('菜单管理', '/system/menus', 4, 2, '/system/menus', 1, 0, 0, 'el-icon-menu', 2, 1, '@/views/system/menumanager.vue', 1, '菜单权限管理'),
|
||
('程序管理', '/system/programs', 4, 2, '/system/programs', 1, 0, 0, 'el-icon-cpu', 3, 1, '@/views/system/programs/index.vue', 1, '程序功能管理'),
|
||
('系统设置', '/settings', 0, 1, '/settings', 1, 0, 0, 'el-icon-setting', 99, 1, '@/views/settings/index.vue', 1, '系统参数设置'); |