|  |  |  | 
|---|
|  |  |  | <mapper namespace="com.zy.acs.manager.system.mapper.RoleMenuMapper"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="listMenuByUserId" resultType="com.zy.acs.manager.system.entity.Menu"> | 
|---|
|  |  |  | select * from sys_menu | 
|---|
|  |  |  | where 1=1 | 
|---|
|  |  |  | SELECT DISTINCT sm.* | 
|---|
|  |  |  | FROM sys_menu sm | 
|---|
|  |  |  | JOIN sys_role_menu srm ON sm.id = srm.menu_id | 
|---|
|  |  |  | JOIN sys_user_role sur ON srm.role_id = sur.role_id | 
|---|
|  |  |  | JOIN sys_role sr ON sur.role_id = sr.id | 
|---|
|  |  |  | WHERE 1=1 | 
|---|
|  |  |  | <if test="type != null"> | 
|---|
|  |  |  | AND type = #{type} | 
|---|
|  |  |  | AND sm.type = #{type} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | and deleted = 0 | 
|---|
|  |  |  | and id in ( | 
|---|
|  |  |  | select menu_id from sys_role_menu | 
|---|
|  |  |  | where role_id in ( | 
|---|
|  |  |  | select sur.role_id from sys_user_role sur | 
|---|
|  |  |  | left join sys_role sr on sur.role_id = sr.id | 
|---|
|  |  |  | where 1=1 | 
|---|
|  |  |  | and sur.user_id = #{userId} | 
|---|
|  |  |  | and sr.deleted = 0 | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | order by sort | 
|---|
|  |  |  | AND sur.user_id = #{userId} | 
|---|
|  |  |  | AND sr.deleted = 0 | 
|---|
|  |  |  | AND sm.deleted = 0 | 
|---|
|  |  |  | ORDER BY sm.sort | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <select id="listStrictlyMenuByRoleId" resultType="java.lang.Long"> | 
|---|