<?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.lyms.platform.permission.dao.Permissions2Mapper">
<resultMap id="Permissions2ResultMap" type="com.lyms.platform.permission.model.Permissions2">
<id column="id" property="id" jdbcType="INTEGER" />
<result column="name" property="name" jdbcType="VARCHAR" />
<result column="uri" property="uri" jdbcType="VARCHAR" />
<result column="type" property="type" jdbcType="VARCHAR" />
<result column="puri" property="puri" jdbcType="VARCHAR" />
<result column="icon" property="icon" jdbcType="VARCHAR" />
<result column="yn" property="yn" jdbcType="INTEGER" />
<result column="create_date" property="createDate" jdbcType="TIMESTAMP" javaType="java.sql.Timestamp"/>
<result column="create_user" property="createUser" jdbcType="VARCHAR" />
<result column="enable" property="enable" jdbcType="INTEGER" />
<result column="extra_data" property="extra_data" jdbcType="VARCHAR" />
<result column="weight" property="weight" jdbcType="INTEGER" />
</resultMap>
<insert id="addPermissions2" parameterType="com.lyms.platform.permission.model.Permissions2">
insert into permissions2 (name,uri,type,puri,icon,yn,create_date,create_user,enable) values (#{name},#{uri},#{type},#{puri},#{icon},#{yn},#{createDate},#{createUser},#{enable})
</insert>
<update id="updatePermissions2" parameterType="com.lyms.platform.permission.model.Permissions2">
update permissions2 <set><if test="name != null and name != ''">
name = #{name,jdbcType=VARCHAR},
</if>
<if test="uri != null and uri != ''">
uri = #{uri,jdbcType=VARCHAR},
</if>
<if test="type != null and type != ''">
type = #{type,jdbcType=VARCHAR},
</if>
<if test="puri != null and puri != ''">
puri = #{puri,jdbcType=VARCHAR},
</if>
<if test="icon != null and icon != ''">
icon = #{icon,jdbcType=VARCHAR},
</if>
<if test="yn != null and yn >= 0">
yn = #{yn,jdbcType=INTEGER},
</if>
<if test="createDate != null ">
create_date = #{createDate,jdbcType=TIMESTAMP}
</if>
<if test="createUser != null and createUser != ''">
create_user = #{createUser,jdbcType=VARCHAR},
</if>
<if test="enable != null and enable >= 0">
enable = #{enable,jdbcType=INTEGER},
</if>
</set>
where id = #{id,jdbcType=INTEGER}
</update>
<delete id="deletePermissions2" parameterType="java.lang.Integer">
delete from permissions2 where id = #{id,jdbcType=INTEGER}
</delete>
<select id="getPermissions2" resultMap="Permissions2ResultMap" parameterType="java.lang.Integer">
select id,name,uri,type,puri,icon,yn,create_date,create_user,enable,extra_data,weight
from permissions2 where id = #{id,jdbcType=INTEGER}
</select>
<sql id="orderAndLimit">
<if test="sort != null and sort != '' ">
order by ${sort}
<if test="need != null">
limit #{offset, jdbcType=INTEGER} , #{limit, jdbcType=INTEGER}
</if>
</if>
</sql>
<sql id="Permissions2Condition">
<where>
1 = 1
<if test="id != null and id >= 0">
and id = #{id,jdbcType=INTEGER}
</if>
<if test="name != null and name != ''">
and name = #{name,jdbcType=VARCHAR}
</if>
<if test="uri != null and uri != ''">
and uri = #{uri,jdbcType=VARCHAR}
</if>
<if test="type != null and type != ''">
and type = #{type,jdbcType=VARCHAR}
</if>
<if test="puri != null and puri != ''">
and puri = #{puri,jdbcType=VARCHAR}
</if>
<if test="icon != null and icon != ''">
and icon = #{icon,jdbcType=VARCHAR}
</if>
<if test="yn != null and yn >= 0">
and yn = #{yn,jdbcType=INTEGER}
</if>
<if test="createDate != null">
and create_date = #{createDate,jdbcType=TIMESTAMP}
</if>
<if test="createUser != null and createUser != ''">
and create_user = #{createUser,jdbcType=VARCHAR}
</if>
<if test="enable != null and enable >= 0">
and enable = #{enable,jdbcType=INTEGER}
</if>
</where>
</sql>
<select id="queryPermissions2" resultMap="Permissions2ResultMap" parameterType="com.lyms.platform.permission.model.Permissions2Query">
select id,name,uri,type,puri,icon,yn,create_date,create_user,enable,extra_data,weight
from permissions2
<include refid="Permissions2Condition" />
<include refid="orderAndLimit" />
</select>
<select id="queryPermissions2Count" resultType="int" parameterType="com.lyms.platform.permission.model.Permissions2Query">
select count(1) from permissions2
<include refid="Permissions2Condition" />
</select>
<select id="queryPermissionByRoleIds" parameterType="java.util.List" resultMap="Permissions2ResultMap">
select b.* from role_permission_maps a, permissions2 b where a.yn=1 and b.yn=1 and a.role_id
in
<foreach collection="list" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
and a.permission_id=b.id ORDER BY b.weight
</select>
<select id="queryPermissionByRoleIds1" parameterType="int" resultMap="Permissions2ResultMap">
select b.* from role_permission_maps a, permissions2 b where a.role_id=
#{weight,jdbcType=INTEGER}
and b.yn=1 and a.yn=1 and a.permission_id=b.id;
</select>
</mapper>