diff --git a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysUserController.java b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysUserController.java index 8a6c035c8..f45708f11 100644 --- a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysUserController.java +++ b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysUserController.java @@ -3,35 +3,36 @@ package com.jero.modules.system.controller; import cn.hutool.core.util.RandomUtil; import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import lombok.extern.slf4j.Slf4j; -import org.apache.commons.lang.StringUtils; -import org.apache.shiro.SecurityUtils; -import org.apache.shiro.authz.annotation.RequiresPermissions; -import org.apache.shiro.authz.annotation.RequiresRoles; import com.jero.common.api.vo.Result; import com.jero.common.aspect.annotation.PermissionData; import com.jero.common.constant.CommonConstant; import com.jero.common.system.api.ISysBaseAPI; -import com.jero.modules.base.service.BaseCommonService; import com.jero.common.system.query.QueryGenerator; import com.jero.common.system.util.JwtUtil; import com.jero.common.system.vo.LoginUser; -import com.jero.common.util.*; +import com.jero.common.util.ImportExcelUtil; +import com.jero.common.util.PasswordUtil; +import com.jero.common.util.RedisUtil; +import com.jero.common.util.oConvertUtils; +import com.jero.modules.base.service.BaseCommonService; import com.jero.modules.system.entity.*; import com.jero.modules.system.model.DepartIdModel; import com.jero.modules.system.model.SysUserSysDepartModel; import com.jero.modules.system.service.*; import com.jero.modules.system.vo.SysDepartUsersVO; import com.jero.modules.system.vo.SysUserRoleVO; -import org.apache.shiro.subject.Subject; -import org.checkerframework.framework.qual.RequiresQualifier; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang.StringUtils; +import org.apache.shiro.SecurityUtils; +import org.apache.shiro.authz.annotation.RequiresPermissions; import org.jeecgframework.poi.excel.ExcelImportUtil; import org.jeecgframework.poi.excel.def.NormalExcelConstants; import org.jeecgframework.poi.excel.entity.ExportParams; @@ -61,6 +62,7 @@ import java.util.stream.Collectors; */ @Slf4j @RestController +@Api(tags = "用户管理") @RequestMapping("/sys/user") public class SysUserController { @Autowired @@ -647,6 +649,7 @@ public class SysUserController { /** * 部门用户列表 */ + @ApiOperation(value = "查询组织下的用户列表") @RequestMapping(value = "/departUserList", method = RequestMethod.GET) @RequiresPermissions("sys:user:list") public Result> departUserList(@RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @@ -654,16 +657,20 @@ public class SysUserController { Result> result = new Result>(); Page page = new Page(pageNo, pageSize); String depId = req.getParameter("depId"); - String username = req.getParameter("username"); +// String username = req.getParameter("username"); + String username = null; //根据部门ID查询,当前和下级所有的部门IDS List subDepids = new ArrayList<>(); //部门id为空时,查询我的部门下所有用户 if(oConvertUtils.isEmpty(depId)){ - LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - int userIdentity = user.getUserIdentity() != null?user.getUserIdentity():CommonConstant.USER_IDENTITY_1; - if(oConvertUtils.isNotEmpty(userIdentity) && userIdentity == CommonConstant.USER_IDENTITY_2 ){ - subDepids = sysDepartService.getMySubDepIdsByDepId(user.getDepartIds()); - } + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_0); + subDepids = sysDepartService.list(queryWrapper).stream().map(SysDepart::getId).collect(Collectors.toList()); +// LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); +// int userIdentity = user.getUserIdentity() != null?user.getUserIdentity():CommonConstant.USER_IDENTITY_1; +// if(oConvertUtils.isNotEmpty(userIdentity) && userIdentity == CommonConstant.USER_IDENTITY_2 ){ +// subDepids = sysDepartService.getMySubDepIdsByDepId(user.getDepartIds()); +// } }else{ subDepids = sysDepartService.getSubDepIdsByDepId(depId); } diff --git a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/mapper/xml/SysDepartMapper.xml b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/mapper/xml/SysDepartMapper.xml index 960893dd5..372352fee 100644 --- a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/mapper/xml/SysDepartMapper.xml +++ b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/mapper/xml/SysDepartMapper.xml @@ -3,28 +3,34 @@ + SELECT sd.id + FROM sys_depart sd,( SELECT ( @nodes := queryChildrenTempNode (#{departId})) AS pids ) t + WHERE + FIND_IN_SET( sd.id, t.pids ) + AND del_flag = 0 + select * from sys_user where del_flag = 0 - and id in (select user_id from sys_user_depart where dep_id in + and id in (select dru.user_id from sys_depart_role dr, sys_depart_role_user dru where dr.id = dru.drole_id and dr.depart_id in #{id} diff --git a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysDepartServiceImpl.java b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysDepartServiceImpl.java index 7d5842fc4..c2d843998 100644 --- a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysDepartServiceImpl.java +++ b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysDepartServiceImpl.java @@ -1,13 +1,12 @@ package com.jero.modules.system.service.impl; -import java.util.*; - import com.alibaba.fastjson.JSONObject; -import com.jero.common.system.vo.SysDepartTreeModel; -import org.apache.commons.lang.StringUtils; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.constant.CacheConstant; import com.jero.common.constant.CommonConstant; import com.jero.common.constant.FillRuleConstant; +import com.jero.common.system.vo.SysDepartTreeModel; import com.jero.common.util.FillRuleUtil; import com.jero.common.util.YouBianCodeUtil; import com.jero.modules.system.entity.*; @@ -15,15 +14,14 @@ import com.jero.modules.system.mapper.*; import com.jero.modules.system.model.DepartIdModel; import com.jero.modules.system.service.ISysDepartService; import com.jero.modules.system.util.FindsDepartsChildrenUtil; +import io.netty.util.internal.StringUtil; +import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; - -import io.netty.util.internal.StringUtil; +import java.util.*; /** *