UserService 删除用户查询权限 deleteUserPermission分析
好的,根据您提供的 userService.docx
文档内容,我提取了 deleteUserPermission
方法,并对其进行详细分析。以下是提取的方法及其相关部分:
提取的 deleteUserPermission
方法
@Override
@Transactional(rollbackFor = Exception.class)
public DelUserPermissionResponse deleteUserPermission(DelUserPermissionRequest request) {
String userName = request.getUserName();
List<String> indexPatternNameList = request.getIndexPatternNameList();
DelUserPermissionResponse response = new DelUserPermissionResponse();
if (StringUtils.isEmpty(userName) || CollectionUtils.isEmpty(indexPatternNameList)) {
log.error("删除用户关联索引请求参数为空");
throw new TitanException("所传参数为空!");
}
List<Long> indexIdList = indexPatternService.getIndexPatternIdByNameList(indexPatternNameList);
userPermissionService.deleteUserPermissionForUser(request.getUserName(), indexIdList);
RespUtils.setSuccess(response);
return response;
}
方法分析
输入参数
DelUserPermissionRequest request
:包含请求参数,主要包括userName
(用户名)和indexPatternNameList
(索引模式名称列表)。
输出参数
DelUserPermissionResponse response
:包含操作结果的响应对象。
方法步骤
-
创建响应对象:
DelUserPermissionResponse response = new DelUserPermissionResponse();
-
参数校验:
if (StringUtils.isEmpty(userName) || CollectionUtils.isEmpty(indexPatternNameList)) { log.error("删除用户关联索引请求参数为空"); throw new TitanException("所传参数为空!"); }
- 检查
userName
是否为空字符串。 - 检查
indexPatternNameList
是否为空或为空列表,如果为空则抛出异常。
- 检查
-
获取索引模式ID列表:
List<Long> indexIdList = indexPatternService.getIndexPatternIdByNameList(indexPatternNameList);
- 调用
indexPatternService.getIndexPatternIdByNameList
方法获取索引模式ID列表。
- 调用
-
删除用户权限:
userPermissionService.deleteUserPermissionForUser(request.getUserName(), indexIdList);
- 调用
userPermissionService.deleteUserPermissionForUser
方法删除用户对指定索引模式的权限。
- 调用
-
设置响应对象:
RespUtils.setSuccess(response);
- 设置响应对象的操作成功标志。
-
返回响应对象:
return response;
详细分析
1. 参数校验
- 用户名校验:确保
userName
不为空字符串。 - 索引模式名称列表校验:确保
indexPatternNameList
不为空且不为空列表。
2. 获取索引模式ID列表
- 调用服务方法:调用
indexPatternService.getIndexPatternIdByNameList
方法获取索引模式ID列表。
3. 删除用户权限
- 调用服务方法:调用
userPermissionService.deleteUserPermissionForUser
方法删除用户对指定索引模式的权限。
4. 设置响应对象
- 设置成功标志:设置响应对象的操作成功标志。
5. 返回响应对象
- 返回结果:返回包含操作结果的响应对象。
总结
deleteUserPermission
方法的主要功能是删除用户对指定索引模式的权限。具体步骤包括:
- 参数校验:确保请求参数不为空。
- 获取索引模式ID列表:调用服务方法获取索引模式ID列表。
- 删除用户权限:调用服务方法删除用户对指定索引模式的权限。
- 设置响应对象:设置响应对象的操作成功标志。
- 返回响应对象:返回包含操作结果的响应对象。
通过这个方法,可以有效地管理用户的权限,确保用户能够正确地访问所需的索引和资源。