提交 606969d5 作者: obcy

fixbug

上级 601632f6
...@@ -195,29 +195,35 @@ public class KbAuthorizedUserServiceImpl extends ServiceImpl<KbAuthorizedUserMap ...@@ -195,29 +195,35 @@ public class KbAuthorizedUserServiceImpl extends ServiceImpl<KbAuthorizedUserMap
kbUserRoleMapService.saveBatch(maps); kbUserRoleMapService.saveBatch(maps);
authuserKnowledgeprojectMapService.saveBatch(userknows); authuserKnowledgeprojectMapService.saveBatch(userknows);
}else { }else {
List<String> collect1 = notExist.stream().map(KbAuthorizedUser::getId).collect(Collectors.toList());
authorizedUsers.forEach(authorizedUser->{ authorizedUsers.forEach(authorizedUser->{
/**插入用户知识库权限关系表*/
if (StringUtils.isNotBlank(authorizedUser.getKnowledgeProjectId())){
KbAuthuserKnowledgeprojectMap kbAuthuserKnowledgeprojectMap = new KbAuthuserKnowledgeprojectMap();
kbAuthuserKnowledgeprojectMap.setAuthUserId(authorizedUser.getId());
kbAuthuserKnowledgeprojectMap.setKnowledgeProjectId(authorizedUser.getKnowledgeProjectId());
authuserKnowledgeprojectMapService.save(kbAuthuserKnowledgeprojectMap);
if (collect1.contains(authorizedUser.getId())) {
/**插入用户知识库权限关系表*/
if (StringUtils.isNotBlank(authorizedUser.getKnowledgeProjectId())){
KbAuthuserKnowledgeprojectMap kbAuthuserKnowledgeprojectMap = new KbAuthuserKnowledgeprojectMap();
kbAuthuserKnowledgeprojectMap.setAuthUserId(authorizedUser.getId());
kbAuthuserKnowledgeprojectMap.setKnowledgeProjectId(authorizedUser.getKnowledgeProjectId());
kbAuthuserKnowledgeprojectMap.setSign(0);
authuserKnowledgeprojectMapService.save(kbAuthuserKnowledgeprojectMap);
}
/**插入用户角色关系表*/
if (StringUtils.isNotBlank(authorizedUser.getRoleId())){
String roleId = authorizedUser.getRoleId();
List<String> list = Arrays.asList(roleId.split(","));
List<KbUserRoleMap> maps = new ArrayList<>();
list.forEach(e->{
KbUserRoleMap kbUserRoleMap = new KbUserRoleMap();
kbUserRoleMap.setUserId(authorizedUser.getId());
kbUserRoleMap.setRoleId(e);
kbUserRoleMap.setKnowledgeProjectId(authorizedUser.getKnowledgeProjectId());
maps.add(kbUserRoleMap);
});
kbUserRoleMapService.saveBatch(maps);
}
} }
/**插入用户角色关系表*/
if (StringUtils.isNotBlank(authorizedUser.getRoleId())){
String roleId = authorizedUser.getRoleId();
List<String> list = Arrays.asList(roleId.split(","));
List<KbUserRoleMap> maps = new ArrayList<>();
list.forEach(e->{
KbUserRoleMap kbUserRoleMap = new KbUserRoleMap();
kbUserRoleMap.setUserId(authorizedUser.getId());
kbUserRoleMap.setRoleId(e);
kbUserRoleMap.setKnowledgeProjectId(authorizedUser.getKnowledgeProjectId());
maps.add(kbUserRoleMap);
});
kbUserRoleMapService.saveBatch(maps);
}
}); });
} }
...@@ -228,21 +234,40 @@ public class KbAuthorizedUserServiceImpl extends ServiceImpl<KbAuthorizedUserMap ...@@ -228,21 +234,40 @@ public class KbAuthorizedUserServiceImpl extends ServiceImpl<KbAuthorizedUserMap
@Override @Override
@Transactional @Transactional
public Result<?> delById(String id, String knowledgeProjectId) { public Result<?> delById(String id, String knowledgeProjectId) {
//移除知识库分类节点下所有的子节点下的这个用户
List<KbKnowledgeProject> knowPros = knowledgeProjectService.list(Wrappers.<KbKnowledgeProject>lambdaQuery() if (!"0".equals(knowledgeProjectId)) {
.like(KbKnowledgeProject::getFullPath, knowledgeProjectId) //移除知识库分类节点下所有的子节点下的这个用户
); List<KbKnowledgeProject> knowPros = knowledgeProjectService.list(Wrappers.<KbKnowledgeProject>lambdaQuery()
List<String> knowProIds = knowPros.stream().map(KbKnowledgeProject::getId).collect(Collectors.toList()); .like(KbKnowledgeProject::getFullPath, knowledgeProjectId)
kbUserRoleMapService.remove(Wrappers.<KbUserRoleMap>lambdaQuery() );
.eq(KbUserRoleMap::getUserId,id) List<String> knowProIds = knowPros.stream().map(KbKnowledgeProject::getId).collect(Collectors.toList());
.in(KbUserRoleMap::getKnowledgeProjectId,knowProIds) kbUserRoleMapService.remove(Wrappers.<KbUserRoleMap>lambdaQuery()
); .eq(KbUserRoleMap::getUserId,id)
authuserKnowledgeprojectMapService.remove(Wrappers.<KbAuthuserKnowledgeprojectMap>lambdaQuery() .in(KbUserRoleMap::getKnowledgeProjectId,knowProIds)
.eq(KbAuthuserKnowledgeprojectMap::getAuthUserId,id) );
.in(KbAuthuserKnowledgeprojectMap::getKnowledgeProjectId,knowProIds)); authuserKnowledgeprojectMapService.remove(Wrappers.<KbAuthuserKnowledgeprojectMap>lambdaQuery()
kbAuthuserKnowMapService.remove(Wrappers.<KbAuthuserKnowMap>lambdaQuery() .eq(KbAuthuserKnowledgeprojectMap::getAuthUserId,id)
.eq(KbAuthuserKnowMap::getAuthUserId,id) .in(KbAuthuserKnowledgeprojectMap::getKnowledgeProjectId,knowProIds));
.in(KbAuthuserKnowMap::getKnowledgeProjectId,knowProIds)); kbAuthuserKnowMapService.remove(Wrappers.<KbAuthuserKnowMap>lambdaQuery()
.eq(KbAuthuserKnowMap::getAuthUserId,id)
.in(KbAuthuserKnowMap::getKnowledgeProjectId,knowProIds));
//判断用户在有没有其他节点的权限,如果都没有了,就移除这个授权用户
List<KbAuthuserKnowledgeprojectMap> list = authuserKnowledgeprojectMapService.list(Wrappers.<KbAuthuserKnowledgeprojectMap>lambdaQuery().eq(KbAuthuserKnowledgeprojectMap::getAuthUserId, id));
if (CollectionUtil.isEmpty(list)){
super.remove(Wrappers.<KbAuthorizedUser>lambdaQuery().eq(KbAuthorizedUser::getId,id));
}
}else {
super.remove(Wrappers.<KbAuthorizedUser>lambdaQuery().eq(KbAuthorizedUser::getId,id));
kbUserRoleMapService.remove(Wrappers.<KbUserRoleMap>lambdaQuery()
.eq(KbUserRoleMap::getUserId,id)
.eq(KbUserRoleMap::getKnowledgeProjectId,"0")
);
authuserKnowledgeprojectMapService.remove(Wrappers.<KbAuthuserKnowledgeprojectMap>lambdaQuery()
.eq(KbAuthuserKnowledgeprojectMap::getAuthUserId,id)
.eq(KbAuthuserKnowledgeprojectMap::getKnowledgeProjectId,"0"));
}
return Result.OK(); return Result.OK();
} }
...@@ -301,12 +326,16 @@ public class KbAuthorizedUserServiceImpl extends ServiceImpl<KbAuthorizedUserMap ...@@ -301,12 +326,16 @@ public class KbAuthorizedUserServiceImpl extends ServiceImpl<KbAuthorizedUserMap
if (ObjectUtil.isNotEmpty(user.getPageSize())) { if (ObjectUtil.isNotEmpty(user.getPageSize())) {
pageSize = user.getPageSize(); pageSize = user.getPageSize();
} }
//查询出已经有超级管理员权限的用户,做排除
List<KbUserRoleMap> list = kbUserRoleMapService.list(Wrappers.<KbUserRoleMap>lambdaQuery().eq(KbUserRoleMap::getKnowledgeProjectId, "0"));
List<String> collect = list.stream().map(KbUserRoleMap::getUserId).collect(Collectors.toList());
Page page = new Page(pageNum,pageSize); Page page = new Page(pageNum,pageSize);
return Result.OK(super.page(page,Wrappers.<KbAuthorizedUser>lambdaQuery() return Result.OK(super.page(page,Wrappers.<KbAuthorizedUser>lambdaQuery()
.like(StringUtils.isNotBlank(user.getName()),KbAuthorizedUser::getName,user.getName()) .like(StringUtils.isNotBlank(user.getName()),KbAuthorizedUser::getName,user.getName())
.eq(StringUtils.isNotBlank(user.getUsername()),KbAuthorizedUser::getUsername,user.getUsername()) .eq(StringUtils.isNotBlank(user.getUsername()),KbAuthorizedUser::getUsername,user.getUsername())
.eq(StringUtils.isNotBlank(user.getOrgId()),KbAuthorizedUser::getOrgId,user.getOrgId()) .eq(StringUtils.isNotBlank(user.getOrgId()),KbAuthorizedUser::getOrgId,user.getOrgId())
.eq(StringUtils.isNotBlank(user.getOrgName()),KbAuthorizedUser::getOrgName,user.getOrgName()) .eq(StringUtils.isNotBlank(user.getOrgName()),KbAuthorizedUser::getOrgName,user.getOrgName())
.notIn(CollectionUtil.isNotEmpty(collect),KbAuthorizedUser::getId,collect)
)); ));
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论