Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
D
dsk-operate-sys-cscec
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
fulixin
dsk-operate-sys-cscec
Commits
5d8137ef
Commit
5d8137ef
authored
Nov 21, 2023
by
施翔轲
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改角色管理-取消授权中判断"角色下是否有账号与账号下是否有角色"的顺序
parent
c76cb448
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
7 additions
and
5 deletions
+7
-5
SysRoleServiceImpl.java
.../java/com/dsk/system/service/impl/SysRoleServiceImpl.java
+7
-5
No files found.
dsk-system/src/main/java/com/dsk/system/service/impl/SysRoleServiceImpl.java
View file @
5d8137ef
...
...
@@ -406,15 +406,15 @@ public class SysRoleServiceImpl implements ISysRoleService {
*/
@Override
public
int
deleteAuthUser
(
SysUserRole
userRole
)
{
//校验企业管理员角色下是否至少有一个账号
checkAdminHasUsers
(
userRole
.
getRoleId
());
//若该账号仅有一个角色,则不允许取消授权
SysUser
sysUser
=
userMapper
.
selectUserById
(
userRole
.
getUserId
());
if
(
sysUser
.
getRoles
().
size
()
==
1
)
{
throw
new
ServiceException
(
"至少保留一个角色在该账号下"
);
}
//校验企业管理员角色下是否至少有一个账号
checkAdminHasUsers
(
userRole
.
getRoleId
());
int
rows
=
userRoleMapper
.
delete
(
new
LambdaQueryWrapper
<
SysUserRole
>()
.
eq
(
SysUserRole:
:
getRoleId
,
userRole
.
getRoleId
())
.
eq
(
SysUserRole:
:
getUserId
,
userRole
.
getUserId
()));
...
...
@@ -433,6 +433,9 @@ public class SysRoleServiceImpl implements ISysRoleService {
*/
@Override
public
int
deleteAuthUsers
(
Long
roleId
,
Long
[]
userIds
)
{
//校验企业管理员角色下是否至少有一个账号
Integer
users
=
checkAdminHasUsers
(
roleId
);
//若该账号仅有一个角色,则不允许取消授权
StringBuilder
lackRoleAccount
=
new
StringBuilder
();
for
(
Long
userId
:
userIds
)
{
...
...
@@ -441,13 +444,12 @@ public class SysRoleServiceImpl implements ISysRoleService {
lackRoleAccount
.
append
(
sysUser
.
getUserName
()).
append
(
","
);
}
}
//将缺少角色的账号返回给前端
if
(
lackRoleAccount
.
toString
().
contains
(
","
))
{
throw
new
ServiceException
(
lackRoleAccount
.
substring
(
0
,
lackRoleAccount
.
length
()-
1
));
}
//校验企业管理员角色下是否至少有一个账号
Integer
users
=
checkAdminHasUsers
(
roleId
);
//如果取消授权企业管理员角色下所有账号,则抛异常
if
(
users
!=
null
&&
userIds
.
length
==
users
)
{
throw
new
ServiceException
(
"至少要保留一个账号在企业管理员角色下!"
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment