From 766c2b5c6940fb4373b7b8097b31d2b03aa49ac2 Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期一, 10 十一月 2025 21:22:16 +0800
Subject: [PATCH] fix:优化小程序人员加载和后台用户管理中的用户加载

---
 app/pages/task/create-emergency.vue                                               |   48 +++++----
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/HospDataController.java |    8 
 app/api/system/user.js                                                            |   10 +
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java  |   16 +++
 app/pages/login.vue                                                               |    7 
 ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml                   |   77 +++++++-------
 ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java          |    8 +
 ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java             |    8 +
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java  |   65 +++++++++++++
 app/pages/task/index.vue                                                          |    2 
 10 files changed, 179 insertions(+), 70 deletions(-)

diff --git a/app/api/system/user.js b/app/api/system/user.js
index 421afa0..1ea6103 100644
--- a/app/api/system/user.js
+++ b/app/api/system/user.js
@@ -40,7 +40,7 @@
   })
 }
 
-// 鏌ヨ鐢ㄦ埛鍒楄〃
+// 鏌ヨ鐢ㄦ埛鍒楄〃锛堝悗鍙扮鐞嗙敤锛�
 export function listUser(query) {
   return request({
     url: '/system/user/list',
@@ -48,3 +48,11 @@
     params: query
   })
 }
+
+// 鏌ヨ褰撳墠鐢ㄦ埛绠$悊鐨勫垎鍏徃涓嬬殑鎵�鏈夌敤鎴凤紙灏忕▼搴忕涓撶敤锛�
+export function listBranchUsers() {
+  return request({
+    url: '/system/user/branch/users',
+    method: 'get'
+  })
+}
diff --git a/app/pages/login.vue b/app/pages/login.vue
index 3f67b74..f95977e 100644
--- a/app/pages/login.vue
+++ b/app/pages/login.vue
@@ -45,7 +45,7 @@
           class="wechat-login-btn cu-btn block bg-green lg round"
           style="margin-top: 20rpx;">
           <text class="cuIcon-wechat" style="margin-right: 10rpx;"></text>
-          寰俊涓�閿櫥褰�
+        鎵嬫満鍙风爜蹇嵎鐧诲綍
         </button>
         <button 
           v-else-if="isWechat"
@@ -54,7 +54,7 @@
           class="wechat-login-btn cu-btn block bg-green lg round"
           style="margin-top: 20rpx;">
           <text class="cuIcon-wechat" style="margin-right: 10rpx;"></text>
-          寰俊涓�閿櫥褰�
+          鎵嬫満鍙风爜蹇嵎鐧诲綍
         </button>
         <!-- #endif -->
       </view>
@@ -181,8 +181,9 @@
         // 浠庢湰鍦板瓨鍌ㄤ腑鑾峰彇OpenID鍜孶nionID
         const savedOpenId = uni.getStorageSync('wechat_openid')
         const savedUnionId = uni.getStorageSync('wechat_unionid')
+        const autoLogin=false;
         
-        if (savedOpenId) {
+        if (savedOpenId && autoLogin) {
           console.log('妫�娴嬪埌宸蹭繚瀛樼殑OpenID锛屽皾璇曡嚜鍔ㄧ櫥褰�')
           this.wechatOpenId = savedOpenId
           this.wechatUnionId = savedUnionId // 鍙兘涓簄ull
diff --git a/app/pages/task/create-emergency.vue b/app/pages/task/create-emergency.vue
index 9621a62..933ece3 100644
--- a/app/pages/task/create-emergency.vue
+++ b/app/pages/task/create-emergency.vue
@@ -507,7 +507,7 @@
 import { listAvailableVehicles, getUserBoundVehicle } from "@/api/vehicle"
 import { calculateDistance, baiduDistanceByAddress, baiduPlaceSuggestion } from "@/api/map"
 import { searchHospitals, getFrequentOutHospitals, getFrequentInHospitals, searchHospitalsByDeptRegion } from "@/api/hospital"
-import { listUser } from "@/api/system/user"
+import { listBranchUsers } from "@/api/system/user"
 import { searchIcd10 } from "@/api/icd10"
 
 import { getDicts } from "@/api/dict"
@@ -810,7 +810,7 @@
       switch(staffType){
         case "nurse":
           return "鎶ゅ+";
-        case "doctor":
+        case "doctor":          
           return "鍖荤敓";
         case "driver":
           return "鍙告満";
@@ -1246,24 +1246,14 @@
     
     // 鍔犺浇褰撳墠鐢ㄦ埛鎵�鍦ㄥ垎鍏徃鐨勬墍鏈変汉鍛�
     loadDeptStaff() {
-      const deptId = this.currentUser.deptId
-      if (!deptId) {
-        console.error('鏃犳硶鑾峰彇褰撳墠鐢ㄦ埛鎵�鍦ㄩ儴闂�')
-        this.$modal.showToast('鏃犳硶鑾峰彇鎵�鍦ㄩ儴闂ㄤ俊鎭�')
-        return
-      }
+      console.log('寮�濮嬪姞杞戒汉鍛樺垪琛�')
       
-      // 鐩存帴鏌ヨ褰撳墠鐢ㄦ埛閮ㄩ棬涓嬬殑鎵�鏈夌敤鎴�
-      // 鍚庣SQL浼氳嚜鍔ㄥ鐞嗭細濡傛灉浼犲叆鐨勬槸瀛愰儴闂紝浼氭煡鎵惧叾鎵�灞炵殑鍒嗗叕鍙稿強鍏舵墍鏈夊瓙閮ㄩ棬鐨勭敤鎴�
-      const queryParams = {
-        deptId: deptId,
-        status: '0', // 鍙煡璇㈡甯哥姸鎬佺殑鐢ㄦ埛
-        pageNum: 1,
-        pageSize: 10000 // 璁剧疆瓒冲澶х殑椤甸潰澶у皬锛岃幏鍙栨墍鏈夌敤鎴�
-      }
-      
-      listUser(queryParams).then(response => {
-        const userList = response.rows || response.data || []
+      // 璋冪敤鏂版帴鍙o紝鑷姩鏍规嵁褰撳墠鐢ㄦ埛鐨刼aOrderClass鑾峰彇鍒嗗叕鍙镐笅鐨勭敤鎴�
+      listBranchUsers().then(response => {
+        console.log('浜哄憳鍒楄〃API鍝嶅簲:', response)
+        const userList = response.data || []
+        console.log('瑙f瀽鍑虹殑鐢ㄦ埛鍒楄〃:', userList, '鏁伴噺:', userList.length)
+        
         this.allStaffList = userList.map(user => ({
           userId: user.userId,
           nickName: user.nickName,
@@ -1274,6 +1264,8 @@
           // 鏍规嵁宀椾綅鍚嶇О鎴栬鑹插悕绉板垽鏂被鍨�
           type: this.getUserType(user)
         }))
+        
+        console.log('澶勭悊鍚庣殑浜哄憳鍒楄〃:', this.allStaffList, '鏁伴噺:', this.allStaffList.length)
         
         // 鍒濆鍖栬繃婊ゅ垪琛�
         this.filterStaffList()
@@ -1293,14 +1285,18 @@
       if (postName.includes('鍙告満') || roleName.includes('鍙告満') || deptName.includes('杞﹂槦') || deptName.includes('鍙告満')) {
         return 'driver'
       }
-      // 鍒ゆ柇鏄惁涓哄尰鐢�
-      if (postName.includes('鍖荤敓') || roleName.includes('鍖荤敓') || deptName.includes('鍖荤敓')) {
-        return 'doctor'
-      }
       // 鍒ゆ柇鏄惁涓烘姢澹�
       if (postName.includes('鎶ゅ+') || roleName.includes('鎶ゅ+') || deptName.includes('鎶ゅ+')) {
         return 'nurse'
       }
+      // 鍒ゆ柇鏄惁涓哄尰鐢�
+      if (postName.includes('鍖荤敓') || roleName.includes('鍖荤敓') || deptName.includes('鍖荤敓') ) {
+        return 'doctor'
+      }
+      if( deptName.includes("鍖绘姢")){
+        return 'doctor'
+      }
+      
       // 鍏朵粬绫诲瀷锛岄粯璁や负鍙告満
       return 'driver'
     },
@@ -1332,6 +1328,7 @@
     
     // 杩囨护浜哄憳鍒楄〃
     filterStaffList() {
+      console.log('寮�濮嬭繃婊や汉鍛樺垪琛紝鍘熷鏁伴噺:', this.allStaffList.length)
       let list = [...this.allStaffList]
       
       // 鎸夌被鍨嬭繃婊�
@@ -1343,6 +1340,8 @@
         list = list.filter(staff => staff.type === 'nurse')
       }
       
+      console.log('鎸夌被鍨嬭繃婊ゅ悗:', this.staffFilterType, '鏁伴噺:', list.length)
+      
       // 鎸夊叧閿瘝鎼滅储
       if (this.staffSearchKeyword && this.staffSearchKeyword.trim() !== '') {
         const keyword = this.staffSearchKeyword.trim().toLowerCase()
@@ -1352,7 +1351,10 @@
         })
       }
       
+      console.log('鎸夊叧閿瘝杩囨护鍚庯紝鏁伴噺:', list.length)
+      
       this.filteredStaffList = list
+      console.log('鏈�缁堣繃婊ょ粨鏋�:', this.filteredStaffList)
     },
     
     // 鍒囨崲浜哄憳閫変腑鐘舵��
diff --git a/app/pages/task/index.vue b/app/pages/task/index.vue
index c25c86a..0358e7f 100644
--- a/app/pages/task/index.vue
+++ b/app/pages/task/index.vue
@@ -434,7 +434,7 @@
         this.loadTaskList()
         setTimeout(() => {
           this.refreshing = false
-          this.$modal.showToast('鍒楄〃宸插埛鏂�');
+          // this.$modal.showToast('鍒楄〃宸插埛鏂�');
           // 鍋滄涓嬫媺鍒锋柊
           uni.stopPullDownRefresh()
         }, 1000)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/HospDataController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/HospDataController.java
index ca8d171..085cdc4 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/HospDataController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/HospDataController.java
@@ -44,15 +44,15 @@
         List<HospData> list;
         
         // 濡傛灉keyword涓虹┖锛屼娇鐢ㄩ儴闂ㄥ尯鍩熻繃婊ゆ煡璇�
-        if (keyword == null || keyword.trim().isEmpty()) {
+        if (keyword == null || keyword=="") {
             if (deptId != null) {
-                list = hospDataMapper.searchHospitalsByDeptRegion(null, deptId);
+                list = hospDataMapper.searchHospitalsByDeptRegion("", deptId);
             } else {
-                list = hospDataMapper.searchHospitals(null, null);
+                list = hospDataMapper.searchHospitals("", "");
             }
         } else {
            
-                list = hospDataMapper.searchHospitals(keyword, null);
+                list = hospDataMapper.searchHospitals(keyword, "");
             
         }
         
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java
index fa50273..a4c6be3 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java
@@ -252,4 +252,69 @@
     {
         return success(deptService.selectDeptTreeList(dept));
     }
+    
+    /**
+     * 鑾峰彇褰撳墠鐢ㄦ埛绠$悊鐨勫垎鍏徃涓嬬殑鎵�鏈夌敤鎴凤紙灏忕▼搴忕涓撶敤锛�
+     * 鏍规嵁褰撳墠鐢ㄦ埛鐨刼aOrderClass瀛楁鍖归厤鍒嗗叕鍙革紝杩斿洖杩欎簺鍒嗗叕鍙稿強鍏舵墍鏈夊瓙閮ㄩ棬鐨勭敤鎴�
+     */
+    @GetMapping("/branch/users")
+    public AjaxResult listBranchUsers()
+    {
+        // 鑾峰彇褰撳墠鐢ㄦ埛
+        SysUser currentUser = userService.selectUserById(getUserId());
+        if (currentUser == null) {
+            return error("鐢ㄦ埛涓嶅瓨鍦�");
+        }
+        
+        // 鑾峰彇褰撳墠鐢ㄦ埛绠$悊鐨勫垎鍏徃ID鍒楄〃
+        String oaOrderClass = currentUser.getOaOrderClass();
+        List<Long> branchDeptIds = new java.util.ArrayList<>();
+        
+        if (StringUtils.isNotEmpty(oaOrderClass)) {
+            // 鏍规嵁oaOrderClass鏌ヨ鍖归厤鐨勫垎鍏徃
+            String[] orderCodes = oaOrderClass.split(",");
+            SysDept queryDept = new SysDept();
+            queryDept.setParentId(100L); // 鍙煡璇㈠垎鍏徃
+            List<SysDept> allBranches = deptService.selectDeptList(queryDept);
+            
+            for (SysDept branch : allBranches) {
+                for (String code : orderCodes) {
+                    // 鍖归厤serviceOrderClass鎴杁ispatchOrderClass
+                    if ((StringUtils.isNotEmpty(branch.getServiceOrderClass()) && branch.getServiceOrderClass().equals(code.trim()))
+                        || (StringUtils.isNotEmpty(branch.getDispatchOrderClass()) && branch.getDispatchOrderClass().equals(code.trim()))) {
+                        branchDeptIds.add(branch.getDeptId());
+                        break;
+                    }
+                }
+            }
+        }
+        
+        // 濡傛灉娌℃湁鎵惧埌鍖归厤鐨勫垎鍏徃锛屼娇鐢ㄥ綋鍓嶇敤鎴锋墍鍦ㄩ儴闂�
+        if (branchDeptIds.isEmpty()) {
+            Long userDeptId = currentUser.getDeptId();
+            if (userDeptId != null) {
+                // 鏌ユ壘鐢ㄦ埛鎵�鍦ㄩ儴闂ㄧ殑鐖剁骇鍒嗗叕鍙�
+                SysDept userDept = deptService.selectDeptById(userDeptId);
+                if (userDept != null) {
+                    // 鍚戜笂鏌ユ壘鐩村埌鎵惧埌parent_id=100鐨勫垎鍏徃
+                    while (userDept != null && userDept.getParentId() != 100L) {
+                        userDept = deptService.selectDeptById(userDept.getParentId());
+                    }
+                    if (userDept != null && userDept.getParentId() == 100L) {
+                        branchDeptIds.add(userDept.getDeptId());
+                    }
+                }
+            }
+        }
+        
+        // 濡傛灉杩樻槸娌℃湁鎵惧埌锛岃繑鍥炵┖鍒楄〃
+        if (branchDeptIds.isEmpty()) {
+            return success(new java.util.ArrayList<>());
+        }
+        
+        // 鏌ヨ杩欎簺鍒嗗叕鍙稿強鍏舵墍鏈夊瓙閮ㄩ棬鐨勭敤鎴�
+        List<SysUser> users = userService.selectUsersByBranchDeptIds(branchDeptIds);
+        
+        return success(users);
+    }
 }
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java
index c6a30d0..e67ea91 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java
@@ -147,4 +147,12 @@
      * @return 鐢ㄦ埛瀵硅薄淇℃伅
      */
     public SysUser selectUserByOpenId(@Param("openId") String openId);
+    
+    /**
+     * 鏍规嵁鍒嗗叕鍙窱D鍒楄〃鏌ヨ鐢ㄦ埛锛堝寘鍚垎鍏徃鍙婂叾鎵�鏈夊瓙閮ㄩ棬鐨勭敤鎴凤級
+     * 
+     * @param branchDeptIds 鍒嗗叕鍙窱D鍒楄〃
+     * @return 鐢ㄦ埛鍒楄〃
+     */
+    public List<SysUser> selectUsersByBranchDeptIds(@Param("branchDeptIds") List<Long> branchDeptIds);
 }
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java
index 43a0ec4..3b50ba7 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java
@@ -219,4 +219,12 @@
      * @return 缁撴灉
      */
     public String importUser(List<SysUser> userList, Boolean isUpdateSupport, String operName);
+    
+    /**
+     * 鏍规嵁鍒嗗叕鍙窱D鍒楄〃鏌ヨ鐢ㄦ埛锛堝寘鍚垎鍏徃鍙婂叾鎵�鏈夊瓙閮ㄩ棬鐨勭敤鎴凤級
+     * 
+     * @param branchDeptIds 鍒嗗叕鍙窱D鍒楄〃
+     * @return 鐢ㄦ埛鍒楄〃
+     */
+    public List<SysUser> selectUsersByBranchDeptIds(List<Long> branchDeptIds);
 }
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
index e6eb938..a302044 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
@@ -621,4 +621,20 @@
         }
         return successMsg.toString();
     }
+    
+    /**
+     * 鏍规嵁鍒嗗叕鍙窱D鍒楄〃鏌ヨ鐢ㄦ埛锛堝寘鍚垎鍏徃鍙婂叾鎵�鏈夊瓙閮ㄩ棬鐨勭敤鎴凤級
+     * 
+     * @param branchDeptIds 鍒嗗叕鍙窱D鍒楄〃
+     * @return 鐢ㄦ埛鍒楄〃
+     */
+    @Override
+    public List<SysUser> selectUsersByBranchDeptIds(List<Long> branchDeptIds)
+    {
+        if (branchDeptIds == null || branchDeptIds.isEmpty()) {
+            return new ArrayList<>();
+        }
+        
+        return userMapper.selectUsersByBranchDeptIds(branchDeptIds);
+    }
 }
diff --git a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
index 206df95..dbe2adc 100644
--- a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
@@ -81,44 +81,11 @@
 			AND date_format(u.create_time,'%Y%m%d') &lt;= date_format(#{params.endTime},'%Y%m%d')
 		</if>
 		<if test="deptId != null and deptId != 0">
-			<![CDATA[
-			AND u.dept_id IN (
-				-- 鏌ヨ鐢ㄦ埛鎵�灞炲垎鍏徃鍙婂叾鎵�鏈夊瓙閮ㄩ棬
-				SELECT t.dept_id FROM sys_dept t 
-				WHERE t.del_flag = '0' AND (
-					-- 鎯呭喌1锛氫紶鍏ョ殑閮ㄩ棬灏辨槸鍒嗗叕鍙�(parent_id=100)
-					(t.dept_id = ]]>#{deptId}<![CDATA[ AND EXISTS (
-						SELECT 1 FROM sys_dept d WHERE d.dept_id = ]]>#{deptId}<![CDATA[ AND d.parent_id = 100
-					))
-					OR
-					-- 鏌ヨ璇ュ垎鍏徃鐨勬墍鏈夊瓙閮ㄩ棬
-					(find_in_set(
-						(SELECT d.dept_id FROM sys_dept d WHERE d.dept_id = ]]>#{deptId}<![CDATA[ AND d.parent_id = 100),
-						t.ancestors
-					) > 0)
-					OR
-					-- 鎯呭喌2锛氫紶鍏ョ殑鏄瓙閮ㄩ棬锛屾壘鍒板叾鎵�灞炲垎鍏徃
-					(t.dept_id IN (
-						SELECT branch.dept_id FROM sys_dept branch
-						WHERE branch.parent_id = 100
-						  AND find_in_set(branch.dept_id, (
-							SELECT sub.ancestors FROM sys_dept sub WHERE sub.dept_id = ]]>#{deptId}<![CDATA[
-						  )) > 0
-					))
-					OR
-					-- 鏌ヨ璇ュ垎鍏徃鐨勬墍鏈夊瓙閮ㄩ棬
-					(find_in_set(
-						(SELECT branch.dept_id FROM sys_dept branch
-						 WHERE branch.parent_id = 100
-						   AND find_in_set(branch.dept_id, (
-							 SELECT sub.ancestors FROM sys_dept sub WHERE sub.dept_id = ]]>#{deptId}<![CDATA[
-						   )) > 0
-						),
-						t.ancestors
-					) > 0)
-				)
-			)
-			]]>
+			-- 鏌ヨ鎸囧畾閮ㄩ棬鍙婂叾鎵�鏈夊瓙閮ㄩ棬鐨勭敤鎴�
+			AND (u.dept_id = #{deptId} OR u.dept_id IN (
+				SELECT dept_id FROM sys_dept
+				WHERE del_flag = '0' AND find_in_set(#{deptId}, ancestors) > 0
+			))
 		</if>
 		<!-- 鏁版嵁鑼冨洿杩囨护 -->
 		${params.dataScope}
@@ -283,4 +250,38 @@
 		where u.open_id = #{openId} and u.del_flag = '0'
 	</select>
 	
+	<!-- 鏍规嵁鍒嗗叕鍙窱D鍒楄〃鏌ヨ鐢ㄦ埛锛堝寘鍚垎鍏徃鍙婂叾鎵�鏈夊瓙閮ㄩ棬鐨勭敤鎴凤級 -->
+	<select id="selectUsersByBranchDeptIds" resultMap="SysUserResult">
+		SELECT DISTINCT
+			u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, 
+			u.avatar, u.phonenumber, u.sex, u.status, u.del_flag,
+			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
+		FROM sys_user u
+		LEFT JOIN sys_dept d ON u.dept_id = d.dept_id
+		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'
+			AND u.status = '0'
+			AND u.dept_id IN (
+				-- 鏌ヨ鍒嗗叕鍙稿強鍏舵墍鏈夊瓙閮ㄩ棬
+				SELECT t.dept_id 
+				FROM sys_dept t
+				WHERE t.del_flag = '0' 
+					AND (
+						-- 鍒嗗叕鍙告湰韬�
+						t.dept_id IN
+						<foreach collection="branchDeptIds" item="deptId" open="(" separator="," close=")">
+							#{deptId}
+						</foreach>
+						OR
+						-- 鍒嗗叕鍙哥殑瀛愰儴闂紙閫氳繃ancestors瀛楁鍖归厤锛�
+						<foreach collection="branchDeptIds" item="deptId" open="(" separator=" OR " close=")">
+							find_in_set(#{deptId}, t.ancestors) > 0
+						</foreach>
+					)
+			)
+		ORDER BY u.create_time DESC
+	</select>
+	
 </mapper> 
\ No newline at end of file

--
Gitblit v1.9.1