<?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.gkhy.assess.system.mapper.SysUserMapper">
|
|
<resultMap type="com.gkhy.assess.system.domain.SysUser" id="SysUserResult">
|
<id property="id" column="id" />
|
<result property="username" column="username" />
|
<result property="name" column="name" />
|
<result property="identity" column="identity" />
|
<result property="userType" column="user_type" />
|
<result property="email" column="email" />
|
<result property="phone" column="phone" />
|
<result property="sex" column="sex" />
|
<result property="avatar" column="avatar" />
|
<result property="password" column="password" />
|
<result property="salt" column="salt" />
|
<result property="status" column="status" />
|
<result property="delFlag" column="del_flag" />
|
<result property="manageRegion" column="manage_region" />
|
<result property="agencyId" column="agency_id" />
|
<result property="post" column="post" />
|
<result property="expertType" column="expert_type" />
|
<result property="jobTitle" column="job_title" />
|
<result property="major" column="major" />
|
<result property="level" column="level" />
|
<result property="idPhoto" column="id_photo" />
|
<result property="certificateNo" column="certificate_no" />
|
<result property="state" column="state" />
|
<result property="loginIp" column="login_ip" />
|
<result property="loginDate" column="login_date" />
|
<result property="pwdUpdateDate" column="pwd_update_date" />
|
<result property="createBy" column="create_by" />
|
<result property="createTime" column="create_time" />
|
<result property="updateBy" column="update_by" />
|
<result property="updateTime" column="update_time" />
|
<result property="remark" column="remark" />
|
<association property="agency" javaType="com.gkhy.assess.system.domain.SysAgency" resultMap="agencyResult" />
|
<collection property="socialAttach" ofType="com.gkhy.assess.system.domain.SysAttach" select="getSocialAttachByUserId" column="{userId=id}"/>
|
<collection property="medicalAttach" ofType="com.gkhy.assess.system.domain.SysAttach" select="getMedicalAttachByUserId" column="{userId=id}"/>
|
<collection property="salaryAttach" ofType="com.gkhy.assess.system.domain.SysAttach" select="getSalaryAttachByUserId" column="{userId=id}"/>
|
<collection property="majorNames" ofType="java.lang.String" select="getMajorById" column="{major=major}"/>
|
</resultMap>
|
|
|
<resultMap id="agencyResult" type="com.gkhy.assess.system.domain.SysAgency">
|
<id property="id" column="agency_id" />
|
<result property="name" column="agency_name" />
|
<result property="creditCode" column="credit_code" />
|
</resultMap>
|
|
<sql id="selectUserVo">
|
select u.id,u.username, u.name,u.identity,u.user_type,u.phone,u.sex,u.status,
|
u.del_flag,u.manage_region,u.expert_type,u.agency_id,u.post,u.job_title,
|
u.major,u.state,u.create_time,u.remark,u.level,u.id_photo,u.certificate_no,
|
a.id as agency_id,a.name as agency_name,a.credit_code
|
from sys_user u
|
left join sys_agency a on u.agency_id=a.id
|
</sql>
|
|
|
<select id="getUserByUsername" resultMap="SysUserResult">
|
select id,username,name,password,salt,identity,state,status,del_flag,agency_id,major from sys_user
|
where username=#{username} and del_flag=0
|
</select>
|
|
<select id="monitorList" resultType="com.gkhy.assess.system.domain.SysUser">
|
<include refid="selectUserVo"/>
|
<where>
|
and u.del_flag = 0 and u.identity=0
|
<if test="username != null and username != ''">
|
AND u.username like concat('%', #{username}, '%')
|
</if>
|
<if test="status != null">
|
AND u.status = #{status}
|
</if>
|
<if test="phone != null and phone != ''">
|
AND u.phone like concat('%', #{phone}, '%')
|
</if>
|
</where>
|
order by u.create_time desc
|
</select>
|
|
<select id="agencyList" resultMap="SysUserResult">
|
<include refid="selectUserVo"/>
|
<where>
|
and u.del_flag = 0 and u.identity=1
|
<if test="username != null and username != ''">
|
AND u.username like concat('%', #{username}, '%')
|
</if>
|
<if test="status != null">
|
AND u.status = #{status}
|
</if>
|
<if test="phone != null and phone != ''">
|
AND u.phone like concat('%', #{phone}, '%')
|
</if>
|
</where>
|
order by u.create_time desc
|
</select>
|
|
<select id="expertList" resultMap="SysUserResult">
|
<include refid="selectUserVo"/>
|
<where>
|
and u.del_flag = 0 and u.identity=2
|
<if test="username != null and username != ''">
|
AND u.username like concat('%', #{username}, '%')
|
</if>
|
<if test="name != null and name != ''">
|
AND u.name like concat('%', #{name}, '%')
|
</if>
|
<if test="status != null">
|
AND u.status = #{status}
|
</if>
|
<if test="level != null and level!=''">
|
AND u.level = #{level}
|
</if>
|
<if test="phone != null and phone != ''">
|
AND u.phone like concat('%', #{phone}, '%')
|
</if>
|
<if test="expertType != null and expertType != ''">
|
AND u.expert_type =#{expertType}
|
</if>
|
<if test="agencyId != null and agencyId != ''">
|
AND u.agency_id =#{agencyId}
|
</if>
|
<if test="major != null and major != ''">
|
AND u.major like concat("%",#{major},"%")
|
</if>
|
<if test="post != null and post != ''">
|
AND u.post =#{post}
|
</if>
|
|
</where>
|
order by u.create_time desc
|
</select>
|
|
|
|
<select id="getUserByPhone" resultMap="SysUserResult">
|
select id,username,name,password,salt,identity,state,status,del_flag,major from sys_user
|
where phone=#{phone} and del_flag=0
|
</select>
|
|
<select id="getUserByEmail" resultMap="SysUserResult">
|
select id,username,name,password,salt,identity,state,status,del_flag,major from sys_user
|
where email=#{email} and del_flag=0
|
</select>
|
|
<select id="getUserById" resultMap="SysUserResult">
|
select id,username,name,password,salt,identity,status,del_flag,agency_id,major from sys_user
|
where id=#{userId}
|
</select>
|
|
<select id="checkLoginNameUnique" resultType="com.gkhy.assess.system.domain.SysUser">
|
select id,username from sys_user where username=#{username} and del_flag=0 limit 1
|
</select>
|
|
<select id="checkPhoneUnique" resultType="com.gkhy.assess.system.domain.SysUser">
|
select id,phone from sys_user where phone=#{phone} and identity=#{identity} and del_flag=0 limit 1
|
</select>
|
|
<select id="checkEmailUnique" resultType="com.gkhy.assess.system.domain.SysUser">
|
select id,email from sys_user where email=#{email} and del_flag=0 limit 1
|
</select>
|
|
<select id="getUserByUsernamePhone" resultType="com.gkhy.assess.system.domain.SysUser">
|
select id,username,name,password,salt,identity,id_photo,state,status,del_flag,agency_id from sys_user
|
where (username=#{username} or phone=#{username}) and del_flag=0 and identity=#{identity}
|
</select>
|
|
|
<select id="getSocialAttachByUserId" resultType="com.gkhy.assess.system.domain.SysAttach">
|
select id,name,path,type,user_id,create_time from sys_attach where user_id=#{userId} and type=1 order by create_time desc
|
</select>
|
|
<select id="getMedicalAttachByUserId" resultType="com.gkhy.assess.system.domain.SysAttach">
|
select id,name,path,type,user_id,create_time from sys_attach where user_id=#{userId} and type=2 order by create_time desc
|
</select>
|
|
<select id="getSalaryAttachByUserId" resultType="com.gkhy.assess.system.domain.SysAttach">
|
select id,name,path,type,user_id,create_time from sys_attach where user_id=#{userId} and type=3 order by create_time desc
|
</select>
|
|
<select id="getMajorById" resultType="java.lang.String">
|
select label from sys_dict_data where id in
|
<foreach item="item" index="index" collection="major.split(',')" open="(" separator="," close=")">
|
#{item}
|
</foreach>
|
</select>
|
|
<select id="getUserInfoById" resultMap="SysUserResult">
|
<include refid="selectUserVo"/>
|
where u.id=#{userId}
|
</select>
|
</mapper>
|