<?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="doumeemes.dao.system.SystemMenuMapper">
|
|
<!-- 查询菜单列表 -->
|
<resultMap id="SystemMenuListVO" type="doumeemes.dao.system.vo.SystemMenuListVO" autoMapping="true">
|
<id column="ID" property="id"/>
|
<association property="createUserInfo" javaType="doumeemes.dao.system.model.SystemUser">
|
<result column="CREATE_USER_ID" property="id"/>
|
<result column="CREATE_USER_NAME" property="username"/>
|
</association>
|
<association property="updateUserInfo" javaType="doumeemes.dao.system.model.SystemUser">
|
<result column="UPDATE_USER_ID" property="id"/>
|
<result column="UPDATE_USER_NAME" property="username"/>
|
</association>
|
</resultMap>
|
<select id="selectManageList" parameterType="doumeemes.dao.system.dto.QuerySystemMenuDTO" resultMap="SystemMenuListVO">
|
SELECT
|
menu.`TYPE`,menu.`MODULE_ID`, menu.`ID`, menu.`PARENT_ID`, menu.`NAME`, menu.`PATH`, menu.`FIXED`, menu.`REMARK`, menu.`DISABLED`, menu.SORT, menu.`ICON`, menu.`CREATE_TIME`, menu.`UPDATE_TIME`, menu.`CREATE_USER`, menu.`UPDATE_USER`, menu.`DELETED`,menu.PATH_SEC,
|
create_user.ID CREATE_USER_ID, create_user.`USERNAME` CREATE_USER_NAME,
|
update_user.ID UPDETE_USER_ID, update_user.`USERNAME` UPDATE_USER_NAME
|
FROM SYSTEM_MENU menu
|
LEFT JOIN `SYSTEM_USER` create_user ON create_user.ID = menu.CREATE_USER
|
LEFT JOIN `SYSTEM_USER` update_user ON update_user.ID = menu.UPDATE_USER
|
<where>
|
menu.DELETED = 0
|
<if test="dto.type != null">
|
AND menu.`TYPE` = #{dto.type}
|
</if>
|
<if test="dto.moduleId != null">
|
AND menu.`MODULE_ID` = #{dto.moduleId}
|
</if>
|
</where>
|
ORDER BY menu.SORT
|
</select>
|
|
<!-- 查询菜单树 -->
|
<select id="selectByUserId" resultType="doumeemes.dao.system.model.SystemMenu">
|
SELECT
|
DISTINCT menu.`ID`, menu.`TYPE`,menu.`MODULE_ID`, menu.`PARENT_ID`, menu.`NAME`, menu.`PATH`, menu.`REMARK`, menu.`DISABLED`, menu.SORT, menu.`ICON`, menu.`CREATE_TIME`, menu.`UPDATE_TIME`, menu.`CREATE_USER`, menu.`UPDATE_USER`, menu.`DELETED`,menu.PATH_SEC
|
FROM `SYSTEM_MENU` menu
|
INNER JOIN SYSTEM_ROLE_MENU role_menu ON role_menu.MENU_ID = menu.ID AND role_menu.DELETED = 0
|
INNER JOIN SYSTEM_USER_ROLE user_role ON user_role.ROLE_ID = role_menu.ROLE_ID AND user_role.DELETED = 0
|
LEFT JOIN system_role r on user_role.ROLE_ID=r.id
|
<where>
|
AND menu.DELETED = 0
|
AND menu.DISABLED = 0
|
AND user_role.USER_ID = #{userId}
|
<if test="type!= null">
|
AND menu.`TYPE` = #{type}
|
</if>
|
<if test="companyId!= null">
|
AND r.COMPANY_ID= #{companyId}
|
</if>
|
</where>
|
ORDER BY menu.SORT
|
</select>
|
|
<!-- 根据角色ID查询菜单列表 -->
|
<select id="selectByRoleId" parameterType="java.lang.Integer" resultType="doumeemes.dao.system.model.SystemMenu">
|
SELECT
|
menu.`TYPE`,menu.`MODULE_ID`, menu.`ID`, menu.`PARENT_ID`, menu.`NAME`, menu.`PATH`, menu.`REMARK`, menu.`DISABLED`, menu.SORT, menu.`ICON`, menu.`CREATE_TIME`, menu.`UPDATE_TIME`, menu.`CREATE_USER`, menu.`UPDATE_USER`, menu.`DELETED`,menu.PATH_SEC
|
FROM `SYSTEM_MENU` menu
|
INNER JOIN `SYSTEM_ROLE_MENU` role_menu ON role_menu.MENU_ID = menu.ID AND role_menu.DELETED = 0
|
<where>
|
menu.DELETED = 0
|
AND role_menu.ROLE_ID = #{roleId}
|
</where>
|
</select>
|
|
</mapper>
|