SysMenuMapper.xml
4.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
<?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="com.apple.erp.mapper.SysMenuMapper">
<resultMap type="com.apple.erp.entity.SysMenu" id="SysMenuResult">
<id property="menuId" column="menu_id"/>
<result property="menuName" column="menu_name"/>
<result property="parentId" column="parent_id"/>
<result property="sort" column="sort"/>
<result property="path" column="path"/>
<result property="menuType" column="menu_type"/>
<result property="status" column="status"/>
<result property="perms" column="perms"/>
<result property="icon" column="icon"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
<result property="delFlag" column="del_flag"/>
</resultMap>
<sql id="selectMenuVo">
select menu_id, menu_name, parent_id, sort, path, menu_type, status, perms, icon, create_by, create_time, update_by, update_time, del_flag
from t_sys_menu
</sql>
<select id="selectMenuPermsByUserId" parameterType="Long" resultType="String">
select distinct m.perms
from t_sys_menu m
left join t_sys_role_menu rm on m.menu_id = rm.menu_id
left join t_sys_user_role ur on rm.role_id = ur.role_id
left join t_sys_user u on ur.user_id = u.user_id
where u.user_id = #{userId} and m.menu_type in ('1','2') and m.status = 1 and m.del_flag = '0'
</select>
<select id="selectMenuPermsByRoleId" parameterType="Long" resultType="String">
select distinct m.perms
from t_sys_menu m
left join t_sys_role_menu rm on m.menu_id = rm.menu_id
where rm.role_id = #{roleId} and m.menu_type in ('1','2') and m.status = 1 and m.del_flag = '0'
</select>
<select id="selectMenuTreeByUserId" parameterType="Long" resultMap="SysMenuResult">
select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.menu_type, m.status, m.perms, m.icon, m.create_by, m.create_time, m.update_by, m.update_time, m.del_flag
from t_sys_menu m
left join t_sys_role_menu rm on m.menu_id = rm.menu_id
left join t_sys_user_role ur on rm.role_id = ur.role_id
left join t_sys_user u on ur.user_id = u.user_id
where u.user_id = #{userId} and m.menu_type in ('0','1') and m.status = 1 and m.del_flag = '0'
order by m.parent_id, m.sort
</select>
<select id="selectMenuTreeByRoleId" parameterType="Long" resultMap="SysMenuResult">
select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.menu_type, m.status, m.perms, m.icon, m.create_by, m.create_time, m.update_by, m.update_time, m.del_flag
from t_sys_menu m
left join t_sys_role_menu rm on m.menu_id = rm.menu_id
where rm.role_id = #{roleId} and m.status = 1 and m.del_flag = '0'
order by m.parent_id, m.sort
</select>
<select id="selectMenuList" parameterType="com.apple.erp.entity.SysMenu" resultMap="SysMenuResult">
<include refid="selectMenuVo"/>
<where>
<if test="menuName != null and menuName != ''">
AND menu_name like concat('%', #{menuName}, '%')
</if>
<if test="status != null and status != ''">
AND status = #{status}
</if>
</where>
order by parent_id, sort
</select>
<select id="selectMenuById" parameterType="Long" resultMap="SysMenuResult">
<include refid="selectMenuVo"/>
where menu_id = #{menuId}
</select>
<select id="hasChildByMenuId" parameterType="Long" resultType="int">
select count(1) from t_sys_menu where parent_id = #{menuId}
</select>
<select id="checkMenuExistRole" parameterType="Long" resultType="int">
select count(1) from t_sys_role_menu where menu_id = #{menuId}
</select>
</mapper>