From f347578cc12ba0317a9fe4c87918c6f1a7e99c93 Mon Sep 17 00:00:00 2001 From: junjun Date: Tue, 8 Mar 2022 12:22:50 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E5=85=B3=E8=81=94=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E9=9B=86=E6=9D=83=E9=99=90=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/dataset/DataSetTableService.java | 22 ++++++++++++++++--- 1 file changed, 19 insertions(+), 3 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 c8b81bb235..e95faa427a 100644 --- a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java +++ b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java @@ -3,7 +3,6 @@ package io.dataease.service.dataset; import com.google.gson.Gson; import io.dataease.auth.annotation.DeCleaner; import io.dataease.auth.api.dto.CurrentUserDto; -import io.dataease.auth.entity.SysUserEntity; import io.dataease.base.domain.*; import io.dataease.base.mapper.*; import io.dataease.base.mapper.ext.ExtDataSetGroupMapper; @@ -51,9 +50,10 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; -import java.io.*; +import java.io.File; +import java.io.FileOutputStream; +import java.io.InputStream; import java.math.BigDecimal; -import java.nio.charset.StandardCharsets; import java.text.MessageFormat; import java.text.NumberFormat; import java.text.SimpleDateFormat; @@ -1181,6 +1181,14 @@ public class DataSetTableService { DEException.throwException( Translator.get("i18n_custom_ds_delete") + String.format(":table id [%s]", tableId)); } + CurrentUserDto user = AuthUtils.getUser(); + if (user != null && !user.getIsAdmin()) { + DataSetTableDTO withPermission = getWithPermission(datasetTable.getId(), user.getUserId()); + if (ObjectUtils.isEmpty(withPermission.getPrivileges()) || !withPermission.getPrivileges().contains("use")) { + DEException.throwException( + Translator.get("i18n_dataset_no_permission") + String.format(":table name [%s]", withPermission.getName())); + } + } List fields = dataSetTableFieldsService.getListByIdsEach(unionDTO.getCurrentDsField()); String[] array = fields.stream() @@ -1309,6 +1317,14 @@ public class DataSetTableService { DEException.throwException( Translator.get("i18n_custom_ds_delete") + String.format(":table id [%s]", tableId)); } + CurrentUserDto user = AuthUtils.getUser(); + if (user != null && !user.getIsAdmin()) { + DataSetTableDTO withPermission = getWithPermission(datasetTable.getId(), user.getUserId()); + if (ObjectUtils.isEmpty(withPermission.getPrivileges()) || !withPermission.getPrivileges().contains("use")) { + DEException.throwException( + Translator.get("i18n_dataset_no_permission") + String.format(":table name [%s]", withPermission.getName())); + } + } List fields = dataSetTableFieldsService.getListByIdsEach(unionDTO.getCurrentDsField()); String[] array = fields.stream()