diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysrole/SysRoleService.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysrole/SysRoleService.java index 168a8e64a7..0544336367 100644 --- a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysrole/SysRoleService.java +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysrole/SysRoleService.java @@ -8,11 +8,13 @@ import com.yxt.anrui.portal.api.sysrole.SysRoleDto; import com.yxt.anrui.portal.api.sysrole.SysRoleQuery; import com.yxt.anrui.portal.api.sysrole.SysRoleVo; import com.yxt.anrui.portal.api.sysuser.SysMenuRoleVoList; +import com.yxt.anrui.portal.biz.sysuserrole.SysUserRoleService; import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.vo.PagerVo; import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; @@ -33,6 +35,8 @@ import java.util.List; */ @Service public class SysRoleService extends MybatisBaseService { + @Autowired + private SysUserRoleService sysUserRoleService; public PagerVo listPage(PagerQuery pq) { SysRoleQuery query = pq.getParams(); QueryWrapper qw = createQueryWrapper(query); @@ -129,6 +133,8 @@ public class SysRoleService extends MybatisBaseService { if (split.length < 1) { return 0; } else if (split.length == 1) { + //删除该角色下的用户关联 + sysUserRoleService.deleteByRoleSid(sids); return baseMapper.deleteBySid(sids); } else { List list = new ArrayList<>(); diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleMapper.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleMapper.java index d780841cee..6ebaeda6b5 100644 --- a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleMapper.java +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleMapper.java @@ -51,4 +51,6 @@ public interface SysUserRoleMapper extends BaseMapper { List getUserIdListByRoleSid(@Param("roleList") List roleList); List getUserSidListByRoleSid(@Param("roleList") List roleList); + + int deleteByRoleSid(String sids); } \ No newline at end of file diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleMapper.xml b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleMapper.xml index 3e70908ac5..fc7d1ce861 100644 --- a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleMapper.xml +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleMapper.xml @@ -38,4 +38,8 @@ GROUP BY sur.userSid + + + delete from sys_user_role where roleSid = #{sids} + \ No newline at end of file diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleService.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleService.java index 4a0fa69516..1c0ccceca9 100644 --- a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleService.java +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleService.java @@ -123,4 +123,8 @@ public class SysUserRoleService extends MybatisBaseService> getUserSidListByRoleSid(List roleList) { return new ResultBean>().success().setData(baseMapper.getUserSidListByRoleSid(roleList)); } + + public int deleteByRoleSid(String sids) { + return baseMapper.deleteByRoleSid(sids); + } } \ No newline at end of file