|
|
@@ -3,6 +3,8 @@ package com.ydtech.modules.admin.utils;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.ydtech.modules.admin.dao.KztDataPermissionMapper;
|
|
|
import com.ydtech.modules.admin.dao.SysUserDeptRelationshipMapper;
|
|
|
+import com.ydtech.modules.admin.dao.SysUserMapper;
|
|
|
+import com.ydtech.modules.admin.model.SysUser;
|
|
|
import com.ydtech.modules.admin.model.po.KztDataPermission;
|
|
|
import com.ydtech.modules.admin.model.po.SysUserDeptRelationship;
|
|
|
import com.ydtech.modules.admin.model.po.SysUserTreeShowLevel;
|
|
|
@@ -21,6 +23,7 @@ import org.springframework.stereotype.Component;
|
|
|
import java.net.URI;
|
|
|
import java.net.URISyntaxException;
|
|
|
import java.util.ArrayList;
|
|
|
+import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
@@ -79,8 +82,11 @@ public class KztGetDeptUtils {
|
|
|
ApplicationContext applicationContext = SpringContextUtil.getApplicationContext();
|
|
|
EsmUserReferrerService dataPermissionMapper = applicationContext.getBean(EsmUserReferrerService.class);
|
|
|
|
|
|
+// List<SysUser> ids = new ArrayList<>();
|
|
|
+// List<String> userList = dataPermissionMapper.getUpUser(userId,ids); // 假设此方法直接返回用户列表
|
|
|
+
|
|
|
List<String> ids = new ArrayList<>();
|
|
|
- List<String> userList = dataPermissionMapper.getUpUser(userId,ids); // 假设此方法直接返回用户列表
|
|
|
+ List<String> userList = this.getUserTreeHx(userId, ids);
|
|
|
userList.add(userId); //添加本人
|
|
|
if (!userList.isEmpty()) {
|
|
|
resultDto.setIds(userList);
|
|
|
@@ -89,4 +95,20 @@ public class KztGetDeptUtils {
|
|
|
}
|
|
|
return resultDto;
|
|
|
}
|
|
|
+
|
|
|
+ private List<String> getUserTreeHx(String userId, List<String> ids) {
|
|
|
+ ApplicationContext applicationContext = SpringContextUtil.getApplicationContext();
|
|
|
+ SysUserMapper sysUserMapper = applicationContext.getBean(SysUserMapper.class);
|
|
|
+ sysUserMapper.selectUserById(userId);
|
|
|
+ HashMap<String, Object> params = new HashMap<>();
|
|
|
+ params.put("leaderId", userId);
|
|
|
+ List<SysUser> sysUsers = sysUserMapper.selectByParams(params);
|
|
|
+ if (!sysUsers.isEmpty()) {
|
|
|
+ ids.addAll(sysUsers.stream().map(SysUser::getId).collect(Collectors.toList()));
|
|
|
+ }
|
|
|
+ for (SysUser sysUser : sysUsers) {
|
|
|
+ this.getUserTreeHx(sysUser.getId(), ids);
|
|
|
+ }
|
|
|
+ return ids;
|
|
|
+ }
|
|
|
}
|