Commit aca177f4 authored by 施翔轲's avatar 施翔轲

修复查询部门列表时部门下是否有用户显示不正确的问题

parent 24249ebd
...@@ -41,7 +41,8 @@ public class SysDeptController extends BaseController { ...@@ -41,7 +41,8 @@ public class SysDeptController extends BaseController {
List<SysDept> depts = deptService.selectDeptList(dept); List<SysDept> depts = deptService.selectDeptList(dept);
List<SysDeptVo> deptVos = BeanUtil.copyToList(depts, SysDeptVo.class); List<SysDeptVo> deptVos = BeanUtil.copyToList(depts, SysDeptVo.class);
deptVos.forEach(sysDeptVo -> { deptVos.forEach(sysDeptVo -> {
sysDeptVo.setExistUsers(deptService.hasChildByDeptId(sysDeptVo.getDeptId())); //查询该部门及其子部门是否存在用户
sysDeptVo.setExistUsers(deptService.checkAllDeptsAndUsers(sysDeptVo.getDeptId()));
}); });
return R.ok(deptVos); return R.ok(deptVos);
} }
......
...@@ -71,18 +71,25 @@ public interface ISysDeptService { ...@@ -71,18 +71,25 @@ public interface ISysDeptService {
* 是否存在部门子节点 * 是否存在部门子节点
* *
* @param deptId 部门ID * @param deptId 部门ID
* @return 结果 * @return 结果 true 存在 false 不存在
*/ */
boolean hasChildByDeptId(Long deptId); boolean hasChildByDeptId(Long deptId);
/** /**
* 查询部门是否存在用户 * 查询部门是否存在用户
* *
* @param deptId 部门ID * @param deptId 部门ID
* @return 结果 true 存在 false 不存在 * @return 结果 true 存在 false 不存在
*/ */
boolean checkDeptExistUser(Long deptId); boolean checkDeptExistUser(Long deptId);
/**
* 查询该部门及其子部门是否存在用户
* @param deptId 部门ID
* @return 结果 true 存在 false 不存在
*/
Boolean checkAllDeptsAndUsers(Long deptId);
/** /**
* 校验部门名称是否唯一 * 校验部门名称是否唯一
* *
......
...@@ -8,9 +8,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; ...@@ -8,9 +8,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.dsk.common.constant.CacheNames; import com.dsk.common.constant.CacheNames;
import com.dsk.common.constant.UserConstants; import com.dsk.common.constant.UserConstants;
import com.dsk.system.domain.SysDept;
import com.dsk.system.domain.SysRole;
import com.dsk.system.domain.SysUser;
import com.dsk.common.core.service.DeptService; import com.dsk.common.core.service.DeptService;
import com.dsk.common.exception.ServiceException; import com.dsk.common.exception.ServiceException;
import com.dsk.common.helper.DataBaseHelper; import com.dsk.common.helper.DataBaseHelper;
...@@ -19,6 +16,9 @@ import com.dsk.common.utils.StringUtils; ...@@ -19,6 +16,9 @@ import com.dsk.common.utils.StringUtils;
import com.dsk.common.utils.TreeBuildUtils; import com.dsk.common.utils.TreeBuildUtils;
import com.dsk.common.utils.redis.CacheUtils; import com.dsk.common.utils.redis.CacheUtils;
import com.dsk.common.utils.spring.SpringUtils; import com.dsk.common.utils.spring.SpringUtils;
import com.dsk.system.domain.SysDept;
import com.dsk.system.domain.SysRole;
import com.dsk.system.domain.SysUser;
import com.dsk.system.mapper.SysDeptMapper; import com.dsk.system.mapper.SysDeptMapper;
import com.dsk.system.mapper.SysRoleMapper; import com.dsk.system.mapper.SysRoleMapper;
import com.dsk.system.mapper.SysUserMapper; import com.dsk.system.mapper.SysUserMapper;
...@@ -183,7 +183,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { ...@@ -183,7 +183,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService {
} }
/** /**
* 查询部门是否存在用户 * 查询部门是否存在用户
* *
* @param deptId 部门ID * @param deptId 部门ID
* @return 结果 true 存在 false 不存在 * @return 结果 true 存在 false 不存在
...@@ -194,6 +194,26 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { ...@@ -194,6 +194,26 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService {
.eq(SysUser::getDeptId, deptId)); .eq(SysUser::getDeptId, deptId));
} }
/**
* 查询该部门及其子部门是否存在用户
*
* @param deptId 部门ID
* @return 结果 true 存在 false 不存在
*/
@Override
public Boolean checkAllDeptsAndUsers(Long deptId) {
List<SysDept> childDeptList = baseMapper.selectDeptList(new LambdaQueryWrapper<SysDept>()
.eq(SysDept::getParentId, deptId));
if (!childDeptList.isEmpty()) {
for (SysDept sysDept : childDeptList) {
if (checkDeptExistUser(sysDept.getDeptId())) {
return true;
}
}
}
return checkDeptExistUser(deptId);
}
/** /**
* 校验部门名称是否唯一 * 校验部门名称是否唯一
* *
......
...@@ -149,19 +149,11 @@ public class SysMenuServiceImpl implements ISysMenuService { ...@@ -149,19 +149,11 @@ public class SysMenuServiceImpl implements ISysMenuService {
*/ */
@Override @Override
public List<SysMenu> selectMenuTreeByUserId(Long userId) { public List<SysMenu> selectMenuTreeByUserId(Long userId) {
List<SysMenu> menus = null; List<SysMenu> menus;
if (LoginHelper.isSuperAdmin(userId)) { if (LoginHelper.isSuperAdmin(userId)) {
//Sass超管 //Sass超管
menus = baseMapper.selectMenuTreeAll(); menus = baseMapper.selectMenuTreeAll();
} }else {
// else if (LoginHelper.isTenantAdmin()) {
// //租户管理员
// SysTenantVo sysTenantVo = tenantMapper.selectVoOne(new LambdaQueryWrapper<SysTenant>().eq(SysTenant::getTenantId, LoginHelper.getTenantId()));
// SysTenantPackageVo sysTenantPackageVo = tenantPackageMapper.selectVoOne(new LambdaQueryWrapper<SysTenantPackage>().eq(SysTenantPackage::getPackageId, sysTenantVo.getPackageId()));
// List<Long> menuIds = StringUtils.splitTo(sysTenantPackageVo.getMenuIds(), Convert::toLong);
// menus = baseMapper.selectBatchIds(menuIds);
// }
else {
//租户下的员工 //租户下的员工
menus = baseMapper.selectMenuTreeByUserId(userId); menus = baseMapper.selectMenuTreeByUserId(userId);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment