FrontMenuMapper.xml
8.46 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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
<?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.lhcredit.project.business.frontMenu.mapper.FrontMenuMapper">
<resultMap type="FrontMenu" id="FrontMenuResult">
<result property="menuId" column="menu_id" />
<result property="menuName" column="menu_name" />
<result property="parentId" column="parent_id" />
<result property="parentName" column="parent_name" />
<result property="orderNum" column="order_num" />
<result property="url" column="url" />
<result property="target" column="target" />
<result property="menuType" column="menu_type" />
<result property="visible" column="visible" />
<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="remark" column="remark" />
<result property="route" column="route" />
</resultMap>
<sql id="selectFrontMenuVo">
select menu_id, menu_name, parent_id, order_num,route, url, target, menu_type, visible, perms, icon, create_by, create_time, update_by, update_time, remark from front_menu
</sql>
<select id="selectFrontMenuList" parameterType="FrontMenu" resultMap="FrontMenuResult">
<include refid="selectFrontMenuVo"/>
<where>
<if test="menuId != null "> and menu_id = #{menuId}</if>
<if test="menuName != null and menuName != '' "> and menu_name = #{menuName}</if>
<if test="parentId != null "> and parent_id = #{parentId}</if>
<if test="orderNum != null "> and order_num = #{orderNum}</if>
<if test="route != null and route != '' "> and route = #{route}</if>
<if test="url != null and url != '' "> and url = #{url}</if>
<if test="target != null and target != '' "> and target = #{target}</if>
<if test="menuType != null and menuType != '' "> and menu_type = #{menuType}</if>
<if test="visible != null and visible != '' "> and visible = #{visible}</if>
<if test="perms != null and perms != '' "> and perms = #{perms}</if>
<if test="icon != null and icon != '' "> and icon = #{icon}</if>
<if test="createBy != null and createBy != '' "> and create_by = #{createBy}</if>
<if test="createTime != null "> and create_time = #{createTime}</if>
<if test="updateBy != null and updateBy != '' "> and update_by = #{updateBy}</if>
<if test="updateTime != null "> and update_time = #{updateTime}</if>
<if test="remark != null and remark != '' "> and remark = #{remark}</if>
</where>
</select>
<select id="selectFrontMenuById" parameterType="Long" resultMap="FrontMenuResult">
<include refid="selectFrontMenuVo"/>
where menu_id = #{menuId}
</select>
<insert id="insertFrontMenu" parameterType="FrontMenu" useGeneratedKeys="true" keyProperty="menuId">
insert into front_menu
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="menuName != null and menuName != '' ">menu_name,</if>
<if test="parentId != null ">parent_id,</if>
<if test="orderNum != null ">order_num,</if>
<if test="route != null and route != '' "> route ,</if>
<if test="url != null and url != '' ">url,</if>
<if test="target != null and target != '' ">target,</if>
<if test="menuType != null and menuType != '' ">menu_type,</if>
<if test="visible != null and visible != '' ">visible,</if>
<if test="perms != null and perms != '' ">perms,</if>
<if test="icon != null and icon != '' ">icon,</if>
<if test="createBy != null and createBy != '' ">create_by,</if>
<if test="createTime != null ">create_time,</if>
<if test="updateBy != null and updateBy != '' ">update_by,</if>
<if test="updateTime != null ">update_time,</if>
<if test="remark != null and remark != '' ">remark,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="menuName != null and menuName != '' ">#{menuName},</if>
<if test="parentId != null ">#{parentId},</if>
<if test="orderNum != null ">#{orderNum},</if>
<if test="route != null and route != '' ">#{route},</if>
<if test="url != null and url != '' ">#{url},</if>
<if test="target != null and target != '' ">#{target},</if>
<if test="menuType != null and menuType != '' ">#{menuType},</if>
<if test="visible != null and visible != '' ">#{visible},</if>
<if test="perms != null and perms != '' ">#{perms},</if>
<if test="icon != null and icon != '' ">#{icon},</if>
<if test="createBy != null and createBy != '' ">#{createBy},</if>
<if test="createTime != null ">#{createTime},</if>
<if test="updateBy != null and updateBy != '' ">#{updateBy},</if>
<if test="updateTime != null ">#{updateTime},</if>
<if test="remark != null and remark != '' ">#{remark},</if>
</trim>
</insert>
<update id="updateFrontMenu" parameterType="FrontMenu">
update front_menu
<trim prefix="SET" suffixOverrides=",">
<if test="menuName != null and menuName != '' ">menu_name = #{menuName},</if>
<if test="parentId != null ">parent_id = #{parentId},</if>
<if test="orderNum != null ">order_num = #{orderNum},</if>
<if test="route != null and route != '' ">route = #{route},</if>
<if test="url != null and url != '' ">url = #{url},</if>
<if test="target != null and target != '' ">target = #{target},</if>
<if test="menuType != null and menuType != '' ">menu_type = #{menuType},</if>
<if test="visible != null and visible != '' ">visible = #{visible},</if>
<if test="perms != null and perms != '' ">perms = #{perms},</if>
<if test="icon != null and icon != '' ">icon = #{icon},</if>
<if test="createBy != null and createBy != '' ">create_by = #{createBy},</if>
<if test="createTime != null ">create_time = #{createTime},</if>
<if test="updateBy != null and updateBy != '' ">update_by = #{updateBy},</if>
<if test="updateTime != null ">update_time = #{updateTime},</if>
<if test="remark != null and remark != '' ">remark = #{remark},</if>
</trim>
where menu_id = #{menuId}
</update>
<delete id="deleteFrontMenuById" parameterType="Long">
delete from front_menu where menu_id = #{menuId}
</delete>
<delete id="deleteFrontMenuByIds" parameterType="String">
delete from front_menu where menu_id in
<foreach item="menuId" collection="array" open="(" separator="," close=")">
#{menuId}
</foreach>
</delete>
<select id="selectMenuById" parameterType="Long" resultMap="FrontMenuResult">
SELECT t.menu_id, t.parent_id, t.menu_name, t.order_num, t.route,t.url, t.target, t.menu_type, t.visible, t.perms, t.icon, t.remark,
(SELECT menu_name FROM front_menu WHERE menu_id = t.parent_id) parent_name
FROM front_menu t
where t.menu_id = #{menuId}
</select>
<select id="checkMenuNameUnique" parameterType="FrontMenu" resultMap="FrontMenuResult">
<include refid="selectFrontMenuVo"/>
where menu_name=#{menuName} and parent_id = #{parentId}
</select>
<select id="selectMenuAll" resultMap="FrontMenuResult">
<include refid="selectFrontMenuVo"/>
order by parent_id, order_num
</select>
<select id="selectMenuAllByUserId" parameterType="Long" resultMap="FrontMenuResult">
SELECT fm.* FROM `front_user_role` r LEFT JOIN `front_role_menu` m ON r.role_id=m.role_id
LEFT JOIN `front_menu` fm ON m.menu_id=fm.menu_id
WHERE r.user_id=#{userId}
and fm.menu_id IS NOT NULL
</select>
<select id="selectMenuTree" parameterType="Long" resultType="String">
select concat(m.menu_id, ifnull(m.perms,'')) as perms
from front_menu m
left join front_role_menu rm on m.menu_id = rm.menu_id
where rm.role_id = #{roleId}
order by m.parent_id, m.order_num
</select>
</mapper>