Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
jinli gu
Litemall
Commits
dead5fb2
Commit
dead5fb2
authored
Apr 06, 2019
by
Junling Bu
Browse files
fix[litemall-admin-api, litemall-db]: 如果角色存在管理员,则不能删除
parent
5c1a8f62
Changes
3
Show whitespace changes
Inline
Side-by-side
litemall-admin-api/src/main/java/org/linlinjava/litemall/admin/util/AdminResponseCode.java
View file @
dead5fb2
...
...
@@ -19,4 +19,6 @@ public class AdminResponseCode {
public
static
final
Integer
USER_MOBILE_EXIST
=
634
;
public
static
final
Integer
ROLE_NAME_EXIST
=
640
;
public
static
final
Integer
ROLE_SUPER_SUPERMISSION
=
641
;
public
static
final
Integer
ROLE_USER_EXIST
=
642
;
}
litemall-admin-api/src/main/java/org/linlinjava/litemall/admin/web/AdminRoleController.java
View file @
dead5fb2
...
...
@@ -19,6 +19,7 @@ import org.linlinjava.litemall.db.domain.LitemallAdmin;
import
org.linlinjava.litemall.db.domain.LitemallBrand
;
import
org.linlinjava.litemall.db.domain.LitemallPermission
;
import
org.linlinjava.litemall.db.domain.LitemallRole
;
import
org.linlinjava.litemall.db.service.LitemallAdminService
;
import
org.linlinjava.litemall.db.service.LitemallPermissionService
;
import
org.linlinjava.litemall.db.service.LitemallRoleService
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -31,6 +32,7 @@ import javax.validation.constraints.NotNull;
import
java.util.*
;
import
static
org
.
linlinjava
.
litemall
.
admin
.
util
.
AdminResponseCode
.
ROLE_NAME_EXIST
;
import
static
org
.
linlinjava
.
litemall
.
admin
.
util
.
AdminResponseCode
.
ROLE_USER_EXIST
;
@RestController
@RequestMapping
(
"/admin/role"
)
...
...
@@ -42,6 +44,8 @@ public class AdminRoleController {
private
LitemallRoleService
roleService
;
@Autowired
private
LitemallPermissionService
permissionService
;
@Autowired
private
LitemallAdminService
adminService
;
@RequiresPermissions
(
"admin:role:list"
)
@RequiresPermissionsDesc
(
menu
={
"系统管理"
,
"角色管理"
},
button
=
"角色查询"
)
...
...
@@ -132,6 +136,18 @@ public class AdminRoleController {
if
(
id
==
null
)
{
return
ResponseUtil
.
badArgument
();
}
// 如果当前角色所对应管理员仍存在,则拒绝删除角色。
List
<
LitemallAdmin
>
adminList
=
adminService
.
all
();
for
(
LitemallAdmin
admin
:
adminList
){
Integer
[]
roleIds
=
admin
.
getRoleIds
();
for
(
Integer
roleId
:
roleIds
){
if
(
id
.
equals
(
roleId
)){
return
ResponseUtil
.
fail
(
ROLE_USER_EXIST
,
"当前角色存在管理员,不能删除"
);
}
}
}
roleService
.
deleteById
(
id
);
return
ResponseUtil
.
ok
();
}
...
...
litemall-db/src/main/java/org/linlinjava/litemall/db/service/LitemallAdminService.java
View file @
dead5fb2
...
...
@@ -63,4 +63,10 @@ public class LitemallAdminService {
public
LitemallAdmin
findById
(
Integer
id
)
{
return
adminMapper
.
selectByPrimaryKeySelective
(
id
,
result
);
}
public
List
<
LitemallAdmin
>
all
()
{
LitemallAdminExample
example
=
new
LitemallAdminExample
();
example
.
or
().
andDeletedEqualTo
(
false
);
return
adminMapper
.
selectByExample
(
example
);
}
}
Write
Preview
Supports
Markdown
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