xuhy
2025-09-02 5d2d6fdff67f8f9a7e65abdbb4b87dba07dcb32b
ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
@@ -26,6 +26,7 @@
        <result property="ifBlack"       column="ifBlack"       />
        <result property="districtId"       column="districtId"       />
        <result property="roleType"       column="role_type"       />
        <result property="signPicture"       column="sign_picture"       />
        <association property="dept"    javaType="SysDept"         resultMap="deptResult" />
        <collection  property="roles"   javaType="java.util.List"  resultMap="RoleResult" />
    </resultMap>
@@ -50,7 +51,7 @@
    </resultMap>
   
   <sql id="selectUserVo">
        select u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.avatar, u.phonenumber, u.password,
        select u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.avatar, u.phonenumber, u.password,u.sign_picture AS signPicture,
               u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark,u.role_type,
        d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.status as dept_status,
        r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.status as role_status
@@ -134,7 +135,8 @@
      select u.user_id AS userId, u.dept_id AS deptId, u.user_name AS userName, u.nick_name AS nickName, u.email AS email, u.avatar AS avatar,
            u.phonenumber AS phonenumber, u.sex AS sex, u.status AS status, u.del_flag AS delFlag, u.login_ip AS loginIp,
            u.login_date AS loginDate, u.create_by AS createBy, u.create_time AS createTime, u.remark AS remark,u.ifBlack AS ifBlack,
            u.districtId AS districtId,
            u.districtId AS districtId,u.sign_picture AS signPicture,
            u.role_type AS roleType,
            ur.role_id AS roleId,sr.role_name AS roleName,u.deptName as deptName
      from sys_user u
      left join sys_user_role ur on u.user_id = ur.user_id
@@ -155,7 +157,8 @@
      select user_id, email from sys_user where email = #{email} and del_flag = '0' limit 1
   </select>
    <select id="selectUserByIds" resultType="com.ruoyi.common.core.domain.entity.SysUser">
      select user_id AS userId, dept_id AS deptId, user_name AS userName, nick_name AS nickName, email AS email, avatar AS avatar, phonenumber AS phonenumber
      select user_id AS userId, dept_id AS deptId, user_name AS userName, nick_name AS nickName,
             email AS email, avatar AS avatar, phonenumber AS phonenumber,create_time AS createTime
      from sys_user where user_id in
      <foreach collection="userIds" separator="," item="userId" open="(" close=")">
         #{userId}
@@ -226,7 +229,7 @@
    <select id="pageList" resultType="com.ruoyi.system.vo.SysUserVO">
      select u.user_id AS userId, u.dept_id AS deptId, u.user_name AS userName, u.nick_name AS nickName, u.email AS email, u.avatar AS avatar,u.disable_remark AS disableRemark,
            u.phonenumber AS phonenumber, u.sex AS sex, u.status AS status, u.del_flag AS delFlag, u.login_ip AS loginIp,u.operating_time AS operatingTime,u.operating_person AS operatingPerson,
            u.login_date AS loginDate, u.create_by AS createBy, u.create_time AS createTime, u.remark AS remark,u.ifBlack AS ifBlack, u.districtId AS districtId,
            u.login_date AS loginDate, u.create_by AS createBy, u.create_time AS createTime, u.remark AS remark,u.ifBlack AS ifBlack, u.districtId AS districtId,u.role_type AS roleType,
            r.role_id AS roleId, r.role_name AS roleName, r.role_key AS roleKey, r.role_sort AS roleSort, r.data_scope AS dataScope, r.status as role_status,u.deptName as deptName
      from sys_user u
      left join sys_user_role ur on u.user_id = ur.user_id
@@ -256,6 +259,47 @@
   <select id="selectIdByPhone" resultType="java.lang.Long">
      select user_id from sys_user where phonenumber = #{phonenumber} and status = 0 and del_flag = 0
   </select>
   <select id="listByRole" resultType="com.ruoyi.common.core.domain.entity.SysUser">
      select u.user_id AS userId, u.dept_id AS deptId, u.user_name AS userName, u.nick_name AS nickName, u.email AS email, u.avatar AS avatar,
            u.phonenumber AS phonenumber, u.sex AS sex, u.status AS status, u.del_flag AS delFlag, u.login_ip AS loginIp,
            u.login_date AS loginDate, u.create_by AS createBy, u.create_time AS createTime, u.remark AS remark,u.ifBlack AS ifBlack,
            u.districtId AS districtId, u.role_type AS roleType,r.role_id AS roleId
      from sys_user u
      left join sys_user_role ur on u.user_id = ur.user_id
      left join sys_role r on r.role_id = ur.role_id
      WHERE u.del_flag = 0
      <if test="userIds != null and userIds.size()>0">
         AND u.user_id IN
         <foreach collection="userIds" close=")" open="(" item="userId" separator=",">
            #{userId}
         </foreach>
      </if>
      <if test="nickName != null and nickName != ''">
         AND u.nick_name LIKE concat('%',#{nickName},'%')
      </if>
   </select>
   <select id="selectListByNameAndUserIds" resultType="com.ruoyi.common.core.domain.entity.SysUser">
      select u.user_id AS userId, u.dept_id AS deptId, u.user_name AS userName, u.nick_name AS nickName, u.email AS email, u.avatar AS avatar,
            u.phonenumber AS phonenumber, u.sex AS sex, u.status AS status, u.del_flag AS delFlag, u.login_ip AS loginIp,
            u.login_date AS loginDate, u.create_by AS createBy, u.create_time AS createTime, u.remark AS remark,u.ifBlack AS ifBlack, u.districtId AS districtId
      from sys_user u
      WHERE u.del_flag = 0
      <if test="userIds != null and userIds.size()>0">
         AND u.user_id IN
         <foreach collection="userIds" close=")" open="(" item="userId" separator=",">
            #{userId}
         </foreach>
      </if>
      <if test="nickName != null and nickName != ''">
         AND u.nick_name LIKE concat('%',#{nickName},'%')
      </if>
   </select>
   <select id="selectOldList" resultType="com.ruoyi.common.core.domain.entity.SysUser">
      select u.user_id AS userId, u.dept_id AS deptId, u.user_name AS userName, u.nick_name AS nickName, u.email AS email, u.avatar AS avatar,
            u.phonenumber AS phonenumber, u.sex AS sex, u.status AS status, u.del_flag AS delFlag, u.login_ip AS loginIp,
            u.login_date AS loginDate, u.create_by AS createBy, u.create_time AS createTime, u.remark AS remark
      from sys_user u where user_id &lt; 0 and u.status = 0 and u.del_flag = 0 order by user_id desc
   </select>
   <insert id="insertUser" parameterType="SysUser" useGeneratedKeys="true" keyProperty="userId">
       insert into sys_user(
@@ -274,25 +318,27 @@
          <if test="remark != null and remark != ''">remark,</if>
          <if test="ifBlack != null">ifBlack,</if>
          <if test="districtId != null">districtId,</if>
          <if test="roleType != null">role_type,</if>
      <if test="userIdentification != null and userIdentification != ''">userIdentification,</if>
          create_time
       )values(
          <if test="userId != null and userId != ''">#{userId},</if>
          <if test="deptId != null and deptId != ''">#{deptId},</if>
          <if test="userName != null and userName != ''">#{userName},</if>
      <if test="deptName != null and deptName != ''">#{deptName},</if>
      <if test="nickName != null and nickName != ''">#{nickName},</if>
         <if test="deptName != null and deptName != ''">#{deptName},</if>
         <if test="nickName != null and nickName != ''">#{nickName},</if>
          <if test="email != null and email != ''">#{email},</if>
          <if test="avatar != null and avatar != ''">#{avatar},</if>
          <if test="phonenumber != null and phonenumber != ''">#{phonenumber},</if>
      <if test="sex != null and sex != ''">#{sex},</if>
         <if test="sex != null and sex != ''">#{sex},</if>
          <if test="password != null and password != ''">#{password},</if>
          <if test="status != null and status != ''">#{status},</if>
          <if test="createBy != null and createBy != ''">#{createBy},</if>
          <if test="remark != null and remark != ''">#{remark},</if>
         <if test="ifBlack != null">#{ifBlack},</if>
         <if test="districtId != null">#{districtId},</if>
         <if test="businessDeptId != null">#{businessDeptId},</if>
         <if test="roleType != null">#{roleType},</if>
         <if test="userIdentification != null and userIdentification != ''">#{userIdentification},</if>
          sysdate()
       )
   </insert>
@@ -319,6 +365,7 @@
         <if test="disableRemark != null">disable_remark = #{disableRemark},</if>
         <if test="operatingTime != null">operating_time = #{operatingTime},</if>
         <if test="operatingPerson != null">operating_person = #{operatingPerson},</if>
         <if test="roleType != null">role_type = #{roleType},</if>
          update_time = sysdate()
       </set>
       where user_id = #{userId}
@@ -345,6 +392,19 @@
   <update id="updatePassword">
      update sys_user set password = #{s} where user_id = #{id}
   </update>
   <update id="editSignPicture" parameterType="SysUser">
      update sys_user set sign_picture = #{signPicture} where user_id = #{userId}
   </update>
   <update id="updateUserInherit">
      update sys_user
      <set>
         <if test="parentId != null">parentId = #{parentId},</if>
         <if test="parentAccount != null and parentAccount != ''">parentAccount = #{parentAccount},</if>
         <if test="userId != null">user_id = #{userId},</if>
         update_time = sysdate()
      </set>
      where userIdentification = #{userIdentification}
   </update>
   <delete id="deleteUserById" parameterType="Long">
       update sys_user set del_flag = '2' where user_id = #{userId}
@@ -356,5 +416,8 @@
          #{userId}
        </foreach> 
    </delete>
   <delete id="deleteUserByOldUserId">
      delete from sys_user where user_id = #{oldUserId}
   </delete>
</mapper>