Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
K
know-base
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
张京坤
know-base
Commits
11112aa9
提交
11112aa9
authored
1月 12, 2024
作者:
obcy
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
编辑知识库分类下角色权限
上级
80e3868b
隐藏空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
45 行增加
和
9 行删除
+45
-9
KbAuthuserKnowledgeprojectMap.java
...m/zzsn/knowbase/entity/KbAuthuserKnowledgeprojectMap.java
+1
-1
KbAuthorizedUserServiceImpl.java
...sn/knowbase/service/impl/KbAuthorizedUserServiceImpl.java
+44
-8
没有找到文件。
src/main/java/com/zzsn/knowbase/entity/KbAuthuserKnowledgeprojectMap.java
浏览文件 @
11112aa9
...
...
@@ -26,7 +26,7 @@ public class KbAuthuserKnowledgeprojectMap extends Model<KbAuthuserKnowledgeproj
private
static
final
long
serialVersionUID
=
1L
;
@TableId
(
value
=
"id"
,
type
=
IdType
.
ASSIGN_ID
)
private
Lo
ng
id
;
private
Stri
ng
id
;
@TableField
(
"auth_user_id"
)
private
String
authUserId
;
...
...
src/main/java/com/zzsn/knowbase/service/impl/KbAuthorizedUserServiceImpl.java
浏览文件 @
11112aa9
...
...
@@ -125,6 +125,7 @@ public class KbAuthorizedUserServiceImpl extends ServiceImpl<KbAuthorizedUserMap
if
(
CollectionUtil
.
isNotEmpty
(
kbAuthorizedUsers
)){
kbAuthorizedUsers
.
forEach
(
e
->{
e
.
setRoleId
(
reqUsersMap
.
get
(
e
.
getUserId
()).
get
(
0
).
getRoleId
());
e
.
setKnowledgeProjectId
(
reqUsersMap
.
get
(
e
.
getUserId
()).
get
(
0
).
getKnowledgeProjectId
());
});
authorizedUsers
.
addAll
(
kbAuthorizedUsers
);
}
...
...
@@ -136,13 +137,31 @@ public class KbAuthorizedUserServiceImpl extends ServiceImpl<KbAuthorizedUserMap
//查询授权节点和其子节点,一起授权
List
<
KbKnowledgeProject
>
projectTypes
=
knowledgeProjectService
.
list
(
Wrappers
.<
KbKnowledgeProject
>
lambdaQuery
().
like
(
KbKnowledgeProject:
:
getFullPath
,
kbAuthorizedUser
.
getKnowledgeProjectId
()));
//去除已经受过权的节点
List
<
String
>
thisBanth
=
authorizedUsers
.
stream
().
map
(
KbAuthorizedUser:
:
getId
).
collect
(
Collectors
.
toList
());
List
<
KbAuthuserKnowledgeprojectMap
>
list1
=
authuserKnowledgeprojectMapService
.
list
(
Wrappers
.<
KbAuthuserKnowledgeprojectMap
>
lambdaQuery
().
in
(
KbAuthuserKnowledgeprojectMap:
:
getAuthUserId
,
thisBanth
));
Map
<
String
,
List
<
KbAuthuserKnowledgeprojectMap
>>
collect1Map
=
list1
.
stream
().
collect
(
Collectors
.
groupingBy
(
KbAuthuserKnowledgeprojectMap:
:
getAuthUserId
));
List
<
KbUserRoleMap
>
maps
=
new
ArrayList
<>();
List
<
KbAuthuserKnowledgeprojectMap
>
userknows
=
new
ArrayList
<>();
authorizedUsers
.
forEach
(
authorizedUser
->{
List
<
KbKnowledgeProject
>
projectTypesFi
=
new
ArrayList
<>();
//此用户已经受过权限的知识库分类
List
<
KbAuthuserKnowledgeprojectMap
>
kbAuthuserKnowledgeprojectMaps
=
collect1Map
.
get
(
authorizedUser
.
getId
());
if
(
CollectionUtil
.
isNotEmpty
(
kbAuthuserKnowledgeprojectMaps
)){
List
<
String
>
collect1
=
kbAuthuserKnowledgeprojectMaps
.
stream
().
map
(
KbAuthuserKnowledgeprojectMap:
:
getKnowledgeProjectId
).
collect
(
Collectors
.
toList
());
projectTypesFi
=
projectTypes
.
stream
().
filter
(
f
->
!
collect1
.
contains
(
f
.
getId
())).
collect
(
Collectors
.
toList
());
}
else
{
projectTypesFi
=
projectTypes
;
}
/**插入用户知识库分类权限关系表*/
if
(
CollectionUtil
.
isNotEmpty
(
projectTypes
)){
projectTypes
.
forEach
(
e
->
{
if
(
CollectionUtil
.
isNotEmpty
(
projectTypes
Fi
)){
projectTypes
Fi
.
forEach
(
e
->
{
KbAuthuserKnowledgeprojectMap
kbAuthuserKnowledgeprojectMap
=
new
KbAuthuserKnowledgeprojectMap
();
kbAuthuserKnowledgeprojectMap
.
setAuthUserId
(
authorizedUser
.
getId
());
kbAuthuserKnowledgeprojectMap
.
setKnowledgeProjectId
(
e
.
getId
());
...
...
@@ -164,7 +183,6 @@ public class KbAuthorizedUserServiceImpl extends ServiceImpl<KbAuthorizedUserMap
}
});
}
});
...
...
@@ -206,20 +224,36 @@ public class KbAuthorizedUserServiceImpl extends ServiceImpl<KbAuthorizedUserMap
@Transactional
public
Result
<?>
edit
(
KbAuthorizedUser
authorizedUser
)
{
String
newRole
=
authorizedUser
.
getRoleId
();
String
knowProId
=
authorizedUser
.
getKnowledgeProjectId
();
authorizedUser
.
setUpdateTime
(
new
Date
());
super
.
updateById
(
authorizedUser
);
/**修改用户角色关系表*/
if
(
StringUtils
.
isNotBlank
(
newRole
)){
//所编辑知识库分类节点下所有的子节点
List
<
KbKnowledgeProject
>
knowPros
=
knowledgeProjectService
.
list
(
Wrappers
.<
KbKnowledgeProject
>
lambdaQuery
()
.
like
(
KbKnowledgeProject:
:
getFullPath
,
knowProId
)
);
kbUserRoleMapService
.
remove
(
Wrappers
.<
KbUserRoleMap
>
lambdaQuery
().
eq
(
KbUserRoleMap:
:
getUserId
,
authorizedUser
.
getId
()));
List
<
String
>
knowProIds
=
knowPros
.
stream
().
map
(
KbKnowledgeProject:
:
getId
).
collect
(
Collectors
.
toList
());
kbUserRoleMapService
.
remove
(
Wrappers
.<
KbUserRoleMap
>
lambdaQuery
()
.
eq
(
KbUserRoleMap:
:
getUserId
,
authorizedUser
.
getId
())
.
in
(
KbUserRoleMap:
:
getKnowledgeProjectId
,
knowProIds
)
);
List
<
String
>
list
=
Arrays
.
asList
(
newRole
.
split
(
","
));
List
<
KbUserRoleMap
>
maps
=
new
ArrayList
<>();
list
.
forEach
(
e
->{
KbUserRoleMap
kbUserRoleMap
=
new
KbUserRoleMap
();
kbUserRoleMap
.
setUserId
(
authorizedUser
.
getId
());
kbUserRoleMap
.
setRoleId
(
e
);
maps
.
add
(
kbUserRoleMap
);
knowProIds
.
forEach
(
ee
->{
KbUserRoleMap
kbUserRoleMap
=
new
KbUserRoleMap
();
kbUserRoleMap
.
setUserId
(
authorizedUser
.
getId
());
kbUserRoleMap
.
setRoleId
(
e
);
kbUserRoleMap
.
setKnowledgeProjectId
(
ee
);
kbUserRoleMap
.
setCreateDate
(
new
Date
());
maps
.
add
(
kbUserRoleMap
);
});
});
kbUserRoleMapService
.
saveBatch
(
maps
);
...
...
@@ -227,6 +261,8 @@ public class KbAuthorizedUserServiceImpl extends ServiceImpl<KbAuthorizedUserMap
return
Result
.
OK
();
}
@Override
public
Result
<?>
lists
(
String
roleId
,
String
username
,
String
name
,
String
orgId
,
String
orgName
,
String
knowledgeProjectId
,
String
category
,
Integer
pageNum
,
Integer
pageSize
)
{
QueryWrapper
<
KbAuthorizedUser
>
query
=
new
QueryWrapper
<>();
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论