<?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.moral.api.mapper.ManageMenuMapper">
|
|
<!-- 通用查询映射结果 -->
|
<resultMap id="BaseResultMap" type="com.moral.api.entity.ManageMenu">
|
<id column="id" property="id"/>
|
<result column="name" property="name"/>
|
<result column="url" property="url"/>
|
<result column="icon" property="icon"/>
|
<result column="parent_id" property="parentId"/>
|
<result column="order" property="order"/>
|
<result column="create_time" property="createTime"/>
|
<result column="update_time" property="updateTime"/>
|
<result column="is_delete" property="isDelete"/>
|
<result column="desc" property="desc"/>
|
</resultMap>
|
|
|
<sql id="Base_Column_List">
|
mm.id,mm.name,mm.url,mm.icon,mm.parent_id,mm.order,mm.create_time,mm.update_time,mm.is_delete
|
</sql>
|
|
|
<!--根据角色查询父子结构的菜单-->
|
<select id="getAllMenusByRoles" resultMap="BaseResultMap">
|
select
|
DISTINCT
|
<include refid="Base_Column_List"></include>
|
from
|
manage_menu mm
|
join
|
manage_role_menu mrm
|
on
|
mm.`id` = mrm.`menu_id` and mm.`is_delete`=0
|
join
|
manage_role mr
|
on
|
mr.`id` = mrm.`role_id` and mr.`id` IN
|
<foreach collection="list" separator="," open="(" close=")" item="role">
|
#{role.id}
|
</foreach>
|
where
|
mm.`is_delete`=0
|
</select>
|
|
<select id="getManageMenuByName" resultMap="BaseResultMap">
|
select * from manage_menu
|
where name = #{name}
|
and is_delete = 0
|
</select>
|
|
<select id="getManageMenuById" resultMap="BaseResultMap">
|
select * from manage_menu
|
where id = #{id}
|
and is_delete = 0
|
</select>
|
|
<insert id="insertOne" parameterType="java.util.Map">
|
INSERT INTO manage_menu
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
<if test="name != null">
|
name,
|
</if>
|
<if test="url != null">
|
url,
|
</if>
|
<if test="icon != null">
|
icon,
|
</if>
|
<if test="parent_id != null">
|
parent_id,
|
</if>
|
<if test="order != null">
|
`order`,
|
</if>
|
</trim>
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<if test="name != null">
|
#{name},
|
</if>
|
<if test="url != null">
|
#{url},
|
</if>
|
<if test="icon != null">
|
#{icon},
|
</if>
|
<if test="parent_id != null">
|
#{parent_id},
|
</if>
|
<if test="order != null">
|
#{order},
|
</if>
|
</trim>
|
</insert>
|
|
<update id="updateManageMenuById" parameterType="java.util.Map">
|
update manage_menu
|
<set>
|
<if test="name != null">
|
name = #{name},
|
</if>
|
<if test="url != null">
|
url = #{url},
|
</if>
|
<if test="icon != null">
|
icon = #{icon},
|
</if>
|
<if test="parent_id != null">
|
parent_id = #{parent_id},
|
</if>
|
<if test="order != null">
|
`order` = #{order},
|
</if>
|
<if test="is_delete != null">
|
is_delete = #{is_delete},
|
</if>
|
</set>
|
where id = #{id}
|
</update>
|
|
<select id="getDataWithPage" parameterType="java.util.Map" resultMap="BaseResultMap">
|
select
|
<include refid="Base_Column_List"></include>
|
from manage_menu mm
|
where mm.is_delete = 0
|
limit #{start},#{number}
|
</select>
|
|
<select id="getAll" resultMap="BaseResultMap">
|
select
|
<include refid="Base_Column_List"></include>
|
from manage_menu mm
|
where mm.is_delete = 0
|
</select>
|
|
<select id="getManageRoleByNameFuzzy" parameterType="java.util.Map" resultMap="BaseResultMap">
|
select
|
<include refid="Base_Column_List"></include>
|
from manage_menu mm
|
where mm.name like concat('%',#{name},'%')
|
and mm.is_delete = 0
|
limit #{start},#{number}
|
</select>
|
|
</mapper>
|