SysUserMapper.xml 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. ~
  4. ~ Copyright (c) 2018-2025, hnqz All rights reserved.
  5. ~
  6. ~ Redistribution and use in source and binary forms, with or without
  7. ~ modification, are permitted provided that the following conditions are met:
  8. ~
  9. ~ Redistributions of source code must retain the above copyright notice,
  10. ~ this list of conditions and the following disclaimer.
  11. ~ Redistributions in binary form must reproduce the above copyright
  12. ~ notice, this list of conditions and the following disclaimer in the
  13. ~ documentation and/or other materials provided with the distribution.
  14. ~ Neither the name of the pig4cloud.com developer nor the names of its
  15. ~ contributors may be used to endorse or promote products derived from
  16. ~ this software without specific prior written permission.
  17. ~ Author: hnqz
  18. ~
  19. -->
  20. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  21. <mapper namespace="com.qunzhixinxi.hnqz.admin.mapper.SysUserMapper">
  22. <resultMap id="userResultMap" type="com.qunzhixinxi.hnqz.admin.api.entity.SysUser">
  23. <id column="user_id" property="userId"/>
  24. <result column="username" property="username"/>
  25. <result column="password" property="password"/>
  26. <result column="salt" property="salt"/>
  27. <result column="phone" property="phone"/>
  28. <result column="id_card_number" property="idCardNumber"/>
  29. <result column="userSign" property="user_sign"/>
  30. <result column="avatar" property="avatar"/>
  31. <result column="wx_openid" property="wxOpenid"/>
  32. <result column="qq_openid" property="qqOpenid"/>
  33. <result column="create_time" property="createTime"/>
  34. <result column="update_time" property="updateTime"/>
  35. <result column="lock_flag" property="lockFlag"/>
  36. <result column="del_flag" property="delFlag"/>
  37. <result column="dept_id" property="deptId"/>
  38. <result column="tenant_id" property="tenantId"/>
  39. <result column="dept_name" property="deptName"/>
  40. <result column="realname" property="realname"/>
  41. <result column="province" property="province"/>
  42. <result column="city" property="city"/>
  43. <result column="area" property="area"/>
  44. <result column="address" property="address"/>
  45. <result column="temp1" property="temp1"/>
  46. <result column="temp2" property="temp2"/>
  47. <result column="temp3" property="temp3"/>
  48. <result column="temp4" property="temp4"/>
  49. <result column="temp5" property="temp5"/>
  50. <result column="w1" property="w1"/>
  51. <result column="plat_id" property="platId"/>
  52. <result column="drug_ent_id" property="drugEntId"/>
  53. <result column="cert_status" property="certStatus"/>
  54. <result column="rlj_cert_status" property="rljCertStatus"/>
  55. <result column="cert_remark" property="certRemark"/>
  56. <result column="province_code" property="provinceCode"/>
  57. <result column="city_code" property="cityCode"/>
  58. <result column="user_type" property="userType"/>
  59. <result column="bank_card_number" property="bankCardNumber"/>
  60. <result column="tax_helper_agreement_signature" property="taxHelperAgreementSignature"/>
  61. </resultMap>
  62. <!-- 通用查询映射结果 -->
  63. <resultMap id="baseResultMap" type="com.qunzhixinxi.hnqz.admin.api.vo.UserVO">
  64. <id column="user_id" property="userId"/>
  65. <result column="username" property="username"/>
  66. <result column="password" property="password"/>
  67. <result column="salt" property="salt"/>
  68. <result column="phone" property="phone"/>
  69. <result column="id_card_number" property="idCardNumber"/>
  70. <result column="userSign" property="user_sign"/>
  71. <result column="avatar" property="avatar"/>
  72. <result column="wx_openid" property="wxOpenid"/>
  73. <result column="qq_openid" property="qqOpenid"/>
  74. <result column="ucreate_time" property="createTime"/>
  75. <result column="uupdate_time" property="updateTime"/>
  76. <result column="lock_flag" property="lockFlag"/>
  77. <result column="udel_flag" property="delFlag"/>
  78. <result column="dept_id" property="deptId"/>
  79. <result column="tenant_id" property="tenantId"/>
  80. <result column="dept_name" property="deptName"/>
  81. <result column="realname" property="realname"/>
  82. <result column="province" property="province"/>
  83. <result column="city" property="city"/>
  84. <result column="area" property="area"/>
  85. <result column="address" property="address"/>
  86. <result column="temp1" property="temp1"/>
  87. <result column="temp2" property="temp2"/>
  88. <result column="temp3" property="temp3"/>
  89. <result column="temp4" property="temp4"/>
  90. <result column="temp5" property="temp5"/>
  91. <result column="w1" property="w1"/>
  92. <result column="plat_id" property="platId"/>
  93. <result column="drug_ent_id" property="drugEntId"/>
  94. <result column="cert_status" property="certStatus"/>
  95. <result column="rlj_cert_status" property="rljCertStatus"/>
  96. <result column="cert_remark" property="certRemark"/>
  97. <result column="province_code" property="provinceCode"/>
  98. <result column="city_code" property="cityCode"/>
  99. <result column="user_type" property="userType"/>
  100. <result column="bank_card_number" property="bankCardNumber"/>
  101. <collection property="roleList" ofType="com.qunzhixinxi.hnqz.admin.api.entity.SysRole"
  102. select="com.qunzhixinxi.hnqz.admin.mapper.SysRoleMapper.listRolesByUserId" column="user_id">
  103. </collection>
  104. </resultMap>
  105. <!-- userVo结果集 -->
  106. <resultMap id="userVoResultMap" type="com.qunzhixinxi.hnqz.admin.api.vo.UserVO">
  107. <id column="user_id" property="userId"/>
  108. <result column="username" property="username"/>
  109. <result column="password" property="password"/>
  110. <result column="salt" property="salt"/>
  111. <result column="phone" property="phone"/>
  112. <result column="id_card_number" property="idCardNumber"/>
  113. <result column="avatar" property="avatar"/>
  114. <result column="wx_openid" property="wxOpenid"/>
  115. <result column="qq_openid" property="qqOpenid"/>
  116. <result column="create_time" property="createTime"/>
  117. <result column="update_time" property="updateTime"/>
  118. <result column="lock_flag" property="lockFlag"/>
  119. <result column="del_flag" property="delFlag"/>
  120. <result column="dept_id" property="deptId"/>
  121. <result column="tenant_id" property="tenantId"/>
  122. <result column="dept_name" property="deptName"/>
  123. <result column="realname" property="realname"/>
  124. <result column="province" property="province"/>
  125. <result column="city" property="city"/>
  126. <result column="area" property="area"/>
  127. <result column="address" property="address"/>
  128. <result column="temp1" property="temp1"/>
  129. <result column="temp2" property="temp2"/>
  130. <result column="temp3" property="temp3"/>
  131. <result column="temp4" property="temp4"/>
  132. <result column="temp5" property="temp5"/>
  133. <result column="plat_id" property="platId"/>
  134. <result column="w1" property="w1"/>
  135. <result column="drug_ent_id" property="drugEntId"/>
  136. <result column="cert_status" property="certStatus"/>
  137. <result column="rlj_cert_status" property="rljCertStatus"/>
  138. <result column="cert_remark" property="certRemark"/>
  139. <result column="province_code" property="provinceCode"/>
  140. <result column="city_code" property="cityCode"/>
  141. <result column="user_type" property="userType"/>
  142. <result column="bank_card_number" property="bankCardNumber"/>
  143. <collection property="roleList" ofType="com.qunzhixinxi.hnqz.admin.api.entity.SysRole">
  144. <id column="role_id" property="roleId"/>
  145. <result column="role_name" property="roleName"/>
  146. <result column="role_code" property="roleCode"/>
  147. <result column="role_desc" property="roleDesc"/>
  148. <result column="rcreate_time" property="createTime"/>
  149. <result column="rupdate_time" property="updateTime"/>
  150. </collection>
  151. </resultMap>
  152. <sql id="userRoleSql">
  153. distinct
  154. u.user_id,
  155. u.username,
  156. u.password,
  157. u.salt,
  158. u.phone,
  159. u.id_card_number,
  160. u.user_type,
  161. u.bank_card_number,
  162. u.avatar,
  163. u.wx_openid,
  164. u.qq_openid,
  165. u.dept_id,
  166. u.del_flag,
  167. u.lock_flag,
  168. u.tenant_id,
  169. u.create_time ucreate_time,
  170. u.update_time uupdate_time,
  171. r.role_id,
  172. r.role_name,
  173. r.role_code,
  174. r.role_desc,
  175. r.create_time rcreate_time,
  176. r.update_time rupdate_time,
  177. u.realname,
  178. u.province,
  179. u.city,
  180. u.province_code,
  181. u.city_code,
  182. u.area,
  183. u.address,
  184. u.temp1,
  185. u.temp2,
  186. u.temp3,
  187. u.temp4,
  188. u.temp5,
  189. u.plat_id,
  190. u.drug_ent_id,
  191. u.cert_status,
  192. u.rlj_cert_status,
  193. u.cert_remark,
  194. u.w1,
  195. r.role_id,
  196. r.role_name,
  197. r.role_code,
  198. r.role_desc,
  199. r.create_time rcreate_time,
  200. r.update_time rupdate_time
  201. </sql>
  202. <sql id="userRoleDeptSql">
  203. distinct
  204. u.user_id,
  205. u.username,
  206. u.password,
  207. u.salt,
  208. u.phone,
  209. u.id_card_number,
  210. u.user_type,
  211. u.bank_card_number,
  212. u.avatar,
  213. u.wx_openid,
  214. u.qq_openid,
  215. u.del_flag,
  216. u.lock_flag,
  217. u.tenant_id,
  218. u.create_time ucreate_time,
  219. u.update_time uupdate_time,
  220. r.role_id,
  221. r.role_name,
  222. r.role_code,
  223. r.role_desc,
  224. r.create_time rcreate_time,
  225. r.update_time rupdate_time,
  226. u.realname,
  227. u.province,
  228. u.city,
  229. u.province_code,
  230. u.city_code,
  231. u.area,
  232. u.address,
  233. u.temp1,
  234. u.temp2,
  235. u.temp3,
  236. u.temp4,
  237. u.temp5,
  238. u.plat_id,
  239. u.drug_ent_id,
  240. u.cert_status,
  241. u.rlj_cert_status,
  242. u.cert_remark,
  243. u.w1,
  244. r.role_id,
  245. r.role_name,
  246. r.role_code,
  247. r.role_desc,
  248. r.create_time rcreate_time,
  249. r.update_time rupdate_time,
  250. d.name dept_name,
  251. d.dept_id
  252. </sql>
  253. <select id="selectByDeptId" resultMap="userVoResultMap">
  254. SELECT
  255. *
  256. FROM
  257. sys_user u
  258. LEFT JOIN sys_dept d ON d.dept_id = u.dept_id
  259. LEFT JOIN sys_user_role ur ON ur.user_id = u.user_id
  260. LEFT JOIN sys_role r ON r.role_id = ur.role_id
  261. LEFT JOIN sys_dept_sub s ON s.dept_id = u.dept_id and s.enable_flag = '1'
  262. where
  263. u.del_flag = 0
  264. <if test="query.username != null and query.username !=''">
  265. AND u.username like CONCAT('%',#{query.username},'%')
  266. </if>
  267. <if test="query.realname != null and query.realname !=''">
  268. AND u.realname like CONCAT('%',#{query.realname},'%')
  269. </if>
  270. <if test="query.deptId != null and query.deptId != ''">
  271. AND u.dept_id = #{query.deptId}
  272. </if>
  273. <if test="query.certStatus != null and query.certStatus != ''">
  274. <choose>
  275. <when test="query.certStatus == 10">
  276. AND (u.cert_status = #{query.certStatus} OR u.cert_status IS NULL)
  277. </when>
  278. <otherwise>
  279. AND u.cert_status = #{query.certStatus}
  280. </otherwise>
  281. </choose>
  282. </if>
  283. <if test="query.rljCertStatus != null and query.rljCertStatus != ''">
  284. <choose>
  285. <when test="query.rljCertStatus == 4">
  286. AND (u.rlj_cert_status = #{query.rljCertStatus} OR u.rlj_cert_status IS NULL)
  287. </when>
  288. <otherwise>
  289. AND u.rlj_cert_status = #{query.rljCertStatus}
  290. </otherwise>
  291. </choose>
  292. </if>
  293. <if test="query.subType != null and query.subType != ''">
  294. AND s.subject_type = #{query.subType}
  295. </if>
  296. <if test="query.lockFlag != null and query.lockFlag != ''">
  297. AND u.lock_flag = #{query.lockFlag}
  298. </if>
  299. <if test="query.role != null and query.role.size()>0">
  300. AND r.role_id in (
  301. <foreach collection="query.role" item="pid" index="index" separator=",">
  302. #{pid}
  303. </foreach>
  304. )
  305. </if>
  306. </select>
  307. <select id="selectByPhone" resultMap="userVoResultMap">
  308. SELECT
  309. *
  310. FROM
  311. sys_user u
  312. LEFT JOIN sys_user_role ur ON ur.user_id = u.user_id
  313. LEFT JOIN sys_role r ON r.role_id = ur.role_id
  314. where
  315. u.del_flag = 0
  316. <if test="query.username != null and query.username !=''">
  317. AND u.username = #{query.username}
  318. </if>
  319. <if test="query.role != null and query.role.size()>0">
  320. AND r.role_id in (
  321. <foreach collection="query.role" item="pid" index="index" separator=",">
  322. #{pid}
  323. </foreach>
  324. )
  325. </if>
  326. </select>
  327. <select id="getUserVoByUsername" resultMap="userVoResultMap">
  328. SELECT
  329. <include refid="userRoleSql"/>
  330. FROM
  331. sys_user u
  332. LEFT JOIN sys_user_role ur ON ur.user_id = u.user_id
  333. LEFT JOIN sys_role r ON r.role_id = ur.role_id
  334. WHERE u.username = #{username} and r.role_id not in (5,6)
  335. and u.lock_flag=0
  336. </select>
  337. <select id="getUserVoById" resultMap="userVoResultMap">
  338. SELECT
  339. <include refid="userRoleDeptSql"/>
  340. FROM
  341. sys_user u
  342. LEFT JOIN sys_user_role ur ON ur.user_id = u.user_id
  343. LEFT JOIN sys_role r ON r.role_id = ur.role_id
  344. LEFT JOIN sys_dept d ON d.dept_id = u.dept_id
  345. WHERE
  346. u.user_id = #{id}
  347. and u.lock_flag=0
  348. </select>
  349. <select id="getByIdIgnore" resultMap="userResultMap">
  350. SELECT * FROM sys_user where user_id = #{id}
  351. </select>
  352. <select id="selectByUserId" resultMap="userVoResultMap">
  353. SELECT
  354. *
  355. FROM
  356. sys_user u
  357. LEFT JOIN sys_dept d ON d.dept_id = u.dept_id
  358. LEFT JOIN sys_user_role ur ON ur.user_id = u.user_id
  359. LEFT JOIN sys_role r ON r.role_id = ur.role_id
  360. where
  361. u.del_flag = 0
  362. <if test="query.username != null and query.username !=''">
  363. AND u.username like CONCAT('%',#{query.username},'%')
  364. </if>
  365. <if test="query.realname != null and query.realname !=''">
  366. AND u.realname like CONCAT('%',#{query.realname},'%')
  367. </if>
  368. <if test="query.userId != null and query.userId != ''">
  369. AND u.user_id = #{query.userId}
  370. </if>
  371. <if test="query.lockFlag != null and query.lockFlag != ''">
  372. AND u.lock_flag = #{query.lockFlag}
  373. </if>
  374. <if test="query.role != null and query.role.size()>0">
  375. AND r.role_id in (
  376. <foreach collection="query.role" item="pid" index="index" separator=",">
  377. #{pid}
  378. </foreach>
  379. )
  380. </if>
  381. </select>
  382. <select id="selectUserByName" resultMap="userResultMap">
  383. SELECT
  384. *
  385. FROM
  386. sys_user
  387. where
  388. username = #{username}
  389. and
  390. dept_id = #{deptId}
  391. </select>
  392. <select id="selectUserById" resultMap="userResultMap">
  393. SELECT
  394. *
  395. FROM
  396. sys_user
  397. where
  398. dept_id = #{deptId}
  399. </select>
  400. <select id="getUserVosPage" resultMap="baseResultMap">
  401. SELECT
  402. distinct
  403. u.user_id,
  404. u.username,
  405. u.password,
  406. u.id_card_number,
  407. u.user_type,
  408. u.salt,
  409. u.phone,
  410. u.avatar,
  411. u.wx_openid,
  412. u.qq_openid,
  413. u.dept_id,
  414. u.create_time ucreate_time,
  415. u.update_time uupdate_time,
  416. u.del_flag,
  417. u.lock_flag,
  418. u.tenant_id,
  419. d.name dept_name,
  420. u.realname,
  421. u.province,
  422. u.city,
  423. u.province_code,
  424. u.city_code,
  425. u.area,
  426. u.address,
  427. u.temp1,
  428. u.temp2,
  429. u.temp3,
  430. u.temp4,
  431. u.temp5,
  432. u.w1,
  433. u.plat_id,
  434. u.drug_ent_id,
  435. u.cert_status,
  436. u.rlj_cert_status,
  437. u.cert_remark,
  438. u.bank_card_number
  439. FROM
  440. sys_user u
  441. LEFT JOIN sys_dept d ON d.dept_id = u.dept_id
  442. LEFT JOIN sys_user_role ur ON ur.user_id = u.user_id
  443. LEFT JOIN sys_role r ON r.role_id = ur.role_id
  444. LEFT JOIN sys_dept_sub s ON s.dept_id = u.dept_id and s.enable_flag = '1'
  445. <where>
  446. u.del_flag = '0'
  447. <if test="query.username != null and query.username != ''">
  448. AND u.username LIKE CONCAT('%',#{query.username},'%')
  449. </if>
  450. <if test="query.realname != null and query.realname != ''">
  451. AND u.realname LIKE CONCAT('%',#{query.realname},'%')
  452. </if>
  453. <if test="query.deptId != null and query.deptId != ''">
  454. AND u.dept_id = #{query.deptId}
  455. </if>
  456. <if test="query.certStatus != null and query.certStatus != ''">
  457. <choose>
  458. <when test="query.certStatus == 10">
  459. AND (u.cert_status = #{query.certStatus} OR u.cert_status IS NULL)
  460. </when>
  461. <otherwise>
  462. AND u.cert_status = #{query.certStatus}
  463. </otherwise>
  464. </choose>
  465. </if>
  466. <if test="query.rljCertStatus != null and query.rljCertStatus != ''">
  467. <choose>
  468. <when test="query.rljCertStatus == 4">
  469. AND (u.rlj_cert_status = #{query.rljCertStatus} OR u.rlj_cert_status IS NULL)
  470. </when>
  471. <otherwise>
  472. AND u.rlj_cert_status = #{query.rljCertStatus}
  473. </otherwise>
  474. </choose>
  475. </if>
  476. <if test="query.subType != null and query.subType != ''">
  477. AND s.subject_type = #{query.subType}
  478. </if>
  479. <if test="query.role != null and query.role.size()>0">
  480. AND r.role_id in (
  481. <foreach collection="query.role" item="pid" index="index" separator=",">
  482. #{pid}
  483. </foreach>
  484. )
  485. </if>
  486. <if test="query.platId != null and query.platId != ''">
  487. AND u.plat_id =#{query.platId}
  488. </if>
  489. <if test="query.lockFlag != null and query.lockFlag != ''">
  490. AND u.lock_flag =#{query.lockFlag}
  491. </if>
  492. AND <![CDATA[ u.username<>'admin']]>
  493. </where>
  494. ORDER BY u.create_time DESC
  495. </select>
  496. <select id="getUserVosPageNoLock" resultMap="baseResultMap">
  497. SELECT
  498. distinct
  499. u.user_id,
  500. u.username,
  501. u.password,
  502. u.id_card_number,
  503. u.user_type,
  504. u.salt,
  505. u.phone,
  506. u.avatar,
  507. u.wx_openid,
  508. u.qq_openid,
  509. u.dept_id,
  510. u.create_time ucreate_time,
  511. u.update_time uupdate_time,
  512. u.del_flag,
  513. u.lock_flag,
  514. u.tenant_id,
  515. d.name dept_name,
  516. u.realname,
  517. u.province,
  518. u.city,
  519. u.area,
  520. u.province_code,
  521. u.city_code,
  522. u.address,
  523. u.temp1,
  524. u.temp2,
  525. u.temp3,
  526. u.temp4,
  527. u.temp5,
  528. u.w1,
  529. u.plat_id,
  530. u.drug_ent_id,
  531. u.cert_status,
  532. u.rlj_cert_status,
  533. u.cert_remark,
  534. u.bank_card_number
  535. FROM
  536. sys_user u
  537. LEFT JOIN sys_dept d ON d.dept_id = u.dept_id
  538. LEFT JOIN sys_user_role ur ON ur.user_id = u.user_id
  539. LEFT JOIN sys_role r ON r.role_id = ur.role_id
  540. <where>
  541. u.del_flag = '0'
  542. <if test="query.username != null and query.username != ''">
  543. AND u.username LIKE CONCAT('%',#{query.username},'%')
  544. </if>
  545. <if test="query.realname != null and query.realname != ''">
  546. AND u.realname LIKE CONCAT('%',#{query.realname},'%')
  547. </if>
  548. <if test="query.deptId != null and query.deptId != ''">
  549. AND u.dept_id = #{query.deptId}
  550. </if>
  551. <if test="query.role != null and query.role.size()>0">
  552. AND r.role_id in (
  553. <foreach collection="query.role" item="pid" index="index" separator=",">
  554. #{pid}
  555. </foreach>
  556. )
  557. </if>
  558. <if test="query.platId != null and query.platId != ''">
  559. AND u.plat_id =#{query.platId}
  560. </if>
  561. AND <![CDATA[ u.username<>'admin']]>
  562. </where>
  563. ORDER BY u.create_time DESC
  564. </select>
  565. <select id="getUserVoByPlatId" resultMap="baseResultMap">
  566. SELECT
  567. distinct
  568. u.user_id,
  569. u.username,
  570. u.password,
  571. u.id_card_number,
  572. u.user_type,
  573. u.user_sign,
  574. u.salt,
  575. u.phone,
  576. u.avatar,
  577. u.wx_openid,
  578. u.qq_openid,
  579. u.dept_id,
  580. u.create_time ucreate_time,
  581. u.update_time uupdate_time,
  582. u.del_flag,
  583. u.lock_flag,
  584. u.tenant_id,
  585. d.name dept_name,
  586. u.realname,
  587. u.province,
  588. u.city,
  589. u.province_code,
  590. u.city_code,
  591. u.area,
  592. u.address,
  593. u.temp1,
  594. u.temp2,
  595. u.temp3,
  596. u.temp4,
  597. u.temp5,
  598. u.w1,
  599. u.plat_id,
  600. u.drug_ent_id,
  601. u.cert_status,
  602. u.rlj_cert_status,
  603. u.cert_remark,
  604. u.bank_card_number,
  605. u.tax_helper_agreement_signature
  606. FROM
  607. sys_user u
  608. LEFT JOIN sys_dept d ON d.dept_id = u.dept_id
  609. LEFT JOIN sys_user_role ur ON ur.user_id = u.user_id
  610. LEFT JOIN sys_role r ON r.role_id = ur.role_id
  611. <where>
  612. u.del_flag = '0'
  613. and u.lock_flag=0
  614. <if test="query.username != null and query.username != ''">
  615. AND u.username LIKE CONCAT('%',#{query.username},'%')
  616. </if>
  617. <if test="query.realname != null and query.realname != ''">
  618. AND u.realname LIKE CONCAT('%',#{query.realname},'%')
  619. </if>
  620. <if test="query.deptId != null and query.deptId != ''">
  621. AND u.dept_id = #{query.deptId}
  622. </if>
  623. <if test="query.role != null and query.role.size()>0">
  624. AND r.role_id in (
  625. <foreach collection="query.role" item="pid" index="index" separator=",">
  626. #{pid}
  627. </foreach>
  628. )
  629. </if>
  630. <if test="query.platId != null and query.platId != ''">
  631. AND u.plat_id =#{query.platId}
  632. </if>
  633. <if test="query.drugEntId != null and query.drugEntId != ''">
  634. AND u.drug_ent_id =#{query.drugEntId}
  635. </if>
  636. </where>
  637. ORDER BY u.create_time DESC
  638. </select>
  639. <!-- 根据部门id和角色id查询 -->
  640. <select id="selectByDeptIdAndRoleId" resultMap="userResultMap">
  641. SELECT
  642. u.user_id,
  643. u.username,
  644. u.phone,
  645. u.avatar,
  646. u.dept_id,
  647. u.create_time,
  648. u.update_time,
  649. r.role_id,
  650. u.realname
  651. FROM
  652. sys_user u
  653. LEFT JOIN sys_user_role r ON r.user_id = u.user_id
  654. WHERE
  655. u.dept_id = #{deptId}
  656. <if test="realNameOrPhone != null and realNameOrPhone != ''">
  657. AND (u.username LIKE CONCAT('%',#{realNameOrPhone},'%') OR u.realname LIKE CONCAT('%',#{realNameOrPhone},'%'))
  658. </if>
  659. AND r.role_id IN (
  660. <foreach collection="roleList" item="roleId" index="index" separator=",">
  661. #{roleId}
  662. </foreach>
  663. )
  664. </select>
  665. <update id="updateByPrimaryKeySelective" parameterType="com.qunzhixinxi.hnqz.admin.api.entity.SysUser" >
  666. update sys_user
  667. <set >
  668. <if test="delFlag != null" >
  669. del_flag = #{delFlag,jdbcType=VARCHAR},
  670. </if>
  671. </set>
  672. where user_id = #{userId,jdbcType=BIGINT}
  673. </update>
  674. </mapper>