Files
zyt/server/sql/1.9.20261109/02_assistant_service_menus.sql
2026-11-12 09:07:07 +08:00

43 lines
5.2 KiB
SQL

-- 独立医助服务菜单与权限;可重复执行,不覆盖已有自定义授权。
START TRANSACTION;
INSERT INTO `zyt_system_menu` (`pid`,`type`,`name`,`icon`,`sort`,`perms`,`paths`,`component`,`selected`,`params`,`is_cache`,`is_show`,`is_disable`,`create_time`,`update_time`)
SELECT 0,'M','医助服务','el-icon-Service',790,'','assistant_service','','','',0,1,0,UNIX_TIMESTAMP(),UNIX_TIMESTAMP()
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `zyt_system_menu` WHERE `pid`=0 AND `paths`='assistant_service');
SET @as_root=(SELECT id FROM `zyt_system_menu` WHERE pid=0 AND paths='assistant_service' ORDER BY id LIMIT 1);
INSERT INTO `zyt_system_menu` (`pid`,`type`,`name`,`icon`,`sort`,`perms`,`paths`,`component`,`selected`,`params`,`is_cache`,`is_show`,`is_disable`,`create_time`,`update_time`)
SELECT @as_root,'C','服务工作台','el-icon-List',20,'tcm.assistantService/view','workbench','assistant_service/workbench/index','','',0,1,0,UNIX_TIMESTAMP(),UNIX_TIMESTAMP()
FROM DUAL WHERE @as_root IS NOT NULL AND NOT EXISTS (SELECT 1 FROM `zyt_system_menu` WHERE `perms`='tcm.assistantService/view');
INSERT INTO `zyt_system_menu` (`pid`,`type`,`name`,`icon`,`sort`,`perms`,`paths`,`component`,`selected`,`params`,`is_cache`,`is_show`,`is_disable`,`create_time`,`update_time`)
SELECT @as_root,'C','服务知识','el-icon-Reading',10,'tcm.assistantService/manageKnowledge','knowledge','assistant_service/knowledge/index','','',0,1,0,UNIX_TIMESTAMP(),UNIX_TIMESTAMP()
FROM DUAL WHERE @as_root IS NOT NULL AND NOT EXISTS (SELECT 1 FROM `zyt_system_menu` WHERE `perms`='tcm.assistantService/manageKnowledge');
SET @as_workbench=(SELECT id FROM `zyt_system_menu` WHERE perms='tcm.assistantService/view' ORDER BY id LIMIT 1);
INSERT INTO `zyt_system_menu` (`pid`,`type`,`name`,`icon`,`sort`,`perms`,`paths`,`component`,`selected`,`params`,`is_cache`,`is_show`,`is_disable`,`create_time`,`update_time`)
SELECT @as_workbench,'A','生成服务分析','',0,'tcm.assistantService/analyze','','','','',0,0,0,UNIX_TIMESTAMP(),UNIX_TIMESTAMP()
FROM DUAL WHERE @as_workbench IS NOT NULL AND NOT EXISTS (SELECT 1 FROM `zyt_system_menu` WHERE `perms`='tcm.assistantService/analyze');
INSERT INTO `zyt_system_menu` (`pid`,`type`,`name`,`icon`,`sort`,`perms`,`paths`,`component`,`selected`,`params`,`is_cache`,`is_show`,`is_disable`,`create_time`,`update_time`)
SELECT @as_workbench,'A','生成回复草稿','',0,'tcm.assistantService/draftReply','','','','',0,0,0,UNIX_TIMESTAMP(),UNIX_TIMESTAMP()
FROM DUAL WHERE @as_workbench IS NOT NULL AND NOT EXISTS (SELECT 1 FROM `zyt_system_menu` WHERE `perms`='tcm.assistantService/draftReply');
INSERT INTO `zyt_system_menu` (`pid`,`type`,`name`,`icon`,`sort`,`perms`,`paths`,`component`,`selected`,`params`,`is_cache`,`is_show`,`is_disable`,`create_time`,`update_time`)
SELECT @as_workbench,'A','登记服务记录','',0,'tcm.assistantService/record','','','','',0,0,0,UNIX_TIMESTAMP(),UNIX_TIMESTAMP()
FROM DUAL WHERE @as_workbench IS NOT NULL AND NOT EXISTS (SELECT 1 FROM `zyt_system_menu` WHERE `perms`='tcm.assistantService/record');
INSERT INTO `zyt_system_menu` (`pid`,`type`,`name`,`icon`,`sort`,`perms`,`paths`,`component`,`selected`,`params`,`is_cache`,`is_show`,`is_disable`,`create_time`,`update_time`)
SELECT @as_workbench,'A','采纳跟进动作','',0,'tcm.assistantService/adoptAction','','','','',0,0,0,UNIX_TIMESTAMP(),UNIX_TIMESTAMP()
FROM DUAL WHERE @as_workbench IS NOT NULL AND NOT EXISTS (SELECT 1 FROM `zyt_system_menu` WHERE `perms`='tcm.assistantService/adoptAction');
INSERT INTO `zyt_system_menu` (`pid`,`type`,`name`,`icon`,`sort`,`perms`,`paths`,`component`,`selected`,`params`,`is_cache`,`is_show`,`is_disable`,`create_time`,`update_time`)
SELECT @as_workbench,'A','处理服务待办','',0,'tcm.assistantService/completeAction','','','','',0,0,0,UNIX_TIMESTAMP(),UNIX_TIMESTAMP()
FROM DUAL WHERE @as_workbench IS NOT NULL AND NOT EXISTS (SELECT 1 FROM `zyt_system_menu` WHERE `perms`='tcm.assistantService/completeAction');
INSERT INTO `zyt_system_menu` (`pid`,`type`,`name`,`icon`,`sort`,`perms`,`paths`,`component`,`selected`,`params`,`is_cache`,`is_show`,`is_disable`,`create_time`,`update_time`)
SELECT @as_workbench,'A','复核服务质检','',0,'tcm.assistantService/reviewQuality','','','','',0,0,0,UNIX_TIMESTAMP(),UNIX_TIMESTAMP()
FROM DUAL WHERE @as_workbench IS NOT NULL AND NOT EXISTS (SELECT 1 FROM `zyt_system_menu` WHERE `perms`='tcm.assistantService/reviewQuality');
-- 一线及管理角色的工作台权限;root 由服务端显式识别。
INSERT IGNORE INTO `zyt_system_role_menu` (`role_id`,`menu_id`)
SELECT r.id,m.id FROM `zyt_system_role` r JOIN `zyt_system_menu` m
ON (m.id=@as_root OR m.perms IN ('tcm.assistantService/view','tcm.assistantService/analyze','tcm.assistantService/draftReply','tcm.assistantService/record','tcm.assistantService/adoptAction','tcm.assistantService/completeAction'))
WHERE r.delete_time IS NULL AND r.name IN ('医助','经理','诊室组长','管理员');
-- 质检与知识发布仅授权管理角色。
INSERT IGNORE INTO `zyt_system_role_menu` (`role_id`,`menu_id`)
SELECT r.id,m.id FROM `zyt_system_role` r JOIN `zyt_system_menu` m
ON m.perms IN ('tcm.assistantService/reviewQuality','tcm.assistantService/manageKnowledge')
WHERE r.delete_time IS NULL AND r.name IN ('经理','诊室组长','管理员');
COMMIT;