From ecdeadeb49b4f777cc28466fe61c5f1d1be75496 Mon Sep 17 00:00:00 2001 From: lijiarao Date: Mon, 30 Aug 2021 10:58:25 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E5=88=A0=E9=99=A4=E8=A7=92=E8=89=B2?= =?UTF-8?q?=E6=97=B6=E5=88=A4=E6=96=AD=E6=98=AF=E5=90=A6=E6=9C=89=E7=94=A8?= =?UTF-8?q?=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/controller/SysRoleController.java | 39 ++++++++++++------- 1 file changed, 24 insertions(+), 15 deletions(-) diff --git a/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysRoleController.java b/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysRoleController.java index db827f5f..11261181 100644 --- a/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysRoleController.java +++ b/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysRoleController.java @@ -13,6 +13,7 @@ import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import com.jero.common.exception.JeroBootException; import com.jero.common.system.vo.SysDepartTreeModel; import com.jero.common.system.vo.SysRoleTreeModel; import com.jero.modules.system.entity.*; @@ -182,16 +183,15 @@ public class SysRoleController { return result; } - + /** - * 通过id删除 + * 通过id删除 * @param id * @return */ - //@RequiresRoles({"admin"}) @RequiresPermissions("sys:role:del") @RequestMapping(value = "/delete", method = RequestMethod.GET) - public Result delete(@RequestParam(name="id",required=true) String id) { + public Result delete(@RequestParam(name="id") String id) { IPage pageInfo = sysUserService.getUserByRoleId(new Page<>(), id, null); long total = pageInfo.getTotal(); if (total == 0) { @@ -201,24 +201,33 @@ public class SysRoleController { return Result.error("删除角色失败,该角色下存在未删除用户"); } } - + /** - * 批量删除 + * 批量删除 * @param ids * @return */ - //@RequiresRoles({"admin"}) @RequiresPermissions("sys:role:del") @RequestMapping(value = "/deleteBatch", method = RequestMethod.GET) - public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { - Result result = new Result(); - if(oConvertUtils.isEmpty(ids)) { - result.error500("未选中角色!"); - }else { - sysRoleService.deleteBatchRole(ids.split(",")); - result.success("删除角色成功!"); + public Result deleteBatch(@RequestParam(name="ids") String ids) { + if (oConvertUtils.isEmpty(ids)) { + throw new JeroBootException("未选中角色!"); } - return result; + List roleNames = new ArrayList<>(); + String[] split = ids.split(","); + for (String id : split) { + IPage pageInfo = sysUserService.getUserByRoleId(new Page<>(), id, null); + long total = pageInfo.getTotal(); + if (total != 0) { + SysRole sysRole = sysRoleService.getById(id); + roleNames.add(sysRole.getRoleName()); + } + } + if (!roleNames.isEmpty()) { + throw new JeroBootException(roleNames + "删除角色失败,角色下存在未删除用户"); + } + sysRoleService.deleteBatchRole(split); + return Result.OK("删除角色成功!"); } /**