<?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.lf.server.mapper.sys.UserMapper">
|
<resultMap id="resultMap" type="com.lf.server.entity.sys.UserEntity">
|
<id property="id" column="id"></id>
|
<result property="natives" column="native"></result>
|
<result property="createUser" column="create_user"></result>
|
<result property="createTime" column="create_time"></result>
|
<result property="updateUser" column="update_user"></result>
|
<result property="updateTime" column="update_time"></result>
|
</resultMap>
|
|
<select id="selectCount" resultType="java.lang.Integer">
|
select count(*) from lf.sys_user
|
<where>
|
1 = 1
|
<if test="uname != null">
|
and uname like #{uname}
|
</if>
|
<if test="depcode != null">
|
and depcode like #{depcode}
|
</if>
|
</where>
|
</select>
|
|
<select id="selectByPage" resultMap="resultMap" resultType="com.lf.server.entity.sys.UserEntity">
|
select a.*,fn_get_fullname(a.depcode, 1) depName from lf.sys_user a
|
<where>
|
1 = 1
|
<if test="uname != null">
|
and uname like #{uname}
|
</if>
|
<if test="depcode != null">
|
and depcode like #{depcode}
|
</if>
|
</where>
|
order by a.id desc
|
limit #{limit} offset #{offset}
|
</select>
|
|
<select id="selectCountForRole" resultType="java.lang.Integer">
|
select count(a.*) from lf.sys_user a
|
<where>
|
not exists (select b.id from lf.sys_role_user b where b.userid = a.id
|
<if test="roleid != null">
|
and b.roleid = #{roleid}
|
</if>
|
)
|
<if test="uname != null">
|
and a.uname like #{uname}
|
</if>
|
<if test="depcode != null">
|
and depcode like #{depcode}
|
</if>
|
</where>
|
</select>
|
|
<select id="selectByPageForRole" resultMap="resultMap" resultType="com.lf.server.entity.sys.UserEntity">
|
select a.*,fn_get_fullname(a.depcode, 1) depName from lf.sys_user a
|
<where>
|
not exists (select b.id from lf.sys_role_user b where b.userid = a.id
|
<if test="roleid != null">
|
and b.roleid = #{roleid}
|
</if>
|
)
|
<if test="uname != null">
|
and a.uname like #{uname}
|
</if>
|
<if test="depcode != null">
|
and depcode like #{depcode}
|
</if>
|
</where>
|
order by a.id desc
|
limit #{limit} offset #{offset}
|
</select>
|
|
<select id="selectUserAll" resultMap="resultMap" resultType="com.lf.server.entity.sys.UserEntity">
|
select a.*, fn_get_fullname(a.depcode, 1) depName from lf.sys_user a order by a.id desc
|
</select>
|
|
<select id="selectUser" resultMap="resultMap" resultType="com.lf.server.entity.sys.UserEntity">
|
select a.*, fn_get_fullname(a.depcode, 1) depName from lf.sys_user a where a.id = #{id}
|
</select>
|
|
<select id="selectByUid" resultMap="resultMap" resultType="com.lf.server.entity.sys.UserEntity">
|
select * from lf.sys_user where uid = #{uid}
|
</select>
|
|
<select id="selectByToken" resultType="com.lf.server.entity.sys.UserEntity">
|
select * from lf.sys_user where id = (
|
select create_user from lf.sys_token where token=#{token} and expire > now() limit 1)
|
</select>
|
|
<select id="selectForIsAdmin" resultType="java.lang.Integer">
|
select count(*) from lf.sys_user a
|
inner join lf.sys_role_user b on a.id = b.userid
|
inner join lf.sys_role c on b.roleid = c.id
|
where c.is_admin = 1 and a.id = #{id}
|
</select>
|
|
<select id="selectAdminUsers" resultType="com.lf.server.entity.sys.UserEntity">
|
select c.*, fn_get_fullname(b.depcode, 1) depName
|
from lf.sys_role_user a inner join lf.sys_user b on a.userid = b.id
|
inner join lf.sys_role c on a.roleid = a.id
|
where c.is_admin = #{type}
|
</select>
|
|
<select id="selectRoleByUserId" resultType="com.lf.server.entity.sys.RoleEntity">
|
select c.*, fn_get_fullname(a.depcode, 1) depName,fn_uname(c.create_user) createName,fn_uname(c.update_user) updateName
|
from lf.sys_user a inner join lf.sys_role_user b on a.id = b.userid
|
inner join lf.sys_role c on b.roleid = c.id
|
where a.id = #{id}
|
</select>
|
|
<select id="selectUserByRoleId" resultType="com.lf.server.entity.sys.RoleEntity">
|
select a.*, fn_get_fullname(a.depcode, 1) depName
|
from lf.sys_user a inner join lf.sys_role_user b on a.id = b.userid inner join lf.sys_role c on b.roleid = c.id
|
where c.id = #{roleId}
|
</select>
|
|
<insert id="insertUser" parameterType="com.lf.server.entity.sys.UserEntity">
|
insert into lf.sys_user
|
(depid,depcode,uid,uname,salt,sex,native,contact,job,email,addr,edu,idcard,status,create_user,create_time,bak)
|
values
|
(#{depid},#{depcode},#{uid},#{uname},#{salt},#{sex},#{natives},#{contact},#{job},#{email},#{addr},#{edu},#{idcard},
|
#{status},#{createUser},now(),#{bak})
|
</insert>
|
|
<insert id="insertUsers">
|
insert into lf.sys_user
|
(depid,depcode,uid,uname,salt,sex,native,contact,job,email,addr,edu,idcard,status,create_user,create_time,bak)
|
values
|
<foreach collection="list" item="item" index="index" separator="," >
|
(#{item.depid},#{item.depcode},#{item.uid},#{item.uname},#{item.salt},#{item.sex},#{item.natives},#{item.contact},#{item.job},
|
#{item.email},#{item.addr},#{item.edu},#{item.idcard},#{item.status},#{item.createUser}, now(),#{item.bak})
|
</foreach>
|
</insert>
|
|
<delete id="deleteUser">
|
delete from lf.sys_role_user where userid = #{id};
|
delete from lf.sys_user where id = #{id};
|
</delete>
|
|
<delete id="deleteUsers">
|
delete from lf.sys_role_user where userid in
|
<foreach item="id" collection="ids" index="index" open="(" separator="," close=")">
|
#{id}
|
</foreach>;
|
delete from lf.sys_user where id in
|
<foreach item="id" collection="ids" index="index" open="(" separator="," close=")">
|
#{id}
|
</foreach>;
|
</delete>
|
|
<update id="updateUser">
|
update lf.sys_user set depid=#{depid},depcode=#{depcode},uid=#{uid},uname=#{uname},salt=#{salt},sex=#{sex},native=#{natives},contact=#{contact},job=#{job},email=#{email},
|
addr=#{addr},edu=#{edu},idcard=#{idcard},status=#{status},update_user=#{updateUser},update_time=now(),bak=#{bak} where id=#{id}
|
</update>
|
|
<update id="updateUsersPwd">
|
update lf.sys_user set pwd=#{pwd},update_user=#{updateUser},update_time=now() where id in
|
<foreach item="id" collection="ids" index="index" open="(" separator="," close=")">
|
#{id}
|
</foreach>
|
</update>
|
</mapper>
|