“djh”
2 days ago aad364bb323a1eaa0389ee5c6389bdc0ea7ed526
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
<?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.hazmat.system.mapper.SysUserMapper">
 
    <resultMap type="com.gkhy.hazmat.common.domain.entity.SysUser" id="SysUserResult">
        <id     property="id"        column="id"         />
        <result property="username"     column="username"      />
        <result property="name"      column="name"       />
        <result property="userType"      column="user_type"       />
        <result property="phone"   column="phone"     />
        <result property="sex"           column="sex"             />
        <result property="companyId"      column="company_id"        />
        <result property="departId"      column="depart_id"        />
        <result property="password"      column="password"        />
        <result property="status"        column="status"          />
        <result property="delFlag"       column="del_flag"        />
        <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"          />
        <result property="version"        column="version"          />
        <result property="companyName"        column="company_name"          />
        <result property="departName"        column="depart_name"          />
    </resultMap>
 
 
 
    <delete id="deleteUserById" parameterType="java.lang.Long">
        update sys_user set del_flag=1 where id=#{userId}
    </delete>
 
 
    <select id="getUserByUsername" resultMap="SysUserResult">
        select id,username,name,password,user_type,company_id,status,del_flag from sys_user
        where username=#{username} and del_flag=0 limit 1
    </select>
 
    <select id="userList"  resultMap="SysUserResult">
        select u.id,u.username,u.name,u.user_type,u.phone,u.company_id,u.depart_id,u.sex,u.status,u.del_flag,u.version,
               u.login_ip,u.login_date,u.create_by,u.create_time,u.remark,c.name as company_name,d.name as depart_name
        from sys_user u
        left join sys_company c on c.id=u.company_id
        left join sys_dept d on d.id=u.depart_id
        <where>
            and u.del_flag = 0
            <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 status != ''">
                AND u.status = #{status}
            </if>
            <if test="userType != null">
                AND u.user_type = #{userType}
            </if>
            <if test="companyId != null ">
                AND u.company_id = #{companyId}
            </if>
            <if test="phone != null and phone != ''">
                AND u.phone like concat('%', #{phone}, '%')
            </if>
            <if test="params.beginTime != null and params.beginTime != ''"><!-- 开始时间检索 -->
                AND date_format(u.create_time,'%y%m%d') &gt;= date_format(#{params.beginTime},'%y%m%d')
            </if>
            <if test="params.endTime != null and params.endTime != ''"><!-- 结束时间检索 -->
                AND date_format(u.create_time,'%y%m%d') &lt;= date_format(#{params.endTime},'%y%m%d')
            </if>
            <if test="params.userType != null and (params.userType==1)">
                AND u.user_type in (2)
            </if>
        </where>
        order by u.id desc
    </select>
 
 
 
    <select id="getUserByPhone" resultMap="SysUserResult">
        select id,username,name,password,company_id,phone,status,del_flag from sys_user
        where phone=#{phone} and del_flag=0 limit 1
    </select>
 
    <select id="getUserById" resultMap="SysUserResult">
        select u.id,u.username,u.user_type,u.name,u.phone,u.company_id,u.depart_id,u.status,u.sex,u.del_flag,u.version,c.name as company_name,d.name as depart_name
        from sys_user u
        left join sys_company c on c.id=u.company_id
        left join sys_dept d on d.id=u.depart_id
        where u.id=#{userId}
    </select>
 
    <select id="checkLoginNameUnique" resultMap="SysUserResult">
        select id,username from sys_user where username=#{username} and del_flag=0 limit 1
    </select>
 
    <select id="checkPhoneUnique" resultMap="SysUserResult">
        select id,phone from sys_user where phone=#{phone} and del_flag=0 limit 1
    </select>
    <select id="selectAllocatedList" resultType="com.gkhy.hazmat.common.domain.entity.SysUser">
        select distinct u.id, u.depart_id, u.username, u.name,u.user_type,u.sex,  u.phone, u.status, u.create_time
        from sys_user u
        left join sys_dept d on u.depart_id = d.id
        left join sys_user_role ur on u.id = ur.user_id
        left join sys_role r on r.role_id = ur.role_id
        where u.del_flag = '0' and r.role_id = #{roleId}
        <if test="username != null and username != ''">
            AND u.username like concat('%', #{username}, '%')
        </if>
        <if test="phone != null and phone != ''">
            AND u.phone like concat('%', #{phone}, '%')
        </if>
        <!-- 数据范围过滤 -->
        ${params.dataScope}
    </select>
    <select id="selectUnallocatedList" resultType="com.gkhy.hazmat.common.domain.entity.SysUser">
        select distinct u.id, u.depart_id, u.username, u.name,u.user_type,u.sex, u.phone, u.status, u.create_time
        from sys_user u
        left join sys_dept d on u.depart_id = d.id
        left join sys_user_role ur on u.id = ur.user_id
        left join sys_role r on r.role_id = ur.role_id
        where u.del_flag = '0' and (r.role_id != #{roleId} or r.role_id IS NULL)
        and u.id not in (select u.id from sys_user u inner join sys_user_role ur on u.id = ur.user_id and ur.role_id = #{roleId})
        <if test="username != null and username != ''">
            AND u.username like concat('%', #{username}, '%')
        </if>
        <if test="phone != null and phone != ''">
            AND u.phone like concat('%', #{phone}, '%')
        </if>
        <!-- 数据范围过滤 -->
        ${params.dataScope}
    </select>
 
</mapper>