<?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.dy.pipIrrGlobal.daoBa.BaRoleMapper">
|
<resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoBa.BaRole">
|
<!--@mbg.generated-->
|
<!--@Table ba_role-->
|
<id column="id" jdbcType="BIGINT" property="id" />
|
<result column="name" jdbcType="VARCHAR" property="name" />
|
<result column="operator" jdbcType="BIGINT" property="operator" />
|
<result column="operate_dt" jdbcType="TIMESTAMP" property="operateDt" />
|
<result column="deleted" jdbcType="TINYINT" property="deleted" />
|
</resultMap>
|
<sql id="Base_Column_List">
|
<!--@mbg.generated-->
|
id, `name`, `operator`, operate_dt, deleted
|
</sql>
|
<select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
|
<!--@mbg.generated-->
|
select
|
<include refid="Base_Column_List" />
|
from ba_role
|
where id = #{id,jdbcType=BIGINT}
|
</select>
|
<delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
|
<!--@mbg.generated-->
|
delete from ba_role
|
where id = #{id,jdbcType=BIGINT}
|
</delete>
|
|
<insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoBa.BaRole">
|
<!--@mbg.generated-->
|
insert into ba_role (id, `name`, `operator`,
|
operate_dt, deleted)
|
values (#{id,jdbcType=BIGINT}, #{name,jdbcType=VARCHAR}, #{operator,jdbcType=BIGINT},
|
#{operateDt,jdbcType=TIMESTAMP}, #{deleted,jdbcType=TINYINT})
|
</insert>
|
|
<insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoBa.BaRole">
|
<!--@mbg.generated-->
|
insert into ba_role
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
<if test="id != null">
|
id,
|
</if>
|
<if test="name != null">
|
`name`,
|
</if>
|
<if test="operator != null">
|
`operator`,
|
</if>
|
<if test="operateDt != null">
|
operate_dt,
|
</if>
|
<if test="deleted != null">
|
deleted,
|
</if>
|
</trim>
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<if test="id != null">
|
#{id,jdbcType=BIGINT},
|
</if>
|
<if test="name != null">
|
#{name,jdbcType=VARCHAR},
|
</if>
|
<if test="operator != null">
|
#{operator,jdbcType=BIGINT},
|
</if>
|
<if test="operateDt != null">
|
#{operateDt,jdbcType=TIMESTAMP},
|
</if>
|
<if test="deleted != null">
|
#{deleted,jdbcType=TINYINT},
|
</if>
|
</trim>
|
</insert>
|
<update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoBa.BaRole">
|
<!--@mbg.generated-->
|
update ba_role
|
<set>
|
<if test="name != null">
|
`name` = #{name,jdbcType=VARCHAR},
|
</if>
|
<if test="operator != null">
|
`operator` = #{operator,jdbcType=BIGINT},
|
</if>
|
<if test="operateDt != null">
|
operate_dt = #{operateDt,jdbcType=TIMESTAMP},
|
</if>
|
<if test="deleted != null">
|
deleted = #{deleted,jdbcType=TINYINT},
|
</if>
|
</set>
|
where id = #{id,jdbcType=BIGINT}
|
</update>
|
<update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoBa.BaRole">
|
<!--@mbg.generated-->
|
update ba_role
|
set `name` = #{name,jdbcType=VARCHAR},
|
`operator` = #{operator,jdbcType=BIGINT},
|
operate_dt = #{operateDt,jdbcType=TIMESTAMP},
|
deleted = #{deleted,jdbcType=TINYINT}
|
where id = #{id,jdbcType=BIGINT}
|
</update>
|
|
<!--根据角色名称查询记录数量,添加角色时判断是否重名-->
|
<select id="getRecordCountByName" resultType="java.lang.Integer">
|
SELECT
|
COUNT(*) AS recordCount
|
FROM ba_role
|
WHERE name = #{roleName}
|
</select>
|
|
<!--根据指定条件获取角色记录数-->
|
<select id="getRecordCount" resultType="java.lang.Long">
|
SELECT
|
COUNT(*) AS recordCount
|
FROM ba_role role
|
LEFT JOIN ba_role_permissions per ON per.roleId = role.id
|
<where>
|
AND role.deleted = 0
|
|
<if test = "roleId != null and roleId > 0">
|
AND role.id = ${roleId}
|
</if>
|
|
<if test = "roleName != null and roleName !=''">
|
AND role.name LIKE CONCAT('%',#{roleName},'%')
|
</if>
|
</where>
|
</select>
|
|
<!--根据指定条件获取角色记录-->
|
<select id="getRoles" resultType="com.dy.pipIrrGlobal.voBa.VoRole">
|
SELECT
|
(@i:=@i+1) AS id,
|
t.* FROM
|
(
|
SELECT
|
role.id AS roleId,
|
role.name AS roleName,
|
per.permissions,
|
(SELECT `name` FROM ba_user WHERE id = role.operator) AS operator,
|
role.operate_dt AS operateDt
|
FROM ba_role role
|
LEFT JOIN ba_role_permissions per ON per.roleId = role.id
|
<where>
|
AND role.deleted = 0
|
|
<if test = "roleId != null and roleId > 0">
|
AND role.id = ${roleId}
|
</if>
|
|
<if test = "roleName != null and roleName !=''">
|
AND role.name LIKE CONCAT('%',#{roleName},'%')
|
</if>
|
</where>
|
ORDER BY role.operate_dt DESC
|
<if test="pageCurr != null and pageSize != null">
|
LIMIT ${pageCurr}, ${pageSize}
|
</if>
|
) t
|
, (SELECT @i:=0) AS itable
|
</select>
|
|
<!--根据roleId逻辑删除角色对象-->
|
<update id="deleteRoleById">
|
UPDATE ba_role SET deleted = 1 WHERE id = ${roleId}
|
</update>
|
</mapper>
|