提交 8e528ebb authored 作者: taojinlong's avatar taojinlong

feat: 仪表板分享以分享人查看数据

上级 df603722
...@@ -1705,7 +1705,7 @@ public class ChartViewService { ...@@ -1705,7 +1705,7 @@ public class ChartViewService {
throw new RuntimeException(Translator.get("i18n_dataset_delete")); throw new RuntimeException(Translator.get("i18n_dataset_delete"));
} }
SysUserEntity user = AuthUtils.getUser(); SysUserEntity user = AuthUtils.getUser();
user = user != null ? user : authUserService.getUserById(userId); user = userId != null ? authUserService.getUserById(userId) : user;
if (!user.getIsAdmin()) { if (!user.getIsAdmin()) {
if (ObjectUtils.isEmpty(table.getPrivileges()) || !table.getPrivileges().contains(needPermission)) { if (ObjectUtils.isEmpty(table.getPrivileges()) || !table.getPrivileges().contains(needPermission)) {
throw new RuntimeException(Translator.get("i18n_dataset_no_permission")); throw new RuntimeException(Translator.get("i18n_dataset_no_permission"));
......
...@@ -405,8 +405,7 @@ public class DataSetTableService { ...@@ -405,8 +405,7 @@ public class DataSetTableService {
public DataSetTableDTO getWithPermission(String id, Long user) { public DataSetTableDTO getWithPermission(String id, Long user) {
CurrentUserDto currentUserDto = AuthUtils.getUser(); CurrentUserDto currentUserDto = AuthUtils.getUser();
Long userId = currentUserDto != null ? currentUserDto.getUserId() : user; Long userId = user != null ? user : currentUserDto.getUserId();
DataSetTableRequest dataSetTableRequest = new DataSetTableRequest(); DataSetTableRequest dataSetTableRequest = new DataSetTableRequest();
dataSetTableRequest.setId(id); dataSetTableRequest.setId(id);
dataSetTableRequest.setUserId(String.valueOf(userId)); dataSetTableRequest.setUserId(String.valueOf(userId));
......
...@@ -94,37 +94,19 @@ public class PermissionService { ...@@ -94,37 +94,19 @@ public class PermissionService {
return new ArrayList<>(); return new ArrayList<>();
} }
RowPermissionService rowPermissionService = SpringContextUtil.getBean(RowPermissionService.class); RowPermissionService rowPermissionService = SpringContextUtil.getBean(RowPermissionService.class);
CurrentUserDto user = AuthUtils.getUser(); SysUserEntity userEntity = userId != null ? authUserService.getUserById(userId) : AuthUtils.getUser();
List<Long> roleIds = new ArrayList<>(); List<Long> roleIds = new ArrayList<>();
Long deptId = null; Long deptId = null;
if (user == null && userId == null) { if (userEntity == null ) {
return datasetRowPermissions; return datasetRowPermissions;
} }
if (userEntity.getIsAdmin()) {
if (user != null && userId != null) {
return datasetRowPermissions; return datasetRowPermissions;
} }
userId = userEntity.getUserId();
if (user != null) { deptId = userEntity.getDeptId();
if (user.getIsAdmin()) { roleIds = authUserService.roles(userId).stream().map(r -> Long.valueOf(r)).collect(Collectors.toList());
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());
}
DataSetRowPermissionsDTO dataSetRowPermissionsDTO = new DataSetRowPermissionsDTO(); DataSetRowPermissionsDTO dataSetRowPermissionsDTO = new DataSetRowPermissionsDTO();
dataSetRowPermissionsDTO.setDatasetId(datasetId); dataSetRowPermissionsDTO.setDatasetId(datasetId);
dataSetRowPermissionsDTO.setAuthTargetIds(Collections.singletonList(userId)); dataSetRowPermissionsDTO.setAuthTargetIds(Collections.singletonList(userId));
...@@ -146,36 +128,19 @@ public class PermissionService { ...@@ -146,36 +128,19 @@ public class PermissionService {
return new ArrayList<>(); return new ArrayList<>();
} }
ColumnPermissionService columnPermissionService = SpringContextUtil.getBean(ColumnPermissionService.class); ColumnPermissionService columnPermissionService = SpringContextUtil.getBean(ColumnPermissionService.class);
CurrentUserDto user = AuthUtils.getUser(); SysUserEntity userEntity = userId != null ? authUserService.getUserById(userId) : AuthUtils.getUser();
List<Long> roleIds = new ArrayList<>(); List<Long> roleIds = new ArrayList<>();
Long deptId = null; Long deptId = null;
if (user == null && userId == null) { if (userEntity == null ) {
return datasetColumnPermissions; return datasetColumnPermissions;
} }
if (userEntity.getIsAdmin()) {
if (user != null && userId != null) {
return datasetColumnPermissions; return datasetColumnPermissions;
} }
userId = userEntity.getUserId();
if (user != null) { deptId = userEntity.getDeptId();
if (user.getIsAdmin()) { roleIds = authUserService.roles(userId).stream().map(r -> Long.valueOf(r)).collect(Collectors.toList());
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());
}
DataSetColumnPermissionsDTO dataSetColumnPermissionsDTO = new DataSetColumnPermissionsDTO(); DataSetColumnPermissionsDTO dataSetColumnPermissionsDTO = new DataSetColumnPermissionsDTO();
dataSetColumnPermissionsDTO.setDatasetId(datasetId); dataSetColumnPermissionsDTO.setDatasetId(datasetId);
dataSetColumnPermissionsDTO.setAuthTargetIds(Collections.singletonList(userId)); dataSetColumnPermissionsDTO.setAuthTargetIds(Collections.singletonList(userId));
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论