SysRoleController
/**
* 批量/单个删除角色
* @param roleIdList 角色id集合
* @return
*/
@ApiOperation("批量/单个删除角色")
@DeleteMapping
@PreAuthorize("hasAuthority('sys:role:delete')")
public Result<String> removeSysRole(@RequestBody List<Long> roleIdList) {
Boolean removed = sysRoleService.removeSysRoleListByIds(roleIdList);
return Result.handle(removed);
}
SysRoleServiceImpl
@Override
@CacheEvict(key = ManagerConstants.SYS_ALL_ROLE_KEY)
@Transactional(rollbackFor = Exception.class)
public Boolean removeSysRoleListByIds(List<Long> roleIdList) {
// 批量或单个删除角色与权限关系集合
sysRoleMenuMapper.delete(new LambdaQueryWrapper<SysRoleMenu>()
.in(SysRoleMenu::getRoleId,roleIdList)
);
// 批量或单个删除角色
return sysRoleMapper.deleteBatchIds(roleIdList)==roleIdList.size();
}