diff --git a/backend/src/main/java/io/dataease/controller/dataset/DataSetTableFieldController.java b/backend/src/main/java/io/dataease/controller/dataset/DataSetTableFieldController.java index c46495afce..21d2dc6b19 100644 --- a/backend/src/main/java/io/dataease/controller/dataset/DataSetTableFieldController.java +++ b/backend/src/main/java/io/dataease/controller/dataset/DataSetTableFieldController.java @@ -152,11 +152,17 @@ public class DataSetTableFieldController { @DePermission(type = DePermissionType.DATASET, value = "tableId", level = ResourceAuthLevel.DATASET_LEVEL_MANAGE) @ApiOperation("保存") @PostMapping("save") - public DatasetTableField save(@RequestBody DatasetTableField datasetTableField) { + public DatasetTableField save(@RequestBody DatasetTableField datasetTableField) throws Exception { dataSetTableFieldsService.checkFieldName(datasetTableField); + // 非直连数据集需先完成数据同步 + DatasetTable datasetTable = dataSetTableService.get(datasetTableField.getTableId()); + if (datasetTable.getMode() == 1) { + if (!dataSetTableService.checkEngineTableIsExists(datasetTableField.getTableId())) { + throw new RuntimeException(Translator.get("i18n_data_not_sync")); + } + } try { // 执行一次sql,确保数据集中所有字段均能正确执行 - DatasetTable datasetTable = dataSetTableService.get(datasetTableField.getTableId()); DataSetTableRequest dataSetTableRequest = new DataSetTableRequest(); BeanUtils.copyProperties(datasetTable, dataSetTableRequest); dataSetTableService.getPreviewData(dataSetTableRequest, 1, 1, Collections.singletonList(datasetTableField), null); diff --git a/backend/src/main/java/io/dataease/controller/panel/PanelAppTemplateController.java b/backend/src/main/java/io/dataease/controller/panel/PanelAppTemplateController.java index 56d3d7e222..308d02012f 100644 --- a/backend/src/main/java/io/dataease/controller/panel/PanelAppTemplateController.java +++ b/backend/src/main/java/io/dataease/controller/panel/PanelAppTemplateController.java @@ -17,7 +17,7 @@ import java.util.List; * Date: 2022/9/8 * Description: */ -@Api(tags = "仪表板:应该关系") +@Api(tags = "仪表板:应用关系") @ApiSupport(order = 170) @RestController @RequestMapping("appTemplate") diff --git a/backend/src/main/java/io/dataease/service/panel/PanelAppTemplateService.java b/backend/src/main/java/io/dataease/service/panel/PanelAppTemplateService.java index fe726d488f..bd0b44d568 100644 --- a/backend/src/main/java/io/dataease/service/panel/PanelAppTemplateService.java +++ b/backend/src/main/java/io/dataease/service/panel/PanelAppTemplateService.java @@ -103,7 +103,7 @@ public class PanelAppTemplateService { PanelAppTemplateWithBLOBs requestTemplate = new PanelAppTemplateWithBLOBs(); BeanUtils.copyBean(requestTemplate, request); //Store static resource into the server - if (StringUtils.isNotEmpty(request.getSnapshot())) { + if (StringUtils.isNotEmpty(request.getSnapshot()) && request.getSnapshot().indexOf("static-resource") == -1) { String snapshotName = "app-template-" + UUIDUtil.getUUIDAsString() + ".jpeg"; staticResourceService.saveSingleFileToServe(snapshotName, request.getSnapshot().replace("data:image/jpeg;base64,", "")); requestTemplate.setSnapshot("/" + UPLOAD_URL_PREFIX + '/' + snapshotName); diff --git a/frontend/src/views/system/datasource/DsConfiguration.vue b/frontend/src/views/system/datasource/DsConfiguration.vue index c4362e3e78..00e4cc5360 100644 --- a/frontend/src/views/system/datasource/DsConfiguration.vue +++ b/frontend/src/views/system/datasource/DsConfiguration.vue @@ -583,8 +583,7 @@ class-name="checkbox-table" prop="originName" :label="$t('dataset.parse_filed')" - :show-overflow-tooltip="true" - width="255" + show-overflow-tooltip >