|
@@ -2,11 +2,14 @@ package com.ruoyi.system.utils;
|
|
|
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
import cn.hutool.extra.spring.SpringUtil;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
+import com.ruoyi.common.core.domain.entity.SysDept;
|
|
|
import com.ruoyi.common.core.domain.entity.SysRole;
|
|
|
import com.ruoyi.common.core.domain.entity.SysUser;
|
|
|
import com.ruoyi.common.exception.ServiceException;
|
|
|
import com.ruoyi.common.utils.wrapper.IWrapper;
|
|
|
import com.ruoyi.system.mapper.SysRoleMapper;
|
|
|
+import com.ruoyi.system.service.ISysDeptService;
|
|
|
import com.ruoyi.system.service.ISysRoleService;
|
|
|
import com.ruoyi.system.service.ISysUserService;
|
|
|
|
|
@@ -20,6 +23,7 @@ public class UserUtil {
|
|
|
private static final ISysUserService sysUserService = SpringUtil.getBean(ISysUserService.class);
|
|
|
private static final SysRoleMapper roleMapper = SpringUtil.getBean(SysRoleMapper.class);
|
|
|
private static final ISysRoleService roleService = SpringUtil.getBean(ISysRoleService.class);
|
|
|
+ private static final ISysDeptService deptService = SpringUtil.getBean(ISysDeptService.class);
|
|
|
|
|
|
public static List<SysUser> getListByIds(List<Long> idList) {
|
|
|
if (idList.size() == 0) {
|
|
@@ -150,4 +154,18 @@ public class UserUtil {
|
|
|
return userRoles;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 获取下级部门用户列表
|
|
|
+ */
|
|
|
+ public static List<SysUser> getBelowUserList(Long userId) {
|
|
|
+ SysUser byId = sysUserService.getById(userId);
|
|
|
+ List<SysDept> list = deptService.list(Wrappers.<SysDept>lambdaQuery().apply("FIND_IN_SET( {0}, ancestors )", byId.getDeptId()));
|
|
|
+ List<Long> deptIds = list.stream().map(SysDept::getDeptId).collect(Collectors.toList());
|
|
|
+ return sysUserService.list(Wrappers.<SysUser>lambdaQuery().in(SysUser::getDeptId, deptIds));
|
|
|
+ }
|
|
|
+
|
|
|
+ public static List<Long> getBelowUserIds(Long userId) {
|
|
|
+ return getBelowUserList(userId).stream().map(SysUser::getUserId).collect(Collectors.toList());
|
|
|
+ }
|
|
|
+
|
|
|
}
|