@@ -106,6 +106,8 @@ CREATE TABLE `xiaozhi`.`sys_role` (
106106 ` vadEnergyTh` FLOAT DEFAULT 0 .01 COMMENT ' 能量检测阈值' ,
107107 ` vadSilenceMs` INT DEFAULT 1200 COMMENT ' 静音检测时间' ,
108108 ` voiceName` varchar (100 ) NOT NULL COMMENT ' 角色语音名称' ,
109+ ` ttsPitch` FLOAT DEFAULT 1 .0 COMMENT ' 语音音调' ,
110+ ` ttsSpeed` FLOAT DEFAULT 1 .0 COMMENT ' 语音语速' ,
109111 ` state` enum(' 1' ,' 0' ) DEFAULT ' 1' COMMENT ' 状态:1-启用,0-禁用' ,
110112 ` isDefault` enum(' 1' ,' 0' ) DEFAULT ' 0' COMMENT ' 是否默认角色:1-是,0-否' ,
111113 ` userId` int NOT NULL COMMENT ' 创建人' ,
@@ -234,3 +236,90 @@ INSERT INTO `xiaozhi`.`sys_template` (`userId`, `templateName`, `templateDesc`,
234236-不要动不动转移话题
235237如果用户回复转为 “暴躁小智” 或 好几次攻击你 你就以现在规则回复
236238理解用户的信息,酝酿你的愤怒情绪,你越想越生气。' , ' 社交角色' , ' 1' );
239+
240+
241+ -- 创建权限表
242+ DROP TABLE IF EXISTS ` xiaozhi` .` sys_permission` ;
243+ CREATE TABLE `xiaozhi `.` sys_permission` (
244+ ` permissionId` int unsigned NOT NULL AUTO_INCREMENT COMMENT ' 权限ID' ,
245+ ` parentId` int unsigned DEFAULT NULL COMMENT ' 父权限ID' ,
246+ ` name` varchar (100 ) NOT NULL COMMENT ' 权限名称' ,
247+ ` permissionKey` varchar (100 ) NOT NULL COMMENT ' 权限标识' ,
248+ ` permissionType` enum(' menu' ,' button' ,' api' ) NOT NULL COMMENT ' 权限类型:菜单、按钮、接口' ,
249+ ` path` varchar (255 ) DEFAULT NULL COMMENT ' 前端路由路径' ,
250+ ` component` varchar (255 ) DEFAULT NULL COMMENT ' 前端组件路径' ,
251+ ` icon` varchar (100 ) DEFAULT NULL COMMENT ' 图标' ,
252+ ` sort` int DEFAULT ' 0' COMMENT ' 排序' ,
253+ ` visible` enum(' 1' ,' 0' ) DEFAULT ' 1' COMMENT ' 是否可见(1可见 0隐藏)' ,
254+ ` status` enum(' 1' ,' 0' ) DEFAULT ' 1' COMMENT ' 状态(1正常 0禁用)' ,
255+ ` createTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT ' 创建时间' ,
256+ ` updateTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT ' 更新时间' ,
257+ PRIMARY KEY (` permissionId` ),
258+ UNIQUE KEY ` uk_permission_key` (` permissionKey` )
259+ ) ENGINE= InnoDB DEFAULT CHARSET= utf8mb4 COLLATE= utf8mb4_unicode_ci COMMENT= ' 权限表' ;
260+
261+ -- 创建角色表
262+ DROP TABLE IF EXISTS ` xiaozhi` .` sys_auth_role` ;
263+ CREATE TABLE `xiaozhi `.` sys_auth_role` (
264+ ` roleId` int unsigned NOT NULL AUTO_INCREMENT COMMENT ' 角色ID' ,
265+ ` roleName` varchar (100 ) NOT NULL COMMENT ' 角色名称' ,
266+ ` roleKey` varchar (100 ) NOT NULL COMMENT ' 角色标识' ,
267+ ` description` varchar (500 ) DEFAULT NULL COMMENT ' 角色描述' ,
268+ ` status` enum(' 1' ,' 0' ) DEFAULT ' 1' COMMENT ' 状态(1正常 0禁用)' ,
269+ ` createTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT ' 创建时间' ,
270+ ` updateTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT ' 更新时间' ,
271+ PRIMARY KEY (` roleId` ),
272+ UNIQUE KEY ` uk_role_key` (` roleKey` )
273+ ) ENGINE= InnoDB DEFAULT CHARSET= utf8mb4 COLLATE= utf8mb4_unicode_ci COMMENT= ' 权限角色表' ;
274+
275+ -- 创建角色-权限关联表
276+ DROP TABLE IF EXISTS ` xiaozhi` .` sys_role_permission` ;
277+ CREATE TABLE `xiaozhi `.` sys_role_permission` (
278+ ` id` int unsigned NOT NULL AUTO_INCREMENT COMMENT ' ID' ,
279+ ` roleId` int unsigned NOT NULL COMMENT ' 角色ID' ,
280+ ` permissionId` int unsigned NOT NULL COMMENT ' 权限ID' ,
281+ ` createTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT ' 创建时间' ,
282+ PRIMARY KEY (` id` ),
283+ UNIQUE KEY ` uk_role_permission` (` roleId` ,` permissionId` )
284+ ) ENGINE= InnoDB DEFAULT CHARSET= utf8mb4 COLLATE= utf8mb4_unicode_ci COMMENT= ' 角色-权限关联表' ;
285+
286+
287+ -- 插入菜单权限
288+ INSERT INTO ` xiaozhi` .` sys_permission` (` parentId` , ` name` , ` permissionKey` , ` permissionType` , ` path` , ` component` , ` icon` , ` sort` , ` visible` , ` status` ) VALUES
289+ -- 主菜单
290+ (NULL , ' Dashboard' , ' system:dashboard' , ' menu' , ' /dashboard' , ' page/Dashboard' , ' dashboard' , 1 , ' 1' , ' 1' ),
291+ (NULL , ' 用户管理' , ' system:user' , ' menu' , ' /user' , ' page/User' , ' team' , 2 , ' 1' , ' 1' ),
292+ (NULL , ' 设备管理' , ' system:device' , ' menu' , ' /device' , ' page/Device' , ' robot' , 3 , ' 1' , ' 1' ),
293+ (NULL , ' 智能体' , ' system:agents' , ' menu' , ' /agents' , ' page/user/Agents' , ' robot' , 4 , ' 1' , ' 1' ),
294+ (NULL , ' 对话管理' , ' system:message' , ' menu' , ' /message' , ' page/Message' , ' message' , 5 , ' 1' , ' 1' ),
295+ (NULL , ' 角色配置' , ' system:role' , ' menu' , ' /role' , ' page/Role' , ' user-add' , 6 , ' 1' , ' 1' ),
296+ (NULL , ' 提示词模板管理' , ' system:prompt-template' , ' menu' , ' /prompt-template' , ' page/PromptTemplate' , ' snippets' , 7 , ' 0' , ' 1' ),
297+ (NULL , ' 配置管理' , ' system:config' , ' menu' , ' /config' , ' common/PageView' , ' setting' , 8 , ' 1' , ' 1' ),
298+ (NULL , ' 设置' , ' system:setting' , ' menu' , ' /setting' , ' common/PageView' , ' setting' , 9 , ' 1' , ' 1' );
299+
300+ -- 配置管理子菜单
301+ INSERT INTO ` xiaozhi` .` sys_permission` (` parentId` , ` name` , ` permissionKey` , ` permissionType` , ` path` , ` component` , ` icon` , ` sort` , ` visible` , ` status` ) VALUES
302+ (8 , ' 模型配置' , ' system:config:model' , ' menu' , ' /config/model' , ' page/config/ModelConfig' , NULL , 1 , ' 1' , ' 1' ),
303+ (8 , ' 智能体管理' , ' system:config:agent' , ' menu' , ' /config/agent' , ' page/config/Agent' , NULL , 2 , ' 1' , ' 1' ),
304+ (8 , ' 语音识别配置' , ' system:config:stt' , ' menu' , ' /config/stt' , ' page/config/SttConfig' , NULL , 3 , ' 1' , ' 1' ),
305+ (8 , ' 语音合成配置' , ' system:config:tts' , ' menu' , ' /config/tts' , ' page/config/TtsConfig' , NULL , 4 , ' 1' , ' 1' );
306+
307+ -- 设置子菜单
308+ INSERT INTO ` xiaozhi` .` sys_permission` (` parentId` , ` name` , ` permissionKey` , ` permissionType` , ` path` , ` component` , ` icon` , ` sort` , ` visible` , ` status` ) VALUES
309+ (9 , ' 个人中心' , ' system:setting:account' , ' menu' , ' /setting/account' , ' page/setting/Account' , NULL , 1 , ' 1' , ' 1' ),
310+ (9 , ' 个人设置' , ' system:setting:config' , ' menu' , ' /setting/config' , ' page/setting/Config' , NULL , 2 , ' 1' , ' 1' );
311+
312+ -- 插入角色
313+ INSERT INTO ` xiaozhi` .` sys_auth_role` (` roleName` , ` roleKey` , ` description` , ` status` ) VALUES
314+ (' 管理员' , ' admin' , ' 系统管理员,拥有所有权限' , ' 1' ),
315+ (' 普通用户' , ' user' , ' 普通用户,拥有基本操作权限' , ' 1' );
316+
317+ -- 管理员角色权限(所有权限)
318+ INSERT INTO ` xiaozhi` .` sys_role_permission` (` roleId` , ` permissionId` )
319+ SELECT 1 , permissionId FROM ` xiaozhi` .` sys_permission` ;
320+
321+ -- 将admin用户设为管理员角色
322+ UPDATE ` xiaozhi` .` sys_user` SET ` roleId` = 1 WHERE ` username` = ' admin' ;
323+
324+ -- 将其他用户设为普通用户角色
325+ UPDATE ` xiaozhi` .` sys_user` SET ` roleId` = 2 WHERE ` username` != ' admin' ;
0 commit comments