| <?xml version="1.0" encoding="UTF-8"?> | 
| <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | 
| <mapper namespace="cc.mrbird.febs.system.mapper.MenuMapper"> | 
|     <resultMap id="menu" type="cc.mrbird.febs.system.entity.Menu"> | 
|         <id column="MENU_ID" jdbcType="DECIMAL" property="menuId" /> | 
|         <result column="PARENT_ID" jdbcType="DECIMAL" property="parentId" /> | 
|         <result column="MENU_NAME" jdbcType="VARCHAR" property="menuName" /> | 
|         <result column="URL" jdbcType="VARCHAR" property="url" /> | 
|         <result column="PERMS" jdbcType="VARCHAR" property="perms" /> | 
|         <result column="ICON" jdbcType="VARCHAR" property="icon" /> | 
|         <result column="TYPE" jdbcType="CHAR" property="type" /> | 
|         <result column="ORDER_NUM" jdbcType="DECIMAL" property="orderNum" /> | 
|         <result column="CREATE_TIME" jdbcType="TIMESTAMP" property="createTime" /> | 
|         <result column="MODIFY_TIME" jdbcType="TIMESTAMP" property="modifyTime" /> | 
|     </resultMap> | 
|   | 
|     <select id="findUserPermissions" resultMap="menu"> | 
|         SELECT | 
|             m.perms | 
|         FROM | 
|             t_role r | 
|         LEFT JOIN t_user_role ur ON (r.role_id = ur.role_id) | 
|         LEFT JOIN t_user u ON (u.user_id = ur.user_id) | 
|         LEFT JOIN t_role_menu rm ON (rm.role_id = r.role_id) | 
|         LEFT JOIN t_menu m ON (m.menu_id = rm.menu_id) | 
|         WHERE | 
|             u.username = #{username} | 
|         AND m.perms is not null | 
|         AND m.perms <> '' | 
|     </select> | 
|   | 
|     <select id="findUserMenus" resultMap="menu"> | 
|         SELECT | 
|             m.* | 
|         FROM | 
|             t_menu m | 
|         WHERE | 
|             m.type <> 1 | 
|         AND m.MENU_ID IN ( | 
|             SELECT DISTINCT | 
|                 rm.menu_id | 
|             FROM | 
|                 t_role_menu rm | 
|             LEFT JOIN t_role r ON (rm.role_id = r.role_id) | 
|             LEFT JOIN t_user_role ur ON (ur.role_id = r.role_id) | 
|             LEFT JOIN t_user u ON (u.user_id = ur.user_id) | 
|             WHERE | 
|                 u.username = #{username} | 
|         ) | 
|         ORDER BY | 
|           m.order_num | 
|     </select> | 
| </mapper> |