中国算力平台算力登记系统2.0
yanzhaofeige
3 days ago 5cc82f45d73865489cc39e5ffbf521bf4279ec53
commit | author | age
43dc29 1 <?xml version="1.0" encoding="UTF-8" ?>
Y 2 <!DOCTYPE mapper
3 PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
4 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
5 <mapper namespace="com.odcc.cpzidc.system.mapper.SysUserMapper">
6
7     <resultMap type="SysUser" id="SysUserResult">
8         <id     property="userId"       column="user_id"      />
9         <result property="deptId"       column="dept_id"      />
10         <result property="userName"     column="user_name"    />
11         <result property="nickName"     column="nick_name"    />
12         <result property="email"        column="email"        />
13         <result property="phonenumber"  column="phonenumber"  />
14         <result property="sex"          column="sex"          />
15         <result property="avatar"       column="avatar"       />
16         <result property="password"     column="password"     />
17         <result property="status"       column="status"       />
18         <result property="delFlag"      column="del_flag"     />
19         <result property="loginIp"      column="login_ip"     />
20         <result property="loginDate"    column="login_date"   />
21         <result property="createBy"     column="create_by"    />
22         <result property="createTime"   column="create_time"  />
23         <result property="updateBy"     column="update_by"    />
24         <result property="updateTime"   column="update_time"  />
25         <result property="remark"       column="remark"       />
26         <association property="dept"    javaType="SysDept"         resultMap="deptResult" />
27         <collection  property="roles"   javaType="java.util.List"  resultMap="RoleResult" />
28     </resultMap>
29     
30     <resultMap id="deptResult" type="SysDept">
31         <id     property="deptId"    column="dept_id"     />
32         <result property="parentId"  column="parent_id"   />
33         <result property="deptName"  column="dept_name"   />
34         <result property="ancestors" column="ancestors"   />
35         <result property="orderNum"  column="order_num"   />
36         <result property="leader"    column="leader"      />
37         <result property="status"    column="dept_status" />
38     </resultMap>
39     
40     <resultMap id="RoleResult" type="SysRole">
41         <id     property="roleId"       column="role_id"        />
42         <result property="roleName"     column="role_name"      />
43         <result property="roleKey"      column="role_key"       />
44         <result property="roleSort"     column="role_sort"      />
45         <result property="dataScope"    column="data_scope"     />
46         <result property="status"       column="role_status"    />
47     </resultMap>
48     
49     <sql id="selectUserVo">
50         select u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, 
51         d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.status as dept_status,
52         r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.status as role_status
53         from sys_user u
54             left join sys_dept d on u.dept_id = d.dept_id
55             left join sys_user_role ur on u.user_id = ur.user_id
56             left join sys_role r on r.role_id = ur.role_id
57     </sql>
58     
59     <select id="selectUserList" parameterType="SysUser" resultMap="SysUserResult">
60         select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader from sys_user u
61         left join sys_dept d on u.dept_id = d.dept_id
62         where u.del_flag = '0'
63         <if test="userId != null and userId != 0">
64             AND u.user_id = #{userId}
65         </if>
66         <if test="userName != null and userName != ''">
67             AND u.user_name like concat('%', #{userName}, '%')
68         </if>
69         <if test="status != null and status != ''">
70             AND u.status = #{status}
71         </if>
72         <if test="phonenumber != null and phonenumber != ''">
73             AND u.phonenumber like concat('%', #{phonenumber}, '%')
74         </if>
75         <if test="params.beginTime != null and params.beginTime != ''"><!-- 开始时间检索 -->
76             AND date_format(u.create_time,'%Y%m%d') &gt;= date_format(#{params.beginTime},'%Y%m%d')
77         </if>
78         <if test="params.endTime != null and params.endTime != ''"><!-- 结束时间检索 -->
79             AND date_format(u.create_time,'%Y%m%d') &lt;= date_format(#{params.endTime},'%Y%m%d')
80         </if>
81         <if test="deptId != null and deptId != 0">
82             AND (u.dept_id = #{deptId} OR u.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE find_in_set(#{deptId}, ancestors) ))
83         </if>
84         <!-- 数据范围过滤 -->
85         ${params.dataScope}
86     </select>
87     
88     <select id="selectAllocatedList" parameterType="SysUser" resultMap="SysUserResult">
89         select distinct u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.phonenumber, u.status, u.create_time
90         from sys_user u
91              left join sys_dept d on u.dept_id = d.dept_id
92              left join sys_user_role ur on u.user_id = ur.user_id
93              left join sys_role r on r.role_id = ur.role_id
94         where u.del_flag = '0' and r.role_id = #{roleId}
95         <if test="userName != null and userName != ''">
96             AND u.user_name like concat('%', #{userName}, '%')
97         </if>
98         <if test="phonenumber != null and phonenumber != ''">
99             AND u.phonenumber like concat('%', #{phonenumber}, '%')
100         </if>
101         <!-- 数据范围过滤 -->
102         ${params.dataScope}
103     </select>
104     
105     <select id="selectUnallocatedList" parameterType="SysUser" resultMap="SysUserResult">
106         select distinct u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.phonenumber, u.status, u.create_time
107         from sys_user u
108              left join sys_dept d on u.dept_id = d.dept_id
109              left join sys_user_role ur on u.user_id = ur.user_id
110              left join sys_role r on r.role_id = ur.role_id
111         where u.del_flag = '0' and (r.role_id != #{roleId} or r.role_id IS NULL)
112         and u.user_id not in (select u.user_id from sys_user u inner join sys_user_role ur on u.user_id = ur.user_id and ur.role_id = #{roleId})
113         <if test="userName != null and userName != ''">
114             AND u.user_name like concat('%', #{userName}, '%')
115         </if>
116         <if test="phonenumber != null and phonenumber != ''">
117             AND u.phonenumber like concat('%', #{phonenumber}, '%')
118         </if>
119         <!-- 数据范围过滤 -->
120         ${params.dataScope}
121     </select>
122     
123     <select id="selectUserByUserName" parameterType="String" resultMap="SysUserResult">
124         <include refid="selectUserVo"/>
125         where u.user_name = #{userName} and u.del_flag = '0'
126     </select>
127     
128     <select id="selectUserById" parameterType="Long" resultMap="SysUserResult">
129         <include refid="selectUserVo"/>
130         where u.user_id = #{userId}
131     </select>
132     
133     <select id="checkUserNameUnique" parameterType="String" resultMap="SysUserResult">
134         select user_id, user_name from sys_user where user_name = #{userName} and del_flag = '0' limit 1
135     </select>
136     
137     <select id="checkPhoneUnique" parameterType="String" resultMap="SysUserResult">
138         select user_id, phonenumber from sys_user where phonenumber = #{phonenumber} and del_flag = '0' limit 1
139     </select>
140     
141     <select id="checkEmailUnique" parameterType="String" resultMap="SysUserResult">
142         select user_id, email from sys_user where email = #{email} and del_flag = '0' limit 1
143     </select>
144     
145     <insert id="insertUser" parameterType="SysUser" useGeneratedKeys="true" keyProperty="userId">
146          insert into sys_user(
147              <if test="userId != null and userId != 0">user_id,</if>
148              <if test="deptId != null and deptId != 0">dept_id,</if>
149              <if test="userName != null and userName != ''">user_name,</if>
150              <if test="nickName != null and nickName != ''">nick_name,</if>
151              <if test="email != null and email != ''">email,</if>
152              <if test="avatar != null and avatar != ''">avatar,</if>
153              <if test="phonenumber != null and phonenumber != ''">phonenumber,</if>
154              <if test="sex != null and sex != ''">sex,</if>
155              <if test="password != null and password != ''">password,</if>
156              <if test="status != null and status != ''">status,</if>
157              <if test="createBy != null and createBy != ''">create_by,</if>
158              <if test="remark != null and remark != ''">remark,</if>
159              create_time
160          )values(
161              <if test="userId != null and userId != ''">#{userId},</if>
162              <if test="deptId != null and deptId != ''">#{deptId},</if>
163              <if test="userName != null and userName != ''">#{userName},</if>
164              <if test="nickName != null and nickName != ''">#{nickName},</if>
165              <if test="email != null and email != ''">#{email},</if>
166              <if test="avatar != null and avatar != ''">#{avatar},</if>
167              <if test="phonenumber != null and phonenumber != ''">#{phonenumber},</if>
168              <if test="sex != null and sex != ''">#{sex},</if>
169              <if test="password != null and password != ''">#{password},</if>
170              <if test="status != null and status != ''">#{status},</if>
171              <if test="createBy != null and createBy != ''">#{createBy},</if>
172              <if test="remark != null and remark != ''">#{remark},</if>
173              sysdate()
174          )
175     </insert>
176     
177     <update id="updateUser" parameterType="SysUser">
178          update sys_user
179          <set>
180              <if test="deptId != null and deptId != 0">dept_id = #{deptId},</if>
181              <if test="userName != null and userName != ''">user_name = #{userName},</if>
182              <if test="nickName != null and nickName != ''">nick_name = #{nickName},</if>
183              <if test="email != null ">email = #{email},</if>
184              <if test="phonenumber != null ">phonenumber = #{phonenumber},</if>
185              <if test="sex != null and sex != ''">sex = #{sex},</if>
186              <if test="avatar != null and avatar != ''">avatar = #{avatar},</if>
187              <if test="password != null and password != ''">password = #{password},</if>
188              <if test="status != null and status != ''">status = #{status},</if>
189              <if test="loginIp != null and loginIp != ''">login_ip = #{loginIp},</if>
190              <if test="loginDate != null">login_date = #{loginDate},</if>
191              <if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
192              <if test="remark != null">remark = #{remark},</if>
193              update_time = sysdate()
194          </set>
195          where user_id = #{userId}
196     </update>
197     
198     <update id="updateUserStatus" parameterType="SysUser">
199          update sys_user set status = #{status} where user_id = #{userId}
200     </update>
201     
202     <update id="updateUserAvatar" parameterType="SysUser">
203          update sys_user set avatar = #{avatar} where user_name = #{userName}
204     </update>
205     
206     <update id="resetUserPwd" parameterType="SysUser">
207          update sys_user set password = #{password} where user_name = #{userName}
208     </update>
209     
210     <delete id="deleteUserById" parameterType="Long">
211          update sys_user set del_flag = '2' where user_id = #{userId}
212      </delete>
213      
214      <delete id="deleteUserByIds" parameterType="Long">
215          update sys_user set del_flag = '2' where user_id in
216          <foreach collection="array" item="userId" open="(" separator="," close=")">
217              #{userId}
218         </foreach> 
219      </delete>
220     
221 </mapper>