diff --git a/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/AppsMapper.xml b/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/AppsMapper.xml index f3e147747..9e1673c9d 100644 --- a/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/AppsMapper.xml +++ b/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/AppsMapper.xml @@ -180,28 +180,28 @@ select distinct app.* from - mxk_apps app,mxk_role_permissions p,mxk_roles r + mxk_apps app,mxk_group_permissions p,mxk_groups g where app.id = p.appid - and p.roleid = r.id + and p.groupid = g.id and app.instid = #{instId} and p.instid = #{instId} - and r.instid = #{instId} + and g.instid = #{instId} and app.visible != 0 - and r.id in( + and g.id in( - select id as roleid - from mxk_roles - where rolecode = 'ROLE_ALL_USER' + select id as groupid + from mxk_groups + where groupcode = 'ROLE_ALL_USER' union - + select - rm.roleid + gm.groupid from - mxk_role_member rm,mxk_userinfo u - where rm.memberid = u.id + mxk_group_member gm,mxk_userinfo u + where gm.memberid = u.id and u.id = #{userId}