Commit ef3b220993e23665443e6286dbe74b1b53971ffb

Authored by 云中非
1 parent c1535a17

fix(DEFECT-405): 租户角色禁用后,菜单访问控制问题

... ... @@ -41,8 +41,13 @@
41 41 SELECT
42 42 <include refid="menuDTOMapColumn">
43 43 </include>
44   - FROM sys_menu
45   - WHERE id IN (SELECT menu_id FROM sys_tenant_menu WHERE tenant_id = #{tenantId})
  44 + FROM sys_menu WHERE id IN (
  45 + SELECT menu_id FROM sys_role_menu WHERE role_id IN (
  46 + SELECT id FROM sys_role WHERE id in (
  47 + SELECT role_id FROM sys_tenant_role WHERE tenant_id = #{tenantId}
  48 + ) AND enabled=true
  49 + )
  50 + )
46 51 </select>
47 52
48 53 <select id="selectMyMenu" resultMap="menuDTOMap">
... ... @@ -50,10 +55,13 @@
50 55 <include refid="menuDTOMapColumn">
51 56 </include>
52 57 FROM sys_menu
53   - WHERE id IN (SELECT menu_id
54   - FROM sys_role_menu
55   - WHERE role_id IN (SELECT id FROM sys_role WHERE id in (SELECT role_id FROM sys_user_role WHERE user_id
56   - = #{userId}) AND enabled=true))
  58 + WHERE id IN (
  59 + SELECT menu_id FROM sys_role_menu WHERE role_id IN (
  60 + SELECT id FROM sys_role WHERE id in (
  61 + SELECT role_id FROM sys_user_role WHERE user_id = #{userId}
  62 + ) AND enabled=true
  63 + )
  64 + )
57 65 </select>
58 66
59 67 <delete id="deleteTenantMenuMappingByMenuIds">
... ...