yunzer_go/server/database/yz_menus.sql
2025-10-27 23:13:08 +08:00

42 lines
3.2 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- 创建菜单表(增强版,包含完整父子级别参数)
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 '父菜单ID0表示顶级菜单',
`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, '系统参数设置');