From 3777c1c6a33e401a203af5918d8b50921730397e Mon Sep 17 00:00:00 2001 From: taojinlong Date: Tue, 1 Mar 2022 16:05:31 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BB=AA=E8=A1=A8=E6=9D=BF=E5=88=86?= =?UTF-8?q?=E4=BA=AB=E4=BB=A5=E5=88=86=E4=BA=AB=E4=BA=BA=E6=9F=A5=E7=9C=8B?= =?UTF-8?q?=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/chart/ChartViewService.java | 2 +- .../service/dataset/DataSetTableService.java | 3 +- .../service/dataset/PermissionService.java | 59 ++++--------------- 3 files changed, 14 insertions(+), 50 deletions(-) diff --git a/backend/src/main/java/io/dataease/service/chart/ChartViewService.java b/backend/src/main/java/io/dataease/service/chart/ChartViewService.java index 354758577e..628b1fe9e9 100644 --- a/backend/src/main/java/io/dataease/service/chart/ChartViewService.java +++ b/backend/src/main/java/io/dataease/service/chart/ChartViewService.java @@ -1705,7 +1705,7 @@ public class ChartViewService { throw new RuntimeException(Translator.get("i18n_dataset_delete")); } SysUserEntity user = AuthUtils.getUser(); - user = user != null ? user : authUserService.getUserById(userId); + user = userId != null ? authUserService.getUserById(userId) : user; if (!user.getIsAdmin()) { if (ObjectUtils.isEmpty(table.getPrivileges()) || !table.getPrivileges().contains(needPermission)) { throw new RuntimeException(Translator.get("i18n_dataset_no_permission")); diff --git a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java index 2bb39fd550..c8b81bb235 100644 --- a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java +++ b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java @@ -405,8 +405,7 @@ public class DataSetTableService { public DataSetTableDTO getWithPermission(String id, Long user) { CurrentUserDto currentUserDto = AuthUtils.getUser(); - Long userId = currentUserDto != null ? currentUserDto.getUserId() : user; - + Long userId = user != null ? user : currentUserDto.getUserId(); DataSetTableRequest dataSetTableRequest = new DataSetTableRequest(); dataSetTableRequest.setId(id); dataSetTableRequest.setUserId(String.valueOf(userId)); diff --git a/backend/src/main/java/io/dataease/service/dataset/PermissionService.java b/backend/src/main/java/io/dataease/service/dataset/PermissionService.java index 64ebb1ae6e..288df72ee5 100644 --- a/backend/src/main/java/io/dataease/service/dataset/PermissionService.java +++ b/backend/src/main/java/io/dataease/service/dataset/PermissionService.java @@ -94,37 +94,19 @@ public class PermissionService { return new ArrayList<>(); } RowPermissionService rowPermissionService = SpringContextUtil.getBean(RowPermissionService.class); - CurrentUserDto user = AuthUtils.getUser(); + SysUserEntity userEntity = userId != null ? authUserService.getUserById(userId) : AuthUtils.getUser(); List roleIds = new ArrayList<>(); Long deptId = null; - if (user == null && userId == null) { + if (userEntity == null ) { return datasetRowPermissions; } - - if (user != null && userId != null) { + if (userEntity.getIsAdmin()) { return datasetRowPermissions; } - - if (user != null) { - if (user.getIsAdmin()) { - return datasetRowPermissions; - } - userId = user.getUserId(); - deptId = user.getDeptId(); - roleIds = user.getRoles().stream().map(CurrentRoleDto::getId).collect(Collectors.toList()); - } - - if (userId != null) { - SysUserEntity userEntity = authUserService.getUserById(userId); - if (userEntity.getIsAdmin()) { - return datasetRowPermissions; - } - deptId = userEntity.getDeptId(); - roleIds = authUserService.roles(userId).stream().map(r -> Long.valueOf(r)).collect(Collectors.toList()); - } - - + userId = userEntity.getUserId(); + deptId = userEntity.getDeptId(); + roleIds = authUserService.roles(userId).stream().map(r -> Long.valueOf(r)).collect(Collectors.toList()); DataSetRowPermissionsDTO dataSetRowPermissionsDTO = new DataSetRowPermissionsDTO(); dataSetRowPermissionsDTO.setDatasetId(datasetId); dataSetRowPermissionsDTO.setAuthTargetIds(Collections.singletonList(userId)); @@ -146,36 +128,19 @@ public class PermissionService { return new ArrayList<>(); } ColumnPermissionService columnPermissionService = SpringContextUtil.getBean(ColumnPermissionService.class); - CurrentUserDto user = AuthUtils.getUser(); + SysUserEntity userEntity = userId != null ? authUserService.getUserById(userId) : AuthUtils.getUser(); List roleIds = new ArrayList<>(); Long deptId = null; - if (user == null && userId == null) { + if (userEntity == null ) { return datasetColumnPermissions; } - - if (user != null && userId != null) { + if (userEntity.getIsAdmin()) { return datasetColumnPermissions; } - - if (user != null) { - if (user.getIsAdmin()) { - return datasetColumnPermissions; - } - userId = user.getUserId(); - deptId = user.getDeptId(); - roleIds = user.getRoles().stream().map(CurrentRoleDto::getId).collect(Collectors.toList()); - } - - if (userId != null) { - SysUserEntity userEntity = authUserService.getUserById(userId); - if (userEntity.getIsAdmin()) { - return datasetColumnPermissions; - } - deptId = userEntity.getDeptId(); - roleIds = authUserService.roles(userId).stream().map(r -> Long.valueOf(r)).collect(Collectors.toList()); - } - + userId = userEntity.getUserId(); + deptId = userEntity.getDeptId(); + roleIds = authUserService.roles(userId).stream().map(r -> Long.valueOf(r)).collect(Collectors.toList()); DataSetColumnPermissionsDTO dataSetColumnPermissionsDTO = new DataSetColumnPermissionsDTO(); dataSetColumnPermissionsDTO.setDatasetId(datasetId); dataSetColumnPermissionsDTO.setAuthTargetIds(Collections.singletonList(userId));