|
|
@@ -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();
|
|
|
}
|