From 6bb37f0d4e3383532abdf265b4198865d8ad60e2 Mon Sep 17 00:00:00 2001 From: taojinlong Date: Tue, 28 Dec 2021 18:44:11 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=85=AC=E5=85=B1=E9=93=BE=E6=8E=A5?= =?UTF-8?q?=E8=A1=8C=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/dataset/DataSetTableService.java | 21 ++++++++++++++----- frontend/src/views/link/view/index.vue | 1 + 2 files changed, 17 insertions(+), 5 deletions(-) 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 2e65a0a773..d374217845 100644 --- a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java +++ b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java @@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONObject; import com.google.gson.Gson; import io.dataease.auth.api.dto.CurrentRoleDto; import io.dataease.auth.api.dto.CurrentUserDto; +import io.dataease.auth.entity.SysUserEntity; import io.dataease.auth.service.AuthUserService; import io.dataease.base.domain.*; import io.dataease.base.mapper.*; @@ -455,16 +456,26 @@ public class DataSetTableService { } RowPermissionService rowPermissionService = SpringContextUtil.getBean(RowPermissionService.class); CurrentUserDto user = AuthUtils.getUser(); - userId = user != null ? user.getUserId() : userId; List roleIds; Long deptId; - if (user != null) { + + if(user == 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()); + }else { + if(user.getIsAdmin()){ + return datasetRowPermissions; + } + userId = user.getUserId(); deptId = user.getDeptId(); roleIds = user.getRoles().stream().map(CurrentRoleDto::getId).collect(Collectors.toList()); - } else { - deptId = authUserService.getUserById(userId).getDeptId(); - roleIds = authUserService.roles(userId).stream().map(r -> Long.valueOf(r)).collect(Collectors.toList()); } + userId = user != null ? user.getUserId() : userId; + DataSetRowPermissionsDTO dataSetRowPermissionsDTO = new DataSetRowPermissionsDTO(); dataSetRowPermissionsDTO.setDatasetId(datasetId); dataSetRowPermissionsDTO.setAuthTargetIds(Collections.singletonList(userId)); diff --git a/frontend/src/views/link/view/index.vue b/frontend/src/views/link/view/index.vue index 99a31c98b9..344ccfdca2 100644 --- a/frontend/src/views/link/view/index.vue +++ b/frontend/src/views/link/view/index.vue @@ -78,6 +78,7 @@ export default { if (data) { data.forEach(item => { item.type !== 'custom' && (item.id = uuid.v1()) + item.user = this.user }) } return data