-- 创建角色表 CREATE TABLE IF NOT EXISTS yz_roles ( role_id INT PRIMARY KEY AUTO_INCREMENT COMMENT '角色ID', tenant_id INT NOT NULL COMMENT '租户ID', role_code VARCHAR(50) NOT NULL COMMENT '角色代码', role_name VARCHAR(50) NOT NULL COMMENT '角色名称', description VARCHAR(500) DEFAULT NULL COMMENT '角色描述', status TINYINT DEFAULT 1 COMMENT '角色状态:0-禁用,1-启用', sort_order INT DEFAULT 0 COMMENT '排序序号', create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', delete_time DATETIME DEFAULT NULL COMMENT '删除时间', create_by VARCHAR(50) DEFAULT NULL COMMENT '创建人', update_by VARCHAR(50) DEFAULT NULL COMMENT '更新人', -- 索引 UNIQUE KEY uk_role_code (role_code), INDEX idx_status (status), INDEX idx_sort_order (sort_order), INDEX idx_create_time (create_time) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='角色表'; -- 插入默认角色数据 INSERT INTO yz_roles (tenant_id, role_code, role_name, description, status, sort_order, create_by, delete_time) VALUES (0, 'system_admin', '系统管理员', '系统超级管理员,拥有所有权限', 1, 1, 'system'), (0, 'admin', '管理员', '普通管理员,拥有大部分管理权限', 1, 2, 'system'), (0, 'user', '普通用户', '普通用户,拥有基础使用权限', 1, 3, 'system') ON DUPLICATE KEY UPDATE tenant_id = VALUES(tenant_id), role_name = VALUES(role_name), description = VALUES(description), update_time = CURRENT_TIMESTAMP, delete_time = NULL;