|
|
@@ -5,9 +5,8 @@
|
|
|
<mapper namespace="com.xunmei.system.mapper.SysMenuMapper">
|
|
|
|
|
|
<resultMap type="com.xunmei.system.domain.SysMenu" id="SysMenuResult">
|
|
|
- <id property="menuId" column="menu_id" />
|
|
|
+ <id property="id" column="id" />
|
|
|
<result property="menuName" column="menu_name" />
|
|
|
- <result property="parentName" column="parent_name" />
|
|
|
<result property="parentId" column="parent_id" />
|
|
|
<result property="orderNum" column="order_num" />
|
|
|
<result property="path" column="path" />
|
|
|
@@ -55,11 +54,27 @@
|
|
|
</select>
|
|
|
|
|
|
<select id="selectMenuListByUserId" parameterType="com.xunmei.system.domain.SysMenu" resultMap="SysMenuResult">
|
|
|
- select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
|
|
|
- from sys_menu m
|
|
|
- left join sys_role_menu rm on m.menu_id = rm.menu_id
|
|
|
- left join sys_user_role ur on rm.role_id = ur.role_id
|
|
|
- left join sys_role ro on ur.role_id = ro.role_id
|
|
|
+ SELECT DISTINCT
|
|
|
+ m.id,
|
|
|
+ m.parent_id,
|
|
|
+ m.menu_name,
|
|
|
+ m.path,
|
|
|
+ m.component,
|
|
|
+ m.`query`,
|
|
|
+ m.visible,
|
|
|
+ m.STATUS,
|
|
|
+ ifnull( m.perms, '' ) AS perms,
|
|
|
+ m.is_frame,
|
|
|
+ m.is_cache,
|
|
|
+ m.menu_type,
|
|
|
+ m.icon,
|
|
|
+ m.order_num,
|
|
|
+ m.create_time
|
|
|
+ FROM
|
|
|
+ sys_menu m
|
|
|
+ LEFT JOIN sys_role_menu rm ON m.id = rm.menu_id
|
|
|
+ LEFT JOIN sys_user_role ur ON rm.role_id = ur.role_id
|
|
|
+ LEFT JOIN sys_role ro ON ur.role_id = ro.id
|
|
|
where ur.user_id = #{params.userId}
|
|
|
<if test="menuName != null and menuName != ''">
|
|
|
AND m.menu_name like concat('%', #{menuName}, '%')
|
|
|
@@ -74,23 +89,45 @@
|
|
|
</select>
|
|
|
|
|
|
<select id="selectMenuTreeByUserId" parameterType="Long" resultMap="SysMenuResult">
|
|
|
- select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
|
|
|
- from sys_menu m
|
|
|
- left join sys_role_menu rm on m.menu_id = rm.menu_id
|
|
|
- left join sys_user_role ur on rm.role_id = ur.role_id
|
|
|
- left join sys_role ro on ur.role_id = ro.role_id
|
|
|
- left join sys_user u on ur.user_id = u.user_id
|
|
|
- where u.user_id = #{userId} and m.menu_type in ('M', 'C') and m.status = 0 AND ro.status = 0
|
|
|
- order by m.parent_id, m.order_num
|
|
|
+ SELECT DISTINCT
|
|
|
+ m.id,
|
|
|
+ m.parent_id,
|
|
|
+ m.menu_name,
|
|
|
+ m.path,
|
|
|
+ m.component,
|
|
|
+ m.`query`,
|
|
|
+ m.visible,
|
|
|
+ m.STATUS,
|
|
|
+ ifnull( m.perms, '' ) AS perms,
|
|
|
+ m.is_frame,
|
|
|
+ m.is_cache,
|
|
|
+ m.menu_type,
|
|
|
+ m.icon,
|
|
|
+ m.order_num,
|
|
|
+ m.create_time
|
|
|
+ FROM
|
|
|
+ sys_menu m
|
|
|
+ LEFT JOIN sys_role_menu rm ON m.id = rm.menu_id
|
|
|
+ LEFT JOIN sys_user_role ur ON rm.role_id = ur.role_id
|
|
|
+ LEFT JOIN sys_role ro ON ur.role_id = ro.id
|
|
|
+ LEFT JOIN sys_user u ON ur.user_id = u.id
|
|
|
+ WHERE
|
|
|
+ u.id = #{params.userId}
|
|
|
+ AND m.menu_type IN ( 'M', 'C' )
|
|
|
+ AND m.STATUS = 0
|
|
|
+ AND ro.STATUS = 0
|
|
|
+ ORDER BY
|
|
|
+ m.parent_id,
|
|
|
+ m.order_num
|
|
|
</select>
|
|
|
|
|
|
<select id="selectMenuListByRoleId" resultType="Long">
|
|
|
- select m.menu_id
|
|
|
+ select m.id
|
|
|
from sys_menu m
|
|
|
- left join sys_role_menu rm on m.menu_id = rm.menu_id
|
|
|
+ left join sys_role_menu rm on m.id = rm.menu_id
|
|
|
where rm.role_id = #{roleId}
|
|
|
<if test="menuCheckStrictly">
|
|
|
- and m.menu_id not in (select m.parent_id from sys_menu m inner join sys_role_menu rm on m.menu_id = rm.menu_id and rm.role_id = #{roleId})
|
|
|
+ and m.id not in (select m.parent_id from sys_menu m inner join sys_role_menu rm on m.id = rm.menu_id and rm.role_id = #{roleId})
|
|
|
</if>
|
|
|
order by m.parent_id, m.order_num
|
|
|
</select>
|