fix(emr): 为医生角色授予电子病历管理菜单权限
- 授予医生、门诊医生、住院医生、管理员EMR菜单访问权限 - 包括:修订历史、病历检索、病程记录等
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
-- V102__grant_emr_menu_to_doctor.sql
|
||||
-- 为医生角色授予电子病历管理相关菜单权限
|
||||
|
||||
-- 1. 获取医生角色ID并授予EMR菜单权限
|
||||
INSERT INTO sys_role_menu (role_id, menu_id)
|
||||
SELECT
|
||||
r.role_id,
|
||||
m.menu_id
|
||||
FROM sys_role r
|
||||
CROSS JOIN sys_menu m
|
||||
WHERE r.role_name IN ('医生', 'doctor', '门诊医生', '住院医生', '管理员', 'admin')
|
||||
AND m.menu_id IN (
|
||||
20201, -- 电子病历管理
|
||||
20202, -- 病案归档
|
||||
20203, -- 修订历史
|
||||
20204, -- 病历时效
|
||||
20205, -- 病历检索
|
||||
20206, -- 进程记录
|
||||
20207 -- 知识库
|
||||
)
|
||||
AND NOT EXISTS (
|
||||
SELECT 1 FROM sys_role_menu rm
|
||||
WHERE rm.role_id = r.role_id AND rm.menu_id = m.menu_id
|
||||
);
|
||||
|
||||
-- 2. 为医生角色授予EMR相关权限
|
||||
INSERT INTO sys_role_menu (role_id, menu_id)
|
||||
SELECT
|
||||
r.role_id,
|
||||
m.menu_id
|
||||
FROM sys_role r
|
||||
CROSS JOIN sys_menu m
|
||||
WHERE r.role_name IN ('医生', 'doctor', '门诊医生', '住院医生', '管理员', 'admin')
|
||||
AND m.perms IN (
|
||||
'emr:list',
|
||||
'emr:edit',
|
||||
'document:progressnote:list',
|
||||
'document:progressnote:add',
|
||||
'document:progressnote:edit'
|
||||
)
|
||||
AND NOT EXISTS (
|
||||
SELECT 1 FROM sys_role_menu rm
|
||||
WHERE rm.role_id = r.role_id AND rm.menu_id = m.menu_id
|
||||
);
|
||||
Reference in New Issue
Block a user