<?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.yuanchu.limslaboratory.mapper.RoleManageMapper">
|
<insert id="insertBatchRoleMenu" useGeneratedKeys="true" keyProperty="id">
|
insert
|
role_menu (id,`role_id`,`menu_id`,`selected`,`added`,`updated`,`deleted`,`create_time`)
|
values
|
<foreach collection="roleMenuAddList" separator="," item="r">
|
(#{r.id},#{r.roleId},#{r.menuId},#{r.selected},#{r.added},#{r.updated},#{r.deleted},#{r.createTime})
|
</foreach>
|
</insert>
|
<insert id="insertRole">
|
insert
|
role(id,name,create_time) value (
|
#{id},
|
#{name},
|
#{createTime}
|
)
|
</insert>
|
<insert id="insertInterfaceList">
|
insert
|
interface_info (id,name,url,menu_id,type,state)
|
values
|
<foreach collection="interfaceList" item="m" separator=",">
|
(#{m.id},#{m.name},#{m.url},#{m.menuId},#{m.type},1)
|
</foreach>
|
</insert>
|
<update id="updateRoleState">
|
UPDATE role
|
SET state = 0
|
WHERE (id = #{id})
|
</update>
|
<delete id="deleteRoleMenuByRoleId">
|
delete
|
from role_menu
|
where role_id = #{id}
|
and menu_id !=39
|
</delete>
|
<select id="getAssertName" resultType="com.yuanchu.limslaboratory.pojo.RoleInfo">
|
select id
|
from role
|
where name = #{roleName}
|
and state = 1
|
</select>
|
<select id="selectAllRoleAndMenu" resultMap="roleAndMenu">
|
SELECT r.id roleId,
|
r.`name` roleName,
|
menu_id menuId,
|
parent_id parentId,
|
m.`name` menuName,
|
rm.selected,
|
rm.added,
|
rm.updated,
|
rm.deleted,
|
r.create_time createTime,
|
r.update_time updateTime
|
FROM role_menu rm,
|
(select id, name, create_Time, update_Time,state
|
from role
|
where 1=1
|
<if test="dto.name!=null and dto.name!=''">
|
and name like CONCAT('%',#{dto.name},'%')
|
</if>
|
limit #{dto.currentPage}, #{dto.pageSize}) r,
|
menu m
|
WHERE rm.role_id = r.id
|
AND rm.menu_id = m.id
|
AND r.state = 1
|
AND rm.state = 1
|
AND m.state = 1
|
</select>
|
<select id="getRoleInfoByName" resultType="com.yuanchu.limslaboratory.pojo.RoleInfo">
|
select id
|
from role
|
where 1=1
|
and state=1
|
<if test="roleName!=null and roleName!=''">
|
and name like CONCAT('%',#{roleName},'%')
|
</if>
|
</select>
|
<select id="selectAllRoleAndMenuByRoleId" resultMap="roleAndMenuById">
|
SELECT r.`name` roleName,
|
menu_id menuId,
|
parent_id parentId,
|
m.`name` menuName,
|
m.url menuUrl,
|
-- m.redirect redirect,
|
-- m.icon icon,
|
rm.selected,
|
rm.added,
|
rm.updated,
|
rm.deleted
|
FROM role_menu rm,
|
role r,
|
menu m
|
WHERE rm.role_id = r.id
|
AND rm.menu_id = m.id
|
AND r.state = 1
|
AND rm.state = 1
|
AND m.state = 1
|
and r.id = #{roleId}
|
</select>
|
|
<select id="getUserListRole" resultType="map">
|
SELECT CONCAT(r.`id`, '') id, r.`name`
|
FROM role r
|
where state!=0
|
</select>
|
<select id="selctInterFaceType" resultType="java.util.Map">
|
select type, menu_id menuId
|
from interface_info
|
WHERE url = #{url}
|
</select>
|
<select id="hasUrl" resultType="java.util.Map">
|
SELECT COUNT(id) num
|
from role_menu
|
WHERE role_id = #{roleId}
|
and menu_id = #{menuId}
|
and ${type} = 1
|
</select>
|
<select id="getAllInterfaces" resultType="java.util.Map">
|
select name, url
|
from interface_info
|
</select>
|
<select id="getRoleMenuByRoleId" resultType="com.yuanchu.limslaboratory.pojo.RoleMenu">
|
select id
|
from role_menu
|
where role_id = #{roleId}
|
</select>
|
<resultMap id="roleAndMenuById" type="com.yuanchu.limslaboratory.pojo.dto.RoleAndMenuDto">
|
<result property="roleName" column="roleName"/>
|
<result property="createTime" column="createTime"/>
|
<result property="updateTime" column="updateTime"/>
|
<collection property="roleMenuList" ofType="roleMenu">
|
<result property="menuId" column="menuId"/>
|
<result property="added" column="added"/>
|
<result property="deleted" column="deleted"/>
|
<result property="updated" column="updated"/>
|
<result property="selected" column="selected"/>
|
<result property="menuName" column="menuName"/>
|
<result property="menuUrl" column="menuUrl"/>
|
<result property="redirect" column="redirect"/>
|
<result property="icon" column="icon"/>
|
<result property="parentId" column="parentId"/>
|
</collection>
|
</resultMap>
|
|
<resultMap id="roleAndMenu" type="com.yuanchu.limslaboratory.pojo.dto.RoleAndMenuDto">
|
<result property="roleId" column="roleId"/>
|
<result property="roleName" column="roleName"/>
|
<result property="createTime" column="createTime"/>
|
<result property="updateTime" column="updateTime"/>
|
<collection property="roleMenuList" ofType="roleMenu">
|
<result property="menuId" column="menuId"/>
|
<result property="added" column="added"/>
|
<result property="deleted" column="deleted"/>
|
<result property="updated" column="updated"/>
|
<result property="selected" column="selected"/>
|
<result property="menuName" column="menuName"/>
|
<result property="parentId" column="parentId"/>
|
</collection>
|
</resultMap>
|
</mapper>
|