fix(UserManagementRelationxxx.java): 优化了一些细节,主要是汇报关系 -> 管理链路。

This commit is contained in:
dk
2026-04-15 20:56:58 +08:00
parent 8af6842809
commit 67040aaf5d
13 changed files with 96 additions and 96 deletions

View File

@@ -18,23 +18,23 @@ import java.util.List;
import java.util.Map;
@FeignClient(name = ApiConstants.NAME)
@Tag(name = "RPC 服务 - 用户汇报关系")
@Tag(name = "RPC 服务 - 用户管理链路")
public interface UserManagementRelationApi {
String PREFIX = ApiConstants.PREFIX + "/user-management-relation";
@GetMapping(PREFIX + "/list-by-manager")
@Operation(summary = "根据管理者用户ID获得汇报关系列表")
@Operation(summary = "根据管理者用户ID获得管理链路列表")
@Parameter(name = "managerUserId", description = "管理者用户ID", example = "1", required = true)
CommonResult<List<UserManagementRelationRespDTO>> getRelationListByManagerUserId(@RequestParam("managerUserId") Long managerUserId);
@GetMapping(PREFIX + "/list-by-subordinate")
@Operation(summary = "根据被管理者用户ID获得汇报关系列表")
@Operation(summary = "根据被管理者用户ID获得管理链路列表")
@Parameter(name = "subordinateUserId", description = "被管理者用户ID", example = "2", required = true)
CommonResult<List<UserManagementRelationRespDTO>> getRelationListBySubordinateUserId(@RequestParam("subordinateUserId") Long subordinateUserId);
@GetMapping(PREFIX + "/list")
@Operation(summary = "获得汇报关系列表")
@Operation(summary = "获得管理链路列表")
@Parameter(name = "ids", description = "关系编号数组", example = "1,2", required = true)
CommonResult<List<UserManagementRelationRespDTO>> getRelationList(@RequestParam("ids") Collection<Long> ids);

View File

@@ -6,11 +6,11 @@ import lombok.Data;
import java.time.LocalDateTime;
/**
* 用户汇报关系 Response DTO
* 用户管理链路 Response DTO
*
* @author dklive
*/
@Schema(description = "RPC 服务 - 用户汇报关系 Response DTO")
@Schema(description = "RPC 服务 - 用户管理链路 Response DTO")
@Data
public class UserManagementRelationRespDTO {

View File

@@ -54,10 +54,10 @@ public interface ErrorCodeConstants {
ErrorCode USER_REGISTER_DISABLED = new ErrorCode(1_002_003_011, "注册功能已关闭");
ErrorCode USER_IS_RESIGNED = new ErrorCode(1_002_003_012, "名字为【{}】的用户已离职");
// ========== 用户汇报关系模块 1-002-003-100 ==========
ErrorCode USER_MANAGEMENT_RELATION_NOT_FOUND = new ErrorCode(1_002_003_100, "用户汇报关系不存在");
// ========== 用户管理链路模块 1-002-003-100 ==========
ErrorCode USER_MANAGEMENT_RELATION_NOT_FOUND = new ErrorCode(1_002_003_100, "用户管理链路不存在");
ErrorCode USER_MANAGEMENT_RELATION_MANAGER_EXISTS = new ErrorCode(1_002_003_101, "该用户已有直属上级,不能重复添加");
ErrorCode USER_MANAGEMENT_RELATION_EXISTS = new ErrorCode(1_002_003_102, "该用户在汇报关系中还在使用,不可删除!");
ErrorCode USER_MANAGEMENT_RELATION_EXISTS = new ErrorCode(1_002_003_102, "该用户在管理链路中还在使用,不可删除!");
// ========== 部门模块 1-002-004-000 ==========
ErrorCode DEPT_NAME_DUPLICATE = new ErrorCode(1_002_004_000, "已经存在该名字的部门");

View File

@@ -27,17 +27,17 @@ import static com.njcn.rdms.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
import static com.njcn.rdms.framework.common.pojo.CommonResult.success;
/**
* 用户汇报关系 Controller
* 用户管理链路 Controller
*
* 提供用户汇报关系的管理接口,包括:
* - 创建、更新、删除用户汇报关系
* - 查询用户汇报关系列表和详情
* - 获取用户汇报关系树形结构
* - 导出用户汇报关系数据
* 提供用户管理链路的管理接口,包括:
* - 创建、更新、删除用户管理链路
* - 查询用户管理链路列表和详情
* - 获取用户管理链路树形结构
* - 导出用户管理链路数据
*
* @author dklive
*/
@Tag(name = "管理后台 - 用户汇报关系")
@Tag(name = "管理后台 - 用户管理链路")
@RestController
@RequestMapping("/system/user-management-relation")
@Validated
@@ -47,7 +47,7 @@ public class UserManagementRelationController {
private UserManagementRelationService userManagementRelationService;
/**
* 创建用户汇报关系
* 创建用户管理链路
*
* 权限要求system:user-management-relation:create
*
@@ -55,7 +55,7 @@ public class UserManagementRelationController {
* @return 关系记录主键ID
*/
@PostMapping("/create")
@Operation(summary = "创建用户汇报关系")
@Operation(summary = "创建用户管理链路")
@PreAuthorize("@ss.hasPermission('system:user-management-relation:create')")
public CommonResult<Long> createUserManagementRelation(@Valid @RequestBody UserManagementRelationSaveReqVO createReqVO) {
Long id = userManagementRelationService.createRelation(createReqVO);
@@ -63,7 +63,7 @@ public class UserManagementRelationController {
}
/**
* 修改用户汇报关系
* 修改用户管理链路
*
* 权限要求system:user-management-relation:update
*
@@ -71,7 +71,7 @@ public class UserManagementRelationController {
* @return 操作结果
*/
@PutMapping("/update")
@Operation(summary = "修改用户汇报关系")
@Operation(summary = "修改用户管理链路")
@PreAuthorize("@ss.hasPermission('system:user-management-relation:update')")
public CommonResult<Boolean> updateUserManagementRelation(@Valid @RequestBody UserManagementRelationSaveReqVO updateReqVO) {
userManagementRelationService.updateRelation(updateReqVO);
@@ -79,16 +79,16 @@ public class UserManagementRelationController {
}
/**
* 删除用户汇报关系
* 删除用户管理链路
*
* 根据主键ID删除单条用户汇报关系记录
* 根据主键ID删除单条用户管理链路记录
* 权限要求system:user-management-relation:delete
*
* @param id 关系记录主键ID
* @return 操作结果
*/
@DeleteMapping("/delete")
@Operation(summary = "删除用户汇报关系")
@Operation(summary = "删除用户管理链路")
@PreAuthorize("@ss.hasPermission('system:user-management-relation:delete')")
public CommonResult<Boolean> deleteUserManagementRelation(@RequestParam("id") Long id) {
userManagementRelationService.deleteRelation(id);
@@ -96,16 +96,16 @@ public class UserManagementRelationController {
}
/**
* 批量删除用户汇报关系
* 批量删除用户管理链路
*
* 根据主键ID列表批量删除用户汇报关系记录
* 根据主键ID列表批量删除用户管理链路记录
* 权限要求system:user-management-relation:delete
*
* @param ids 关系记录主键ID列表
* @return 操作结果
*/
@DeleteMapping("/delete-list")
@Operation(summary = "批量删除用户汇报关系")
@Operation(summary = "批量删除用户管理链路")
@PreAuthorize("@ss.hasPermission('system:user-management-relation:delete')")
public CommonResult<Boolean> deleteUserManagementRelationList(@RequestParam("ids") List<Long> ids) {
userManagementRelationService.deleteRelationList(ids);
@@ -113,16 +113,16 @@ public class UserManagementRelationController {
}
/**
* 获得用户汇报关系信息
* 获得用户管理链路信息
*
* 根据主键ID查询单条用户汇报关系记录
* 根据主键ID查询单条用户管理链路记录
* 权限要求system:user-management-relation:query
*
* @param id 关系记录主键ID
* @return 用户汇报关系详情
* @return 用户管理链路详情
*/
@GetMapping(value = "/get")
@Operation(summary = "获得用户汇报关系信息")
@Operation(summary = "获得用户管理链路信息")
@Parameter(name = "id", description = "关系编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('system:user-management-relation:query')")
public CommonResult<UserManagementRelationRespVO> getUserManagementRelation(@RequestParam("id") Long id) {
@@ -131,16 +131,16 @@ public class UserManagementRelationController {
}
/**
* 获取用户汇报关系列表
* 获取用户管理链路列表
*
* 根据查询条件查询用户汇报关系记录列表
* 根据查询条件查询用户管理链路记录列表
* 权限要求system:user-management-relation:query
*
* @param reqVO 查询条件VO
* @return 用户汇报关系列表
* @return 用户管理链路列表
*/
@GetMapping("/query")
@Operation(summary = "获取用户汇报关系列表")
@Operation(summary = "获取用户管理链路列表")
@PreAuthorize("@ss.hasPermission('system:user-management-relation:query')")
public CommonResult<List<UserManagementRelationTreeRespVO>> getUserManagementRelationQuery(@Validated UserManagementRelationQueryReqVO reqVO) {
List<UserManagementRelationTreeRespVO> list = userManagementRelationService.getRelationQuery(reqVO);
@@ -148,7 +148,7 @@ public class UserManagementRelationController {
}
/**
* 获取用户汇报关系树形结构
* 获取用户管理链路树形结构
*
* 构建用户上下级关系的树形结构,用于前端树形控件展示
* 树形结构特点:
@@ -158,10 +158,10 @@ public class UserManagementRelationController {
*
* 权限要求system:user-management-relation:query
*
* @return 用户汇报关系树形列表
* @return 用户管理链路树形列表
*/
@GetMapping("/tree")
@Operation(summary = "获取用户汇报关系树形结构", description = "用于前端树形控件展示,包含用户的上下级层级关系")
@Operation(summary = "获取用户管理链路树形结构", description = "用于前端树形控件展示,包含用户的上下级层级关系")
@PreAuthorize("@ss.hasPermission('system:user-management-relation:query')")
public CommonResult<List<UserManagementRelationTreeRespVO>> getUserManagementRelationTree(@Validated UserManagementRelationQueryReqVO reqVO) {
return success(userManagementRelationService.getRelationTree(reqVO));
@@ -169,9 +169,9 @@ public class UserManagementRelationController {
/**
* 导出用户汇报关系 Excel
* 导出用户管理链路 Excel
*
* 根据查询条件导出用户汇报关系数据到Excel文件
* 根据查询条件导出用户管理链路数据到Excel文件
* 权限要求system:user-management-relation:export
*
* @param response HTTP响应对象
@@ -179,12 +179,12 @@ public class UserManagementRelationController {
* @throws IOException IO异常
*/
@GetMapping("/export-excel")
@Operation(summary = "导出用户汇报关系 Excel")
@Operation(summary = "导出用户管理链路 Excel")
@PreAuthorize("@ss.hasPermission('system:user-management-relation:export')")
@ApiAccessLog(operateType = EXPORT)
public void export(HttpServletResponse response, @Validated UserManagementRelationQueryReqVO reqVO) throws IOException {
List<UserManagementRelationTreeRespVO> list = userManagementRelationService.getRelationQuery(reqVO);
ExcelUtils.write(response, "用户汇报关系数据.xls", "用户汇报关系列表", UserManagementRelationRespVO.class,
ExcelUtils.write(response, "用户管理链路数据.xls", "用户管理链路列表", UserManagementRelationRespVO.class,
BeanUtils.toBean(list, UserManagementRelationRespVO.class));
}

View File

@@ -3,7 +3,7 @@ package com.njcn.rdms.module.system.controller.admin.user.vo.userManagementRelat
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Schema(description = "管理后台 - 用户汇报关系列表 Request VO")
@Schema(description = "管理后台 - 用户管理链路列表 Request VO")
@Data
public class UserManagementRelationQueryReqVO {

View File

@@ -7,7 +7,7 @@ import lombok.Data;
import java.time.LocalDateTime;
@Schema(description = "管理后台 - 用户汇报关系信息 Response VO")
@Schema(description = "管理后台 - 用户管理链路信息 Response VO")
@Data
@ExcelIgnoreUnannotated
public class UserManagementRelationRespVO {

View File

@@ -6,7 +6,7 @@ import lombok.Data;
import java.time.LocalDateTime;
@Schema(description = "管理后台 - 用户汇报关系创建/修改 Request VO")
@Schema(description = "管理后台 - 用户管理链路创建/修改 Request VO")
@Data
public class UserManagementRelationSaveReqVO {

View File

@@ -6,14 +6,14 @@ import lombok.Data;
import java.util.List;
/**
* 用户汇报关系树形 Response VO
* 用户管理链路树形 Response VO
*
* 用于前端树形控件展示用户的上下级层级关系
* 包含关系记录的主键ID便于前端执行删除和更新操作
*
* @author hongawen
*/
@Schema(description = "管理后台 - 用户汇报关系树形 Response VO")
@Schema(description = "管理后台 - 用户管理链路树形 Response VO")
@Data
public class UserManagementRelationTreeRespVO {

View File

@@ -9,7 +9,7 @@ import lombok.EqualsAndHashCode;
import java.time.LocalDateTime;
/**
* 用户汇报关系表 DO
* 用户管理链路表 DO
*
* 用于存储用户之间的直属上下级管理关系
* 每条记录代表一个管理者与被管理者之间的关系

View File

@@ -10,9 +10,9 @@ import java.time.LocalDateTime;
import java.util.List;
/**
* 用户汇报关系 Mapper 接口
* 用户管理链路 Mapper 接口
*
* 提供用户汇报关系表的数据访问操作
* 提供用户管理链路表的数据访问操作
* 继承 BaseMapperX 获得基础的 CRUD 功能
*
* @author hongawen
@@ -21,7 +21,7 @@ import java.util.List;
public interface UserManagementRelationMapper extends BaseMapperX<UserManagementRelationDO> {
/**
* 根据查询条件查询用户汇报关系列表
* 根据查询条件查询用户管理链路列表
*
* 支持的查询条件:
* - managerUserId管理者用户ID精确匹配
@@ -30,7 +30,7 @@ public interface UserManagementRelationMapper extends BaseMapperX<UserManagement
* 排序规则按主键ID降序排列
*
* @param reqVO 查询条件VO
* @return 用户汇报关系DO列表
* @return 用户管理链路DO列表
*/
default List<UserManagementRelationDO> selectList(UserManagementRelationQueryReqVO reqVO) {
LocalDateTime now = LocalDateTime.now();
@@ -50,11 +50,11 @@ public interface UserManagementRelationMapper extends BaseMapperX<UserManagement
/**
* 根据管理者用户ID查询其下属关系列表
*
* 查询指定用户作为管理者时的所有汇报关系记录
* 查询指定用户作为管理者时的所有管理链路记录
* 用于获取某个用户的所有直接下属
*
* @param managerUserId 管理者用户ID
* @return 用户汇报关系DO列表
* @return 用户管理链路DO列表
*/
default List<UserManagementRelationDO> selectListByManagerUserId(Long managerUserId) {
return selectList(UserManagementRelationDO::getManagerUserId, managerUserId);
@@ -63,11 +63,11 @@ public interface UserManagementRelationMapper extends BaseMapperX<UserManagement
/**
* 根据被管理者用户ID查询其上级关系列表
*
* 查询指定用户作为被管理者时的所有汇报关系记录
* 查询指定用户作为被管理者时的所有管理链路记录
* 用于获取某个用户的所有直接上级
*
* @param subordinateUserId 被管理者用户ID
* @return 用户汇报关系DO列表
* @return 用户管理链路DO列表
*/
default List<UserManagementRelationDO> selectListBySubordinateUserId(Long subordinateUserId) {
return selectList(UserManagementRelationDO::getSubordinateUserId, subordinateUserId);

View File

@@ -197,7 +197,7 @@ public class AdminUserServiceImpl implements AdminUserService {
// 1. 校验用户存在
AdminUserDO user = validateUserExists(id);
// 2. 删除用户及其关联数据
// 2.1 删除前判断汇报关系表是否还在用该用户
// 2.1 删除前判断管理链路表是否还在用该用户
Boolean res = userManagementRelationService.hasRelation(id);
if (res) {
throw exception(USER_MANAGEMENT_RELATION_EXISTS);
@@ -213,7 +213,7 @@ public class AdminUserServiceImpl implements AdminUserService {
@Override
@Transactional(rollbackFor = Exception.class)
public void deleteUserList(List<Long> ids) {
//批量删除前查看是否汇报关系表还在使用该用户
//批量删除前查看是否管理链路表还在使用该用户
for (Long id : ids){
Boolean res = userManagementRelationService.hasRelation(id);
if (res) {

View File

@@ -13,14 +13,14 @@ import java.util.List;
import java.util.Map;
/**
* 用户汇报关系 Service 接口
* 用户管理链路 Service 接口
*
* @author dklive
*/
public interface UserManagementRelationService {
/**
* 创建用户汇报关系
* 创建用户管理链路
*
* @param createReqVO 关系信息
* @return 关系编号
@@ -28,82 +28,82 @@ public interface UserManagementRelationService {
Long createRelation(UserManagementRelationSaveReqVO createReqVO);
/**
* 更新用户汇报关系
* 更新用户管理链路
*
* @param updateReqVO 关系信息
*/
void updateRelation(UserManagementRelationSaveReqVO updateReqVO);
/**
* 删除用户汇报关系
* 删除用户管理链路
*
* @param id 关系编号
*/
void deleteRelation(Long id);
/**
* 批量删除用户汇报关系
* 批量删除用户管理链路
*
* @param ids 关系编号数组
*/
void deleteRelationList(List<Long> ids);
/**
* 获得用户汇报关系
* 获得用户管理链路
*
* @param id 关系编号
* @return 用户汇报关系
* @return 用户管理链路
*/
UserManagementRelationDO getRelation(Long id);
/**
* 获得用户汇报关系列表
* 获得用户管理链路列表
*
* @param ids 关系编号数组
* @return 用户汇报关系列表
* @return 用户管理链路列表
*/
List<UserManagementRelationDO> getRelationList(Collection<Long> ids);
/**
* 获得用户汇报关系列表
* 获得用户管理链路列表
*
* @param reqVO 查询条件
* @return 用户汇报关系列表
* @return 用户管理链路列表
*/
List<UserManagementRelationTreeRespVO> getRelationQuery(UserManagementRelationQueryReqVO reqVO);
/**
* 根据管理者用户ID获得汇报关系列表
* 根据管理者用户ID获得管理链路列表
*
* @param managerUserId 管理者用户ID
* @return 汇报关系列表
* @return 管理链路列表
*/
List<UserManagementRelationDO> getRelationListByManagerUserId(Long managerUserId);
/**
* 根据被管理者用户ID获得汇报关系列表
* 根据被管理者用户ID获得管理链路列表
*
* @param subordinateUserId 被管理者用户ID
* @return 汇报关系列表
* @return 管理链路列表
*/
List<UserManagementRelationDO> getRelationListBySubordinateUserId(Long subordinateUserId);
/**
* 获得用户汇报关系树形结构
* 获得用户管理链路树形结构
*
* 构建用户上下级关系的树形结构,用于前端树形控件展示
* - 最高领导:没有上级,作为树的根节点
* - 基层员工没有下级children为空列表
*
* @return 用户汇报关系树形列表
* @return 用户管理链路树形列表
*/
List<UserManagementRelationTreeRespVO> getRelationTree(UserManagementRelationQueryReqVO reqVO);
/**
* 获得用户汇报关系 Map
* 获得用户管理链路 Map
*
* @param ids 关系编号数组
* @return 用户汇报关系 Map
* @return 用户管理链路 Map
*/
default Map<Long, UserManagementRelationDO> getRelationMap(Collection<Long> ids) {
if (CollUtil.isEmpty(ids)) {
@@ -113,10 +113,10 @@ public interface UserManagementRelationService {
}
/**
* 通过某个用户的id判断汇报关系表中是否有该用户的记录
* 通过某个用户的id判断管理链路表中是否有该用户的记录
* 判断原则:
* --管理者ID或被管理者ID有一个字段的值等于用户id且该记录没有被逻辑删除
* --则认为汇报关系表中还在使用该用户
* --则认为管理链路表中还在使用该用户
*
* @param userId 用户id
* @return true:有该用户的记录false:没有该用户的记录

View File

@@ -27,8 +27,8 @@ import static com.njcn.rdms.module.system.enums.ErrorCodeConstants.USER_MANAGEME
import static com.njcn.rdms.module.system.enums.ErrorCodeConstants.USER_MANAGEMENT_RELATION_NOT_FOUND;
/**
* 用户汇报关系 Service 实现类
* 提供用户汇报关系的增删改查功能,以及树形结构构建功能
* 用户管理链路 Service 实现类
* 提供用户管理链路的增删改查功能,以及树形结构构建功能
* 树形结构用于前端展示用户的上下级层级关系
* 业务规则:
* 1. 一个用户只能有一个直属上级
@@ -64,7 +64,7 @@ public class UserManagementRelationServiceImpl implements UserManagementRelation
}
/**
* 创建用户汇报关系
* 创建用户管理链路
* 业务逻辑:
* 1. 校验被管理者是否已有直属上级(一个用户只能有一个直属上级)
* 2. 插入关系记录
@@ -81,7 +81,7 @@ public class UserManagementRelationServiceImpl implements UserManagementRelation
}
/**
* 更新用户汇报关系
* 更新用户管理链路
* 业务逻辑:
* 1. 校验关系记录是否存在
* 2. 校验被管理者是否已有其他直属上级(一个用户只能有一个直属上级)
@@ -97,7 +97,7 @@ public class UserManagementRelationServiceImpl implements UserManagementRelation
}
/**
* 删除用户汇报关系
* 删除用户管理链路
* 业务逻辑:
* 1. 校验关系记录是否存在
* 2. 根据主键ID删除关系记录
@@ -111,7 +111,7 @@ public class UserManagementRelationServiceImpl implements UserManagementRelation
}
/**
* 批量删除用户汇报关系
* 批量删除用户管理链路
* 业务逻辑:
* 根据主键ID列表批量删除关系记录
*
@@ -186,10 +186,10 @@ public class UserManagementRelationServiceImpl implements UserManagementRelation
}
/**
* 根据主键ID获取用户汇报关系
* 根据主键ID获取用户管理链路
*
* @param id 关系记录主键ID
* @return 用户汇报关系DO
* @return 用户管理链路DO
*/
@Override
public UserManagementRelationDO getRelation(Long id) {
@@ -199,10 +199,10 @@ public class UserManagementRelationServiceImpl implements UserManagementRelation
}
/**
* 根据主键ID列表获取用户汇报关系列表
* 根据主键ID列表获取用户管理链路列表
*
* @param ids 关系记录主键ID列表
* @return 用户汇报关系DO列表
* @return 用户管理链路DO列表
*/
@Override
public List<UserManagementRelationDO> getRelationList(Collection<Long> ids) {
@@ -215,7 +215,7 @@ public class UserManagementRelationServiceImpl implements UserManagementRelation
}
/**
* 根据查询条件获取用户汇报关系树形结构
* 根据查询条件获取用户管理链路树形结构
* 业务逻辑:
* 1. 构建树形结构上下文(包含所有基础数据)
* 2. 根据查询条件确定目标用户IDsubordinateUserId优先于managerUserId
@@ -232,7 +232,7 @@ public class UserManagementRelationServiceImpl implements UserManagementRelation
* - managerUserId不为null构建以该用户为根节点的完整下级树
*
* @param reqVO 查询条件VO包含subordinateUserId或managerUserId
* @return 用户汇报关系树形结构列表
* @return 用户管理链路树形结构列表
*/
@Override
public List<UserManagementRelationTreeRespVO> getRelationQuery(UserManagementRelationQueryReqVO reqVO) {
@@ -253,7 +253,7 @@ public class UserManagementRelationServiceImpl implements UserManagementRelation
* 根据管理者用户ID获取其下属关系列表
*
* @param managerUserId 管理者用户ID
* @return 用户汇报关系DO列表
* @return 用户管理链路DO列表
*/
@Override
public List<UserManagementRelationDO> getRelationListByManagerUserId(Long managerUserId) {
@@ -265,7 +265,7 @@ public class UserManagementRelationServiceImpl implements UserManagementRelation
* 注意:由于一个用户只能有一个直属上级,此方法最多返回一条记录
*
* @param subordinateUserId 被管理者用户ID
* @return 用户汇报关系DO列表
* @return 用户管理链路DO列表
*/
@Override
public List<UserManagementRelationDO> getRelationListBySubordinateUserId(Long subordinateUserId) {
@@ -273,7 +273,7 @@ public class UserManagementRelationServiceImpl implements UserManagementRelation
}
/**
* 获取用户汇报关系树形结构
* 获取用户管理链路树形结构
* 业务逻辑:
* 1. 构建树形结构上下文(包含所有基础数据)
* 2. 找出所有根节点(没有上级的用户,即最高领导;也包括自己管理自己的用户)
@@ -285,7 +285,7 @@ public class UserManagementRelationServiceImpl implements UserManagementRelation
* - 基层员工没有下级children为空列表
* - 空数据:返回空列表
*
* @return 用户汇报关系树形结构列表
* @return 用户管理链路树形结构列表
*/
@Override
public List<UserManagementRelationTreeRespVO> getRelationTree(UserManagementRelationQueryReqVO reqVO) {
@@ -297,10 +297,10 @@ public class UserManagementRelationServiceImpl implements UserManagementRelation
}
/**
* 通过某个用户的id判断汇报关系表中是否有该用户的记录
* 通过某个用户的id判断管理链路表中是否有该用户的记录
* 判断原则:
* --管理者ID或被管理者ID有一个字段的值等于用户id且该记录没有被逻辑删除
* --则认为汇报关系表中还在使用该用户
* --则认为管理链路表中还在使用该用户
*
* @param userId 用户id
* @return true:有该用户的记录false:没有该用户的记录