From bed3eee53f72f47f49b493772a4525e6c6b3e7be Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 31 七月 2024 09:05:37 +0800
Subject: [PATCH] 修复bug

---
 server/dmvisit_service/src/main/resources/mappers/SystemUserMapper.xml |   70 +++++++++++++++++++++++++++++++++++
 1 files changed, 70 insertions(+), 0 deletions(-)

diff --git a/server/dmvisit_service/src/main/resources/mappers/SystemUserMapper.xml b/server/dmvisit_service/src/main/resources/mappers/SystemUserMapper.xml
new file mode 100644
index 0000000..78d68d6
--- /dev/null
+++ b/server/dmvisit_service/src/main/resources/mappers/SystemUserMapper.xml
@@ -0,0 +1,70 @@
+<?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.doumee.dao.system.SystemUserMapper">
+
+  <!-- 鏌ヨ鐢ㄦ埛鍒楄〃 -->
+  <resultMap id="SystemUserListVO" type="com.doumee.dao.system.vo.SystemUserListVO" autoMapping="true">
+    <id column="ID" property="id"/>
+    <association property="department" javaType="com.doumee.dao.system.model.SystemDepartment">
+      <result column="DEPARTMENT_ID" property="id"/>
+      <result column="DEPARTMENT_NAME" property="name"/>
+    </association>
+    <association property="createUserInfo" javaType="com.doumee.dao.system.model.SystemUser">
+      <result column="CREATE_USER_ID" property="id"/>
+      <result column="CREATE_USER_NAME" property="username"/>
+      <result column="CREATE_REAL_NAME" property="realname"/>
+    </association>
+    <association property="updateUserInfo" javaType="com.doumee.dao.system.model.SystemUser">
+      <result column="UPDATE_USER_ID" property="id"/>
+      <result column="UPDATE_USER_NAME" property="username"/>
+      <result column="UPDATE_REAL_NAME" property="realname"/>
+    </association>
+  </resultMap>
+  <select id="selectManageList" parameterType="com.doumee.dao.system.dto.QuerySystemUserDTO" resultMap="SystemUserListVO">
+    SELECT
+      DISTINCT
+      usr.ID, usr.BIRTHDAY, usr.EMAIL, usr.EMP_NO, usr.MOBILE, usr.AVATAR, usr.USERNAME, usr.REALNAME, usr.SEX, usr.FIXED, usr.CREATE_TIME, usr.UPDATE_TIME,
+      sd.ID AS DEPARTMENT_ID, sd.`NAME` AS DEPARTMENT_NAME,usr.wechat_name,usr.status,usr.OPENID,usr.type,
+      create_user.ID CREATE_USER_ID, create_user.`USERNAME` CREATE_USER_NAME, create_user.`REALNAME` CREATE_REAL_NAME,
+      update_user.ID UPDETE_USER_ID, update_user.`USERNAME` UPDATE_USER_NAME, create_user.`REALNAME` UPDATE_REAL_NAME
+    FROM `SYSTEM_USER` usr
+    LEFT JOIN `SYSTEM_USER` create_user ON create_user.ID = usr.CREATE_USER
+    LEFT JOIN `SYSTEM_USER` update_user ON update_user.ID = usr.UPDATE_USER
+--     LEFT JOIN `SYSTEM_POSITION_USER` spu ON spu.USER_ID = usr.ID AND spu.DELETED = 0
+--     LEFT JOIN `SYSTEM_POSITION` sp ON sp.ID = spu.POSITION_ID AND sp.DELETED = 0
+    LEFT JOIN `SYSTEM_DEPARTMENT_USER` sdu ON sdu.USER_ID = usr.ID AND sdu.DELETED = 0
+    LEFT JOIN `SYSTEM_DEPARTMENT` sd ON sd.ID = sdu.DEPARTMENT_ID AND sd.DELETED = 0
+    <if test="dto.roleId != null">
+      RIGHT JOIN system_user_role sur on sur.USER_ID = usr.ID and sur.ROLE_ID = #{dto.roleId}
+    </if>
+    <where>
+      usr.DELETED = 0
+<!--      <if test="dto.positionId != null">-->
+<!--        AND spu.POSITION_ID = #{dto.positionId}-->
+<!--      </if>-->
+      <if test="dto.strictDeptId != null">
+        AND sdu.DEPARTMENT_ID = #{dto.strictDeptId}
+      </if>
+      <if test="dto.departmentIds != null and dto.departmentIds.size > 0">
+        AND sdu.DEPARTMENT_ID IN
+        <foreach collection="dto.departmentIds" open="(" close=")" separator="," item="id">
+          #{id}
+        </foreach>
+      </if>
+      <if test="dto.username != null and dto.username != ''">
+        AND usr.`USERNAME` LIKE CONCAT('%', #{dto.username}, '%')
+      </if>
+      <if test="dto.realname != null and dto.realname != ''">
+        AND usr.`REALNAME` LIKE CONCAT('%', #{dto.realname}, '%')
+      </if>
+      <if test="dto.mobile != null and dto.mobile != ''">
+        AND usr.`MOBILE` LIKE CONCAT('%', #{dto.mobile}, '%')
+      </if>
+      <if test="dto.status != null ">
+        AND  usr.`status` = #{dto.status}
+      </if>
+    </where>
+    ${orderByClause}
+  </select>
+
+</mapper>

--
Gitblit v1.9.3