From 91e4a9021e4d8f5f200b61dc74a16038e8f59986 Mon Sep 17 00:00:00 2001 From: wangwei <1610949092@qq.com> Date: Wed, 8 Feb 2023 10:25:00 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/auth/SysRoleController.java | 5 ++++- .../service/auth/impl/SysRoleServiceImpl.java | 21 ++++++++++++++----- 2 files changed, 20 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/glxp/api/controller/auth/SysRoleController.java b/src/main/java/com/glxp/api/controller/auth/SysRoleController.java index b8761b7e3..a87b5a9dc 100644 --- a/src/main/java/com/glxp/api/controller/auth/SysRoleController.java +++ b/src/main/java/com/glxp/api/controller/auth/SysRoleController.java @@ -133,7 +133,10 @@ public class SysRoleController extends BaseController { @DeleteMapping("/{roleIds}") public BaseResponse remove(@PathVariable Long[] roleIds) { int i = roleService.deleteRoleByIds(roleIds); - return ResultVOUtils.success("修改成功!"); + if(i>0){ + return ResultVOUtils.success("修改成功!"); + } + return ResultVOUtils.error(500,"已绑定用户,不能删除!"); } /** diff --git a/src/main/java/com/glxp/api/service/auth/impl/SysRoleServiceImpl.java b/src/main/java/com/glxp/api/service/auth/impl/SysRoleServiceImpl.java index 744b79d78..069e24a81 100644 --- a/src/main/java/com/glxp/api/service/auth/impl/SysRoleServiceImpl.java +++ b/src/main/java/com/glxp/api/service/auth/impl/SysRoleServiceImpl.java @@ -4,6 +4,8 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.github.pagehelper.PageHelper; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.constant.Constant; import com.glxp.api.dao.auth.SysRoleMapper; import com.glxp.api.dao.auth.SysRoleMenuMapper; @@ -318,18 +320,27 @@ public class SysRoleServiceImpl implements ISysRoleService { @Override @Transactional(rollbackFor = Exception.class) public int deleteRoleByIds(Long[] roleIds) { + int i=0; for (Long roleId : roleIds) { checkRoleAllowed(new SysRole(roleId)); checkRoleDataScope(roleId); SysRole role = selectRoleById(roleId); if (countUserRoleByRoleId(roleId) > 0) { - throw new ServiceException(String.format("%1$s已分配,不能删除", role.getRoleName())); + i++; + // throw new ServiceException(String.format("%1$s已分配,不能删除", role.getRoleName())); } } - List ids = Arrays.asList(roleIds); - // 删除角色与菜单关联 - roleMenuMapper.deleteByList(ids); - return sysRoleMapper.deleteBatchIds(ids); + if(i>0){ + return 0; + }else{ + List ids = Arrays.asList(roleIds); + // 删除角色与菜单关联 + roleMenuMapper.deleteByList(ids); + sysRoleMapper.deleteBatchIds(ids); + return sysRoleMapper.deleteBatchIds(ids); + } + + } /**