Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
K
know-base
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
张京坤
know-base
Commits
a3d3d1a9
提交
a3d3d1a9
authored
1月 22, 2024
作者:
obcy
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
添加授权用户批量编辑接口-添加用户资讯关系表权限字段
上级
dffdde67
显示空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
209 行增加
和
1 行删除
+209
-1
KbAuthorizedUserController.java
.../zzsn/knowbase/controller/KbAuthorizedUserController.java
+7
-0
KbAuthuserKnowMap.java
...main/java/com/zzsn/knowbase/entity/KbAuthuserKnowMap.java
+2
-0
KbRoleMapper.java
src/main/java/com/zzsn/knowbase/mapper/KbRoleMapper.java
+14
-0
KbAuthorizedUserService.java
...va/com/zzsn/knowbase/service/KbAuthorizedUserService.java
+3
-0
KbAuthorizedUserServiceImpl.java
...sn/knowbase/service/impl/KbAuthorizedUserServiceImpl.java
+110
-1
RolePermissonVo.java
src/main/java/com/zzsn/knowbase/vo/RolePermissonVo.java
+73
-0
没有找到文件。
src/main/java/com/zzsn/knowbase/controller/KbAuthorizedUserController.java
浏览文件 @
a3d3d1a9
...
...
@@ -58,6 +58,13 @@ public class KbAuthorizedUserController {
public
Result
<?>
edit
(
@RequestBody
KbAuthorizedUser
authorizedUser
){
return
authorizedUserService
.
edit
(
authorizedUser
);
}
/**
* 编辑授权用户
* */
@PostMapping
(
"/editBatch"
)
public
Result
<?>
editBatch
(
@RequestBody
List
<
KbAuthorizedUser
>
authorizedUsers
){
return
authorizedUserService
.
editBatch
(
authorizedUsers
);
}
/**
* 删除授权用户
...
...
src/main/java/com/zzsn/knowbase/entity/KbAuthuserKnowMap.java
浏览文件 @
a3d3d1a9
...
...
@@ -36,6 +36,8 @@ public class KbAuthuserKnowMap extends Model<KbAuthuserKnowMap> {
@TableField
(
"knowledge_project_id"
)
private
String
knowledgeProjectId
;
@TableField
(
"permisson_codes"
)
private
String
permissonCodes
;
@TableField
(
"create_date"
)
private
Date
createDate
;
...
...
src/main/java/com/zzsn/knowbase/mapper/KbRoleMapper.java
浏览文件 @
a3d3d1a9
package
com
.
zzsn
.
knowbase
.
mapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.toolkit.Constants
;
import
com.zzsn.knowbase.entity.KbAuthorizedUser
;
import
com.zzsn.knowbase.entity.KbRole
;
import
com.zzsn.knowbase.vo.RolePermissonVo
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Select
;
import
java.util.List
;
/**
* <p>
...
...
@@ -15,4 +23,10 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public
interface
KbRoleMapper
extends
BaseMapper
<
KbRole
>
{
@Select
(
"SELECT a.*,p.id as permission_id,p.permission_code,p.permission_name FROM kb_role a "
+
"LEFT JOIN kb_role_permission_map b ON a.id = b.role_id "
+
"LEFT JOIN kb_permissions p on p.id = b.permission_id "
+
"${ew.customSqlSegment}"
)
List
<
RolePermissonVo
>
getRolePermission
(
@Param
(
Constants
.
WRAPPER
)
QueryWrapper
<
KbAuthorizedUser
>
query
);
}
src/main/java/com/zzsn/knowbase/service/KbAuthorizedUserService.java
浏览文件 @
a3d3d1a9
...
...
@@ -47,4 +47,7 @@ public interface KbAuthorizedUserService extends IService<KbAuthorizedUser> {
Result
<?>
getAll
(
KbAuthorizedUser
user
);
Result
<?>
knowBelongWho
(
String
knowledgeProjectId
,
String
knowledgeId
);
Result
<?>
editBatch
(
List
<
KbAuthorizedUser
>
authorizedUsers
);
}
src/main/java/com/zzsn/knowbase/service/impl/KbAuthorizedUserServiceImpl.java
浏览文件 @
a3d3d1a9
...
...
@@ -13,10 +13,12 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.zzsn.knowbase.entity.*
;
import
com.zzsn.knowbase.mapper.KbAuthorizedUserMapper
;
import
com.zzsn.knowbase.mapper.KbRoleMapper
;
import
com.zzsn.knowbase.service.*
;
import
com.zzsn.knowbase.util.SpringContextUtils
;
import
com.zzsn.knowbase.vo.AddUserPermissKnowsVo
;
import
com.zzsn.knowbase.vo.Result
;
import
com.zzsn.knowbase.vo.RolePermissonVo
;
import
com.zzsn.knowbase.vo.UserInfoVo
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -55,6 +57,8 @@ public class KbAuthorizedUserServiceImpl extends ServiceImpl<KbAuthorizedUserMap
KbKnowledgeProjectService
knowledgeProjectService
;
@Autowired
KbAuthuserKnowMapService
kbAuthuserKnowMapService
;
@Autowired
KbRoleMapper
kbRoleMapper
;
/**
* 校验第三方用户接口地址
...
...
@@ -304,11 +308,14 @@ public class KbAuthorizedUserServiceImpl extends ServiceImpl<KbAuthorizedUserMap
});
return
Result
.
error
(
res
.
toString
());
}
//角色对应权限关系
List
<
RolePermissonVo
>
rolePermission
=
kbRoleMapper
.
getRolePermission
(
Wrappers
.
query
());
Map
<
String
,
List
<
RolePermissonVo
>>
collect
=
rolePermission
.
stream
().
collect
(
Collectors
.
groupingBy
(
RolePermissonVo:
:
getId
));
List
<
KbAuthuserKnowMap
>
saves
=
new
ArrayList
<>();
List
<
KbAuthuserKnowledgeprojectMap
>
saves1
=
new
ArrayList
<>();
authorizedUsers
.
forEach
(
user
->{
//第一次在这个节点添加资讯授权
if
(
CollectionUtil
.
isEmpty
(
listSign
))
{
KbAuthuserKnowledgeprojectMap
kbAuthuserKnowledgeprojectMap
=
new
KbAuthuserKnowledgeprojectMap
();
...
...
@@ -318,17 +325,31 @@ public class KbAuthorizedUserServiceImpl extends ServiceImpl<KbAuthorizedUserMap
kbAuthuserKnowledgeprojectMap
.
setCreateDate
(
new
Date
());
saves1
.
add
(
kbAuthuserKnowledgeprojectMap
);
}
knowledgeIds
.
forEach
(
know
->{
KbAuthuserKnowMap
kbAuthuserKnowMap
=
new
KbAuthuserKnowMap
();
kbAuthuserKnowMap
.
setAuthUserId
(
user
.
getId
());
kbAuthuserKnowMap
.
setCreateDate
(
new
Date
());
kbAuthuserKnowMap
.
setKnowledgeId
(
know
);
List
<
RolePermissonVo
>
rolePermissonVos
=
collect
.
get
(
user
.
getRoleId
());
StringBuffer
b
=
new
StringBuffer
();
rolePermissonVos
.
forEach
(
p
->
b
.
append
(
","
+
p
.
getPermissionCode
()));
if
(
b
.
length
()>
0
)
{
kbAuthuserKnowMap
.
setPermissonCodes
(
b
.
substring
(
1
));
}
kbAuthuserKnowMap
.
setKnowledgeProjectId
(
knowledgeProjectId
);
saves
.
add
(
kbAuthuserKnowMap
);
});
});
if
(
CollectionUtil
.
isNotEmpty
(
saves
))
{
kbAuthuserKnowMapService
.
saveBatch
(
saves
);
}
if
(
CollectionUtil
.
isNotEmpty
(
saves1
))
{
authuserKnowledgeprojectMapService
.
saveBatch
(
saves1
);
}
return
Result
.
OK
();
}
...
...
@@ -382,6 +403,94 @@ public class KbAuthorizedUserServiceImpl extends ServiceImpl<KbAuthorizedUserMap
}
}
@Override
@Transactional
public
Result
<?>
editBatch
(
List
<
KbAuthorizedUser
>
authorizedUsers
)
{
if
(
CollectionUtil
.
isEmpty
(
authorizedUsers
)){
return
Result
.
OK
(
"本次没有编辑用户"
);
}
authorizedUsers
.
forEach
(
e
->
e
.
setUpdateTime
(
new
Date
()));
super
.
updateBatchById
(
authorizedUsers
);
List
<
String
>
authUserIds
=
authorizedUsers
.
stream
().
map
(
KbAuthorizedUser:
:
getId
).
collect
(
Collectors
.
toList
());
if
(!
"0"
.
equals
(
authorizedUsers
.
get
(
0
).
getKnowledgeProjectId
()))
{
//所编辑知识库分类节点下所有的子节点
List
<
KbKnowledgeProject
>
knowPros
=
knowledgeProjectService
.
list
(
Wrappers
.<
KbKnowledgeProject
>
lambdaQuery
()
.
like
(
KbKnowledgeProject:
:
getFullPath
,
authorizedUsers
.
get
(
0
).
getKnowledgeProjectId
())
);
List
<
String
>
knowProIds
=
knowPros
.
stream
().
map
(
KbKnowledgeProject:
:
getId
).
collect
(
Collectors
.
toList
());
kbUserRoleMapService
.
remove
(
Wrappers
.<
KbUserRoleMap
>
lambdaQuery
()
.
in
(
KbUserRoleMap:
:
getUserId
,
authUserIds
)
.
in
(
KbUserRoleMap:
:
getKnowledgeProjectId
,
knowProIds
)
);
List
<
KbUserRoleMap
>
maps
=
new
ArrayList
<>();
authorizedUsers
.
forEach
(
user
->{
List
<
String
>
list
=
Arrays
.
asList
(
user
.
getRoleId
().
split
(
","
));
list
.
forEach
(
e
->{
knowProIds
.
forEach
(
ee
->{
KbUserRoleMap
kbUserRoleMap
=
new
KbUserRoleMap
();
kbUserRoleMap
.
setUserId
(
user
.
getId
());
kbUserRoleMap
.
setRoleId
(
e
);
kbUserRoleMap
.
setKnowledgeProjectId
(
ee
);
kbUserRoleMap
.
setCreateDate
(
new
Date
());
maps
.
add
(
kbUserRoleMap
);
});
});
});
kbUserRoleMapService
.
saveBatch
(
maps
);
}
else
{
kbUserRoleMapService
.
remove
(
Wrappers
.<
KbUserRoleMap
>
lambdaQuery
().
in
(
KbUserRoleMap:
:
getUserId
,
authUserIds
));
authuserKnowledgeprojectMapService
.
remove
(
Wrappers
.<
KbAuthuserKnowledgeprojectMap
>
lambdaQuery
().
in
(
KbAuthuserKnowledgeprojectMap:
:
getAuthUserId
,
authUserIds
));
kbAuthuserKnowMapService
.
remove
(
Wrappers
.<
KbAuthuserKnowMap
>
lambdaQuery
().
in
(
KbAuthuserKnowMap:
:
getAuthUserId
,
authUserIds
));
List
<
KbAuthuserKnowledgeprojectMap
>
authUserKnowProjectMaps
=
new
ArrayList
<>();
List
<
KbUserRoleMap
>
userRoleMaps
=
new
ArrayList
<>();
authorizedUsers
.
forEach
(
user
->
{
/**插入用户知识库权限关系表*/
if
(
StringUtils
.
isNotBlank
(
user
.
getKnowledgeProjectId
())){
KbAuthuserKnowledgeprojectMap
kbAuthuserKnowledgeprojectMap
=
new
KbAuthuserKnowledgeprojectMap
();
kbAuthuserKnowledgeprojectMap
.
setAuthUserId
(
user
.
getId
());
kbAuthuserKnowledgeprojectMap
.
setKnowledgeProjectId
(
user
.
getKnowledgeProjectId
());
kbAuthuserKnowledgeprojectMap
.
setSign
(
0
);
// authuserKnowledgeprojectMapService.save(kbAuthuserKnowledgeprojectMap);
authUserKnowProjectMaps
.
add
(
kbAuthuserKnowledgeprojectMap
);
}
/**插入用户角色关系表*/
if
(
StringUtils
.
isNotBlank
(
user
.
getRoleId
())){
String
roleId
=
user
.
getRoleId
();
List
<
String
>
list
=
Arrays
.
asList
(
roleId
.
split
(
","
));
list
.
forEach
(
e
->{
KbUserRoleMap
kbUserRoleMap
=
new
KbUserRoleMap
();
kbUserRoleMap
.
setUserId
(
user
.
getId
());
kbUserRoleMap
.
setRoleId
(
e
);
kbUserRoleMap
.
setKnowledgeProjectId
(
user
.
getKnowledgeProjectId
());
userRoleMaps
.
add
(
kbUserRoleMap
);
});
// kbUserRoleMapService.saveBatch(maps);
}
});
authuserKnowledgeprojectMapService
.
saveBatch
(
authUserKnowProjectMaps
);
kbUserRoleMapService
.
saveBatch
(
userRoleMaps
);
}
return
Result
.
OK
();
}
@Override
@Transactional
...
...
src/main/java/com/zzsn/knowbase/vo/RolePermissonVo.java
0 → 100644
浏览文件 @
a3d3d1a9
package
com
.
zzsn
.
knowbase
.
vo
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* <p>
*
* </p>
*
* @author obcy
* @since 2024-01-04
*/
@Data
public
class
RolePermissonVo
implements
Serializable
{
private
String
id
;
/**
* 角色名称
*/
private
String
roleName
;
/**
* 角色编码
*/
private
String
roleCode
;
/**
* 备注
*/
private
String
notes
;
/**
* 创建人
*/
private
String
createBy
;
/**
* 创建时间
*/
private
Date
createTime
;
/**
* 更新人
*/
private
String
updateBy
;
/**
* 更新时间
*/
private
Date
updateTime
;
/**
* 权限名称
*/
private
String
permissionName
;
/**
* 权限编码
*/
private
String
permissionCode
;
/**
* 权限id
*/
private
String
permissionId
;
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论