You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
backend/xymanager_dao/src/main/resources/mappers/SysUserMapperDao.xml

129 lines
4.1 KiB
XML

<?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.shxy.xymanager_dao.dao.SysUserMapperDao">
<resultMap id="SysUserResult" type="com.shxy.xymanager_common.bean.SysUser">
<id column="uid" property="userId" />
<result column="name" property="userName" />
<result column="password" property="password" />
<result column="status" property="status" />
<result column="role" property="role" />
</resultMap>
<sql id="selectUserVo">
SELECT
user_id,
user_name,
`status`
FROM
sys_user u
</sql>
<select id="selectByUserAccount" resultMap="SysUserResult">
SELECT * FROM sys_user WHERE user_name = #{userName}
</select>
<select id="selectPages" resultMap="SysUserResult">
<include refid="selectUserVo"/>
WHERE status = '0'
<if test="params.userName != null and params.userName != ''">
AND user_name like concat('%', #{params.userName}, '%')
</if>
</select>
<select id="checkUserNameUnique" parameterType="String" resultType="java.lang.Integer">
select count(1) from sys_user where user_name = #{userName}
</select>
<select id="selectUserByUserName" parameterType="String" resultMap="SysUserResult">
<include refid="selectUserVo"/>
where u.user_name = #{userName}
</select>
<select id="selectUserById" parameterType="Long" resultMap="SysUserResult">
<include refid="selectUserVo"/>
where u.user_id = #{userId}
</select>
<update id="resetUserPwd">
update sys_user set password = #{password} where user_name = #{userName}
</update>
<insert id="addUser" parameterType="com.shxy.xymanager_common.bean.SysUser">
insert into sys_user(user_name,nick_name,password,role,create_time)
values(#{userName},#{userName},#{password},#{role},#{createTime})
</insert>
<select id="selectUserBySessionId" resultType="com.shxy.xymanager_common.entity.UserSession">
select
session_id as sessionId,
user_name as userName,
role,
expire_time as expireTime
from sys_user_session
where session_id = #{sessionId}
</select>
<update id="updateUserSession" parameterType="com.shxy.xymanager_common.entity.UserSession">
update `sys_user_session`
<set>
<if test="expireTime!= null">
expire_time = #{expireTime},
</if>
</set>
where session_id = #{sessionId}
</update>
<update id="updateById" parameterType="com.shxy.xymanager_common.bean.SysUser">
update `sys_user`
<set>
<if test="userName!= null">
user_name = #{userName},
</if>
<if test="nickName!= null">
nick_name = #{nickName},
</if>
<if test="password!= null">
password = #{password},
</if>
<if test="role!= null">
role = #{role},
</if>
<if test="status!= null">
status = #{status},
</if>
</set>
where uid = #{userId}
</update>
<update id="deleteUserById" parameterType="java.lang.String">
update `sys_user`
set status = 0
where uid = #{userId}
</update>
<insert id="insertUserSession" parameterType="com.shxy.xymanager_common.entity.UserSession">
insert into sys_user_session (session_id, user_name,role,expire_time)
values (#{sessionId,jdbcType=VARCHAR}, #{userName,jdbcType=VARCHAR}, #{role,jdbcType=VARCHAR}, #{expireTime,jdbcType=INTEGER})
</insert>
<select id="selectUserInfoList" resultType="com.shxy.xymanager_common.bean.SysUser">
select
uid as userId,
user_name as userName,
nick_name as nickName,
create_time as createTime,
role
from sys_user
WHERE status = #{status}
order by create_time desc
</select>
</mapper>