User.xml 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  3. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  4. <!-- namespace必须指向DAO接口 -->
  5. <mapper namespace="com.jpsoft.employment.modules.sys.dao.UserDAO">
  6. <resultMap id="UserMap" type="com.jpsoft.employment.modules.sys.entity.User">
  7. <id property="id" column="id_"/>
  8. <result property="userName" column="user_name"/>
  9. <result property="password" column="password_"/>
  10. <result property="realName" column="real_name"/>
  11. <result property="createTime" column="create_time"/>
  12. <result property="updateTime" column="update_time"/>
  13. <result property="delFlag" column="del_flag"/>
  14. <result property="createBy" column="create_by"/>
  15. <result property="updateBy" column="update_by"/>
  16. <result property="openId" column="open_id"/>
  17. <result property="companyId" column="company_id"/>
  18. <result property="companyName" column="company_name"/>
  19. <result property="photo" column="photo_"/>
  20. <result property="departmentId" column="department_id"/>
  21. <result property="phone" column="phone_"/>
  22. </resultMap>
  23. <resultMap id="UserVOMap" type="com.jpsoft.employment.modules.sys.entity.UserVO" extends="UserMap">
  24. <result property="companyName" column="company_name"/>
  25. <result property="roleNames" column="role_names"/>
  26. <result property="companyTel" column="company_tel"/>
  27. </resultMap>
  28. <insert id="insert" parameterType="com.jpsoft.employment.modules.sys.entity.User">
  29. <!--
  30. <selectKey resultType="java.lang.String" order="BEFORE" keyProperty="id">
  31. select sys_guid() from dual
  32. </selectKey>
  33. -->
  34. <![CDATA[
  35. insert into sys_user
  36. (id_,user_name,password_,real_name,create_time,update_time,
  37. del_flag,create_by,update_by,open_id,company_id,photo_,department_id,phone_)
  38. values
  39. (
  40. #{id,jdbcType=VARCHAR}
  41. ,#{userName,jdbcType=VARCHAR}
  42. ,#{password,jdbcType=VARCHAR}
  43. ,#{realName,jdbcType=VARCHAR}
  44. ,#{createTime,jdbcType= TIMESTAMP }
  45. ,#{updateTime,jdbcType= TIMESTAMP }
  46. ,#{delFlag,jdbcType= NUMERIC }
  47. ,#{createBy,jdbcType=VARCHAR}
  48. ,#{updateBy,jdbcType=VARCHAR}
  49. ,#{openId,jdbcType=VARCHAR}
  50. ,#{companyId,jdbcType=VARCHAR}
  51. ,#{photo,jdbcType=VARCHAR}
  52. ,#{departmentId,jdbcType=VARCHAR}
  53. ,#{phone,jdbcType=VARCHAR}
  54. )
  55. ]]>
  56. </insert>
  57. <delete id="delete" parameterType="string">
  58. delete from sys_user where id_=#{id,jdbcType=VARCHAR}
  59. </delete>
  60. <update id="update" parameterType="com.jpsoft.employment.modules.sys.entity.User">
  61. update sys_user
  62. <set>
  63. <if test="userName!=null">
  64. user_name=#{userName,jdbcType=VARCHAR},
  65. </if>
  66. <if test="password!=null">
  67. password_=#{password,jdbcType=VARCHAR},
  68. </if>
  69. <if test="realName!=null">
  70. real_name=#{realName,jdbcType=VARCHAR},
  71. </if>
  72. <if test="createTime!=null">
  73. create_time=#{createTime,jdbcType= TIMESTAMP },
  74. </if>
  75. <if test="updateTime!=null">
  76. update_time=#{updateTime,jdbcType= TIMESTAMP },
  77. </if>
  78. <if test="delFlag!=null">
  79. del_flag=#{delFlag,jdbcType= NUMERIC },
  80. </if>
  81. <if test="createBy!=null">
  82. create_by=#{createBy,jdbcType=VARCHAR},
  83. </if>
  84. <if test="updateBy!=null">
  85. update_by=#{updateBy,jdbcType=VARCHAR},
  86. </if>
  87. <if test="openId!=null">
  88. open_id=#{openId,jdbcType=VARCHAR},
  89. </if>
  90. <if test="companyId!=null">
  91. company_id=#{companyId,jdbcType=VARCHAR},
  92. </if>
  93. <if test="photo!=null">
  94. photo_=#{photo,jdbcType=VARCHAR},
  95. </if>
  96. <if test="departmentId!=null">
  97. department_id=#{departmentId,jdbcType=VARCHAR},
  98. </if>
  99. <if test="phone!=null">
  100. phone_=#{phone,jdbcType=VARCHAR},
  101. </if>
  102. </set>
  103. where id_=#{id}
  104. </update>
  105. <select id="get" parameterType="string" resultMap="UserMap">
  106. select * from sys_user where id_=#{0}
  107. </select>
  108. <select id="exist" parameterType="string" resultType="int">
  109. select count(*) from sys_user where id_=#{0}
  110. </select>
  111. <select id="list" resultMap="UserMap">
  112. select * from sys_user
  113. </select>
  114. <select id="findByUserName" parameterType="string" resultMap="UserMap">
  115. select * from sys_user where user_name=#{userName} and del_flag=0 limit 1
  116. </select>
  117. <select id="search" parameterType="hashmap" resultMap="UserMap">
  118. <![CDATA[
  119. select a.*
  120. from sys_user a
  121. where a.del_flag = 0
  122. ]]>
  123. <if test="searchParams.userName != null">
  124. and a.user_name like #{searchParams.userName}
  125. </if>
  126. <if test="searchParams.realName != null">
  127. and a.real_name like #{searchParams.realName}
  128. </if>
  129. <if test="searchParams.roleId != null">
  130. and a.id_ in (select c.user_id from sys_user_role c where c.role_id = #{searchParams.roleId})
  131. </if>
  132. <foreach item="sort" collection="sortList" open="order by" separator=",">
  133. ${sort.name} ${sort.order}
  134. </foreach>
  135. </select>
  136. <select id="hasRole" parameterType="string" resultType="long">
  137. select count(*) from sys_user_role ur,sys_role r
  138. where ur.role_id = r.id_
  139. and ur.user_id = #{userId} and r.name_=#{roleName}
  140. </select>
  141. <select id="findByOpenId" resultMap="UserMap">
  142. select * from sys_user
  143. where open_id=#{0} and del_flag=0
  144. limit 1
  145. </select>
  146. <select id="getUser" resultMap="UserVOMap">
  147. select u.real_name,rt.role_names,c.name_ company_name,c.tel_ company_tel from sys_user u
  148. left join base_company c on u.company_id=c.id_ and c.del_flag=0
  149. left join (
  150. select ur.user_id,GROUP_CONCAT(r.name_) role_names from sys_role r inner join sys_user_role ur on ur.role_id=r.id_ and ur.del_flag=0 and r.del_flag=0
  151. group by ur.user_id
  152. ) rt on u.id_=rt.user_id
  153. where u.id_=#{0} and u.del_flag=0
  154. limit 1
  155. </select>
  156. <select id="findByRoleIdAndCompanyId" resultType="String">
  157. SELECT
  158. a.id_
  159. FROM
  160. sys_user a
  161. left join sys_user_role b on a.id_ = b.user_id and b.del_flag = 0
  162. WHERE
  163. a.del_flag = 0
  164. and a.company_id = #{companyId}
  165. and b.role_id = #{roleId}
  166. </select>
  167. </mapper>