Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
K
know-base
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
张京坤
know-base
Commits
99781377
提交
99781377
authored
1月 16, 2024
作者:
obcy
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
优化
上级
a288f6f9
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
26 行增加
和
28 行删除
+26
-28
KbKnowledgeProjectServiceImpl.java
.../knowbase/service/impl/KbKnowledgeProjectServiceImpl.java
+26
-28
没有找到文件。
src/main/java/com/zzsn/knowbase/service/impl/KbKnowledgeProjectServiceImpl.java
浏览文件 @
99781377
...
...
@@ -2,10 +2,8 @@ package com.zzsn.knowbase.service.impl;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.StrUtil
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.zzsn.knowbase.entity.*
;
...
...
@@ -262,34 +260,34 @@ public class KbKnowledgeProjectServiceImpl extends ServiceImpl<KbKnowledgeProjec
.
in
(
KbKnowledgeProject:
:
getId
,
hasViewId
));
}
//查询用户在每个节点对应的权限
// Map<Long, KbRolePermissionMap> rolePermissionMap = rolePermissionMapService.list().stream().collect(Collectors.toMap(KbRolePermissionMap::getId, e -> e));
// Map<String, KbPermissions> permissions = permissionsService.list().stream().collect(Collectors.toMap(KbPermissions::getId, e -> e));
// List<String> ids = allknowProjectPermissId.stream().map(KbKnowledgeProject::getId).collect(Collectors.toList());
Map
<
String
,
KbKnowledgeProject
>
collect
=
allknowProjectPermissId
.
stream
().
collect
(
Collectors
.
toMap
(
KbKnowledgeProject:
:
getId
,
e
->
e
));
// List<KbUserRoleMap> allIdsRoles = kbUserRoleMapService.list(Wrappers.<KbUserRoleMap>lambdaQuery().eq(KbUserRoleMap::getUserId, userId).in(KbUserRoleMap::getKnowledgeProjectId, ids));
//// Map<String, KbUserRoleMap> collect1 = allIdsRoles.stream().collect(Collectors.toMap(KbUserRoleMap::getKnowledgeProjectId, e -> e));
// Map<String, List<KbUserRoleMap>> collect1 = allIdsRoles.stream().collect(Collectors.groupingBy(KbUserRoleMap::getKnowledgeProjectId));
// Map<String, List<KbRole>> collect2 = new HashMap<>();
// collect1.forEach((k,v)->{
// List<String> collect3 = v.stream().map(KbUserRoleMap::getRoleId).collect(Collectors.toList());
// });
// List<KbRolePermissionMap> permissionMaps = rolePermissionMapService.list(Wrappers.<KbRolePermissionMap>lambdaQuery().in(KbRolePermissionMap::getRoleId, Arrays.asList(one.getRoleId().split(","))));
// List<KbPermissions> permissions = permissionsService.list(Wrappers.<KbPermissions>lambdaQuery().in(KbPermissions::getId, permissionMaps.stream().map(KbRolePermissionMap::getPermissionId).collect(Collectors.toList())));
List
<
UserKnowPermissionVo
>
res
=
authorizedUserMapper
.
getUserPermission
(
userInfo
.
getId
());
kbKnowledgeProjects
.
forEach
(
e
->{
KbKnowledgeProject
kbKnowledgeProject
=
collect
.
get
(
e
.
getId
());
if
(
ObjectUtil
.
isNotEmpty
(
kbKnowledgeProject
)){
QueryWrapper
<
KbAuthorizedUser
>
query
=
new
QueryWrapper
<>();
query
.
eq
(
"a.user_id"
,
userId
);
query
.
eq
(
"a.knowledge_project_id"
,
e
.
getId
());
e
.
setRoles
(
userRoleMapMapper
.
getRoles
(
query
));
}
if
(
CollectionUtil
.
isNotEmpty
(
e
.
getRoles
())){
List
<
KbRolePermissionMap
>
permissionMaps
=
rolePermissionMapService
.
list
(
Wrappers
.<
KbRolePermissionMap
>
lambdaQuery
().
in
(
KbRolePermissionMap:
:
getRoleId
,
e
.
getRoles
().
stream
().
map
(
KbRole:
:
getId
).
collect
(
Collectors
.
toList
())));
List
<
KbPermissions
>
permissions
=
permissionsService
.
list
(
Wrappers
.<
KbPermissions
>
lambdaQuery
().
in
(
KbPermissions:
:
getId
,
permissionMaps
.
stream
().
map
(
KbRolePermissionMap:
:
getPermissionId
).
collect
(
Collectors
.
toList
())));
e
.
setPermissions
(
permissions
);
List
<
UserKnowPermissionVo
>
collect1
=
res
.
stream
().
filter
(
f
->
f
.
getKnowledgeProjectId
().
equals
(
e
.
getId
())).
collect
(
Collectors
.
toList
());
if
(
CollectionUtil
.
isNotEmpty
(
collect1
)){
Map
<
String
,
List
<
UserKnowPermissionVo
>>
collect2
=
collect1
.
stream
().
collect
(
Collectors
.
groupingBy
(
UserKnowPermissionVo:
:
getRoleId
));
List
<
KbRole
>
roles
=
new
ArrayList
<>();
List
<
KbPermissions
>
permissionsList
=
new
ArrayList
<>();
collect2
.
forEach
((
key
,
v
)->{
KbRole
kbRole
=
new
KbRole
();
kbRole
.
setRoleCode
(
v
.
get
(
0
).
getRoleCode
());
kbRole
.
setRoleName
(
v
.
get
(
0
).
getRoleName
());
kbRole
.
setId
(
key
);
roles
.
add
(
kbRole
);
v
.
forEach
(
p
->
{
KbPermissions
kbPermission
=
new
KbPermissions
();
kbPermission
.
setId
(
p
.
getPermissionId
());
kbPermission
.
setPermissionCode
(
p
.
getPermissionCode
());
kbPermission
.
setPermissionName
(
p
.
getPermissionName
());
permissionsList
.
add
(
kbPermission
);
});
});
e
.
setRoles
(
roles
);
e
.
setPermissions
(
permissionsList
);
}
});
return
Result
.
OK
(
kbKnowledgeProjects
);
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论