diff --git a/core/core-backend/src/main/java/io/dataease/visualization/server/DataVisualizationServer.java b/core/core-backend/src/main/java/io/dataease/visualization/server/DataVisualizationServer.java index 0f9b83d565..cda50020cd 100644 --- a/core/core-backend/src/main/java/io/dataease/visualization/server/DataVisualizationServer.java +++ b/core/core-backend/src/main/java/io/dataease/visualization/server/DataVisualizationServer.java @@ -3,8 +3,22 @@ package io.dataease.visualization.server; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import io.dataease.api.dataset.union.DatasetGroupInfoDTO; +import io.dataease.api.template.dto.TemplateManageFileDTO; +import io.dataease.api.template.dto.VisualizationTemplateExtendDataDTO; +import io.dataease.api.visualization.DataVisualizationApi; +import io.dataease.api.visualization.dto.VisualizationViewTableDTO; +import io.dataease.api.visualization.request.DataVisualizationBaseRequest; import io.dataease.api.visualization.request.VisualizationAppExportRequest; +import io.dataease.api.visualization.request.VisualizationWorkbranchQueryRequest; import io.dataease.api.visualization.vo.*; +import io.dataease.chart.dao.auto.entity.CoreChartView; +import io.dataease.chart.dao.auto.mapper.CoreChartViewMapper; +import io.dataease.chart.manage.ChartDataManage; +import io.dataease.chart.manage.ChartViewManege; +import io.dataease.commons.constants.DataVisualizationConstants; +import io.dataease.commons.constants.OptConstants; +import io.dataease.constant.CommonConstants; +import io.dataease.constant.LogOT; import io.dataease.dataset.dao.auto.entity.CoreDatasetGroup; import io.dataease.dataset.dao.auto.entity.CoreDatasetTable; import io.dataease.dataset.dao.auto.entity.CoreDatasetTableField; @@ -17,23 +31,9 @@ import io.dataease.datasource.dao.auto.entity.CoreDatasource; import io.dataease.datasource.dao.auto.mapper.CoreDatasourceMapper; import io.dataease.datasource.provider.ApiUtils; import io.dataease.datasource.provider.ExcelUtils; +import io.dataease.exception.DEException; import io.dataease.extensions.datasource.vo.DatasourceConfiguration; import io.dataease.extensions.view.dto.ChartViewDTO; -import io.dataease.api.template.dto.TemplateManageFileDTO; -import io.dataease.api.template.dto.VisualizationTemplateExtendDataDTO; -import io.dataease.api.visualization.DataVisualizationApi; -import io.dataease.api.visualization.dto.VisualizationViewTableDTO; -import io.dataease.api.visualization.request.DataVisualizationBaseRequest; -import io.dataease.api.visualization.request.VisualizationWorkbranchQueryRequest; -import io.dataease.chart.dao.auto.entity.CoreChartView; -import io.dataease.chart.dao.auto.mapper.CoreChartViewMapper; -import io.dataease.chart.manage.ChartDataManage; -import io.dataease.chart.manage.ChartViewManege; -import io.dataease.commons.constants.DataVisualizationConstants; -import io.dataease.commons.constants.OptConstants; -import io.dataease.constant.CommonConstants; -import io.dataease.constant.LogOT; -import io.dataease.exception.DEException; import io.dataease.license.config.XpackInteract; import io.dataease.log.DeLog; import io.dataease.model.BusiNodeRequest; @@ -165,7 +165,17 @@ public class DataVisualizationServer implements DataVisualizationApi { result.setReportFilterInfo(reportFilterInfo); } } - + if (ObjectUtils.isNotEmpty(request.getShowWatermark()) && !request.getShowWatermark()) { + VisualizationWatermarkVO watermarkInfo = result.getWatermarkInfo(); + String settingContent = null; + if (ObjectUtils.isNotEmpty(watermarkInfo) && StringUtils.isNotBlank(settingContent = watermarkInfo.getSettingContent())) { + Map map = JsonUtil.parse(settingContent, Map.class); + map.put("enable", false); + settingContent = JsonUtil.toJSONString(map).toString(); + watermarkInfo.setSettingContent(settingContent); + result.setWatermarkInfo(watermarkInfo); + } + } return result; } else { DEException.throwException("资源不存在或已经被删除..."); @@ -176,44 +186,44 @@ public class DataVisualizationServer implements DataVisualizationApi { @DeLog(id = "#p0.id", pid = "#p0.pid", ot = LogOT.CREATE, stExp = "#p0.type") @Override @Transactional - public String saveCanvas(DataVisualizationBaseRequest request) throws Exception{ + public String saveCanvas(DataVisualizationBaseRequest request) throws Exception { boolean isAppSave = false; Long time = System.currentTimeMillis(); // 如果是应用 则新进行应用校验 数据集名称和 数据源名称校验 VisualizationExport2AppVO appData = request.getAppData(); - Map dsGroupIdMap = new HashMap<>(); + Map dsGroupIdMap = new HashMap<>(); List newDsGroupInfo = new ArrayList<>(); - Map dsTableIdMap = new HashMap<>(); - Map dsTableFieldsIdMap = new HashMap<>(); + Map dsTableIdMap = new HashMap<>(); + Map dsTableFieldsIdMap = new HashMap<>(); List dsTableFieldsList = new ArrayList(); - Map datasourceIdMap = new HashMap<>(); - Map> dsTableNamesMap = new HashMap<>(); + Map datasourceIdMap = new HashMap<>(); + Map> dsTableNamesMap = new HashMap<>(); List newDatasourceId = new ArrayList<>(); - if(appData != null){ + if (appData != null) { isAppSave = true; try { - List appCoreDatasourceVO = appData.getDatasourceInfo(); + List appCoreDatasourceVO = appData.getDatasourceInfo(); // app 数据源 excel 表名映射 - appCoreDatasourceVO.forEach(datasourceOld ->{ + appCoreDatasourceVO.forEach(datasourceOld -> { newDatasourceId.add(datasourceOld.getSystemDatasourceId()); // Excel 数据表明映射 if (StringUtils.isNotEmpty(datasourceOld.getConfiguration())) { - if( datasourceOld.getType().equals(DatasourceConfiguration.DatasourceType.Excel.name())){ - dsTableNamesMap.put(datasourceOld.getId(),ExcelUtils.getTableNamesMap(datasourceOld.getConfiguration())); - }else if(datasourceOld.getType().equals(DatasourceConfiguration.DatasourceType.API.name())){ + if (datasourceOld.getType().equals(DatasourceConfiguration.DatasourceType.Excel.name())) { + dsTableNamesMap.put(datasourceOld.getId(), ExcelUtils.getTableNamesMap(datasourceOld.getConfiguration())); + } else if (datasourceOld.getType().equals(DatasourceConfiguration.DatasourceType.API.name())) { dsTableNamesMap.put(datasourceOld.getId(), ApiUtils.getTableNamesMap(datasourceOld.getConfiguration())); } } }); List systemDatasource = coreDatasourceMapper.selectBatchIds(newDatasourceId); - systemDatasource.forEach(datasourceNew ->{ + systemDatasource.forEach(datasourceNew -> { // Excel 数据表明映射 if (StringUtils.isNotEmpty(datasourceNew.getConfiguration())) { - if(datasourceNew.getType().equals(DatasourceConfiguration.DatasourceType.Excel.name())){ - dsTableNamesMap.put(datasourceNew.getId(),ExcelUtils.getTableNamesMap(datasourceNew.getConfiguration())); - }else if(datasourceNew.getType().equals(DatasourceConfiguration.DatasourceType.API.name())){ + if (datasourceNew.getType().equals(DatasourceConfiguration.DatasourceType.Excel.name())) { + dsTableNamesMap.put(datasourceNew.getId(), ExcelUtils.getTableNamesMap(datasourceNew.getConfiguration())); + } else if (datasourceNew.getType().equals(DatasourceConfiguration.DatasourceType.API.name())) { dsTableNamesMap.put(datasourceNew.getId(), ApiUtils.getTableNamesMap(datasourceNew.getConfiguration())); } } @@ -244,7 +254,7 @@ public class DataVisualizationServer implements DataVisualizationApi { datasetNewRequest.setPid(datasetFolderNewId); try { newDsGroupInfo.add(datasetNewRequest); - dsGroupIdMap.put(oldId,newId); + dsGroupIdMap.put(oldId, newId); } catch (Exception e) { throw new RuntimeException(e); } @@ -256,56 +266,56 @@ public class DataVisualizationServer implements DataVisualizationApi { Long oldId = appCoreDatasetTableVO.getId(); Long newId = IDUtils.snowID(); CoreDatasetTable datasetTable = new CoreDatasetTable(); - BeanUtils.copyBean(datasetTable,appCoreDatasetTableVO); + BeanUtils.copyBean(datasetTable, appCoreDatasetTableVO); datasetTable.setDatasetGroupId(dsGroupIdMap.get(datasetTable.getDatasetGroupId())); datasetTable.setId(newId); datasetTable.setDatasourceId(datasourceIdMap.get(datasetTable.getDatasourceId())); coreDatasetTableMapper.insert(datasetTable); - dsTableIdMap.put(oldId,newId); + dsTableIdMap.put(oldId, newId); }); // 新建数据字段 - appData.getDatasetTableFieldsInfo().forEach( appDsTableFields ->{ + appData.getDatasetTableFieldsInfo().forEach(appDsTableFields -> { Long oldId = appDsTableFields.getId(); Long newId = IDUtils.snowID(); CoreDatasetTableField dsDsField = new CoreDatasetTableField(); - BeanUtils.copyBean(dsDsField,appDsTableFields); + BeanUtils.copyBean(dsDsField, appDsTableFields); dsDsField.setDatasetGroupId(dsGroupIdMap.get(dsDsField.getDatasetGroupId())); dsDsField.setDatasetTableId(dsTableIdMap.get(dsDsField.getDatasetTableId())); dsDsField.setDatasourceId(datasourceIdMap.get(dsDsField.getDatasourceId())); dsDsField.setId(newId); dsTableFieldsList.add(dsDsField); - dsTableFieldsIdMap.put(oldId,newId); + dsTableFieldsIdMap.put(oldId, newId); }); // dsTableFields 中存在计算字段在OriginName中 也需要替换 - dsTableFieldsList.forEach(dsTableFields ->{ - dsTableFieldsIdMap.forEach((key,value) ->{ - dsTableFields.setOriginName(dsTableFields.getOriginName().replaceAll(key.toString(),value.toString())); + dsTableFieldsList.forEach(dsTableFields -> { + dsTableFieldsIdMap.forEach((key, value) -> { + dsTableFields.setOriginName(dsTableFields.getOriginName().replaceAll(key.toString(), value.toString())); }); coreDatasetTableFieldMapper.insert(dsTableFields); }); // 持久化数据集 - newDsGroupInfo.forEach(dsGroup ->{ - dsTableIdMap.forEach((key,value) ->{ - dsGroup.setInfo(dsGroup.getInfo().replaceAll(key.toString(),value.toString())); + newDsGroupInfo.forEach(dsGroup -> { + dsTableIdMap.forEach((key, value) -> { + dsGroup.setInfo(dsGroup.getInfo().replaceAll(key.toString(), value.toString())); }); - dsTableFieldsIdMap.forEach((key,value) ->{ - dsGroup.setInfo(dsGroup.getInfo().replaceAll(key.toString(),value.toString())); + dsTableFieldsIdMap.forEach((key, value) -> { + dsGroup.setInfo(dsGroup.getInfo().replaceAll(key.toString(), value.toString())); }); - datasourceIdMap.forEach((key,value) ->{ - dsGroup.setInfo(dsGroup.getInfo().replaceAll(key.toString(),value.toString())); + datasourceIdMap.forEach((key, value) -> { + dsGroup.setInfo(dsGroup.getInfo().replaceAll(key.toString(), value.toString())); //表名映射更新 - Map appDsTableNamesMap = dsTableNamesMap.get(key); - Map systemDsTableNamesMap = dsTableNamesMap.get(value); - if(!CollectionUtils.isEmpty(appDsTableNamesMap) && !CollectionUtils.isEmpty(systemDsTableNamesMap) ){ - appDsTableNamesMap.forEach((keyName,valueName) ->{ - if(StringUtils.isNotEmpty(systemDsTableNamesMap.get(keyName))){ - dsGroup.setInfo(dsGroup.getInfo().replaceAll(valueName,systemDsTableNamesMap.get(keyName))); + Map appDsTableNamesMap = dsTableNamesMap.get(key); + Map systemDsTableNamesMap = dsTableNamesMap.get(value); + if (!CollectionUtils.isEmpty(appDsTableNamesMap) && !CollectionUtils.isEmpty(systemDsTableNamesMap)) { + appDsTableNamesMap.forEach((keyName, valueName) -> { + if (StringUtils.isNotEmpty(systemDsTableNamesMap.get(keyName))) { + dsGroup.setInfo(dsGroup.getInfo().replaceAll(valueName, systemDsTableNamesMap.get(keyName))); } }); } @@ -316,31 +326,31 @@ public class DataVisualizationServer implements DataVisualizationApi { datasetGroupManage.innerSave(dsGroup); }); - }catch (Exception e){ + } catch (Exception e) { LogUtil.error(e); DEException.throwException(e); } // 更换主数据内容 AtomicReference componentDataStr = new AtomicReference<>(request.getComponentData()); - dsGroupIdMap.forEach((key,value) ->{ + dsGroupIdMap.forEach((key, value) -> { componentDataStr.set(componentDataStr.get().replaceAll(key.toString(), value.toString())); }); - dsTableIdMap.forEach((key,value) ->{ + dsTableIdMap.forEach((key, value) -> { componentDataStr.set(componentDataStr.get().replaceAll(key.toString(), value.toString())); }); - dsTableFieldsIdMap.forEach((key,value) ->{ + dsTableFieldsIdMap.forEach((key, value) -> { componentDataStr.set(componentDataStr.get().replaceAll(key.toString(), value.toString())); }); - datasourceIdMap.forEach((key,value) ->{ + datasourceIdMap.forEach((key, value) -> { componentDataStr.set(componentDataStr.get().replaceAll(key.toString(), value.toString())); //表名映射更新 - Map appDsTableNamesMap = dsTableNamesMap.get(key); - Map systemDsTableNamesMap = dsTableNamesMap.get(value); - if(!CollectionUtils.isEmpty(appDsTableNamesMap) && !CollectionUtils.isEmpty(systemDsTableNamesMap) ){ - appDsTableNamesMap.forEach((keyName,valueName) ->{ - if(StringUtils.isNotEmpty(systemDsTableNamesMap.get(keyName))){ + Map appDsTableNamesMap = dsTableNamesMap.get(key); + Map systemDsTableNamesMap = dsTableNamesMap.get(value); + if (!CollectionUtils.isEmpty(appDsTableNamesMap) && !CollectionUtils.isEmpty(systemDsTableNamesMap)) { + appDsTableNamesMap.forEach((keyName, valueName) -> { + if (StringUtils.isNotEmpty(systemDsTableNamesMap.get(keyName))) { componentDataStr.set(componentDataStr.get().replaceAll(key.toString(), value.toString())); } }); @@ -366,28 +376,28 @@ public class DataVisualizationServer implements DataVisualizationApi { request.setId(newDvId); // 还原ID信息 Map canvasViews = request.getCanvasViewInfo(); - if(isAppSave){ + if (isAppSave) { Map canvasViewsStr = VisualizationUtils.viewTransToStr(canvasViews); - canvasViewsStr.forEach((viewId,viewInfoStr) ->{ + canvasViewsStr.forEach((viewId, viewInfoStr) -> { AtomicReference mutableViewInfoStr = new AtomicReference<>(viewInfoStr); - datasourceIdMap.forEach((key,value) ->{ + datasourceIdMap.forEach((key, value) -> { mutableViewInfoStr.set(mutableViewInfoStr.get().replaceAll(key.toString(), value.toString())); }); - dsTableIdMap.forEach((key,value) ->{ + dsTableIdMap.forEach((key, value) -> { mutableViewInfoStr.set(mutableViewInfoStr.get().replaceAll(key.toString(), value.toString())); }); - dsTableFieldsIdMap.forEach((key,value) ->{ + dsTableFieldsIdMap.forEach((key, value) -> { mutableViewInfoStr.set(mutableViewInfoStr.get().replaceAll(key.toString(), value.toString())); }); - dsGroupIdMap.forEach((key,value) ->{ + dsGroupIdMap.forEach((key, value) -> { mutableViewInfoStr.set(mutableViewInfoStr.get().replaceAll(key.toString(), value.toString())); }); canvasViewsStr.put(viewId, mutableViewInfoStr.get()); }); canvasViews = VisualizationUtils.viewTransToObj(canvasViewsStr); - canvasViews.forEach((key,viewInfo) ->{ + canvasViews.forEach((key, viewInfo) -> { viewInfo.setDataFrom("dataset"); - if(viewInfo.getTableId() == null){ + if (viewInfo.getTableId() == null) { viewInfo.setTableId(viewInfo.getSourceTableId()); } }); @@ -406,7 +416,7 @@ public class DataVisualizationServer implements DataVisualizationApi { queryWrapper.eq("pid", datasetFolderPid); if (coreDatasetGroupMapper.exists(queryWrapper)) { return "repeat"; - }else{ + } else { return "success"; } } @@ -536,7 +546,7 @@ public class DataVisualizationServer implements DataVisualizationApi { @Override public DataVisualizationVO decompression(DataVisualizationBaseRequest request) throws Exception { - try{ + try { Long newDvId = IDUtils.snowID(); String newFrom = request.getNewFrom(); String templateStyle = null; @@ -586,18 +596,18 @@ public class DataVisualizationServer implements DataVisualizationApi { // 模板市场记录 coreOptRecentManage.saveOpt(request.getResourceName(), OptConstants.OPT_RESOURCE_TYPE.TEMPLATE, OptConstants.OPT_TYPE.NEW); } - if(StringUtils.isNotEmpty(appDataStr) && appDataStr.length()>10){ - try{ - VisualizationExport2AppVO appDataFormat = JsonUtil.parseObject(appDataStr,VisualizationExport2AppVO.class); - String dvInfo = appDataFormat.getVisualizationInfo(); - VisualizationBaseInfoVO baseInfoVO = JsonUtil.parseObject(dvInfo,VisualizationBaseInfoVO.class); + if (StringUtils.isNotEmpty(appDataStr) && appDataStr.length() > 10) { + try { + VisualizationExport2AppVO appDataFormat = JsonUtil.parseObject(appDataStr, VisualizationExport2AppVO.class); + String dvInfo = appDataFormat.getVisualizationInfo(); + VisualizationBaseInfoVO baseInfoVO = JsonUtil.parseObject(dvInfo, VisualizationBaseInfoVO.class); Long sourceDvId = baseInfoVO.getId(); - appDataStr = appDataStr.replaceAll(sourceDvId.toString(), newDvId.toString()); - }catch (Exception e){ + appDataStr = appDataStr.replaceAll(sourceDvId.toString(), newDvId.toString()); + } catch (Exception e) { LogUtil.error(e); appDataStr = null; } - }else{ + } else { appDataStr = null; } // 解析动态数据 @@ -632,9 +642,9 @@ public class DataVisualizationServer implements DataVisualizationApi { VisualizationTemplateExtendDataDTO extendDataDTO = new VisualizationTemplateExtendDataDTO(newDvId, newViewId, originViewData); extendDataInfo.put(newViewId, extendDataDTO); templateData = templateData.replaceAll(originViewId, newViewId.toString()); - if(StringUtils.isNotEmpty(appDataStr)){ + if (StringUtils.isNotEmpty(appDataStr)) { chartView.setTableId(chartView.getSourceTableId()); - appDataStr = appDataStr.replaceAll(originViewId, newViewId.toString()); + appDataStr = appDataStr.replaceAll(originViewId, newViewId.toString()); } canvasViewInfo.put(chartView.getId(), chartView); //插入模板数据 此处预先插入减少数据交互量 @@ -645,8 +655,8 @@ public class DataVisualizationServer implements DataVisualizationApi { request.setCanvasStyleData(templateStyle); //Store static resource into the server staticResourceServer.saveFilesToServe(staticResource); - return new DataVisualizationVO(newDvId, name, dvType, version, templateStyle, templateData,appDataStr, canvasViewInfo, null); - }catch (Exception e){ + return new DataVisualizationVO(newDvId, name, dvType, version, templateStyle, templateData, appDataStr, canvasViewInfo, null); + } catch (Exception e) { e.printStackTrace(); DEException.throwException("解析错误"); return null; @@ -694,7 +704,7 @@ public class DataVisualizationServer implements DataVisualizationApi { datasourceTaskVOInfo = appTemplateMapper.findAppDatasourceTaskInfo(dsIds); } - if(CollectionUtils.isEmpty(datasourceVOInfo)){ + if (CollectionUtils.isEmpty(datasourceVOInfo)) { DEException.throwException("当前不存在数据源无法导出"); } diff --git a/core/core-backend/src/main/resources/db/migration/V2.10.1__ddl.sql b/core/core-backend/src/main/resources/db/migration/V2.10.1__ddl.sql index 076dc4e9e8..4dc389ed03 100644 --- a/core/core-backend/src/main/resources/db/migration/V2.10.1__ddl.sql +++ b/core/core-backend/src/main/resources/db/migration/V2.10.1__ddl.sql @@ -1,5 +1,10 @@ ALTER TABLE `visualization_outer_params_info` - ADD COLUMN `required` tinyint(1) DEFAULT 0 COMMENT '是否必填', -ADD COLUMN `default_value` longtext NULL COMMENT '默认值 JSON格式', -ADD COLUMN `enabled_default` tinyint(1) NULL DEFAULT 0 COMMENT '是否启用默认值'; -update visualization_outer_params_info set required =0; + ADD COLUMN `required` tinyint(1) DEFAULT 0 COMMENT '是否必填', + ADD COLUMN `default_value` longtext NULL COMMENT '默认值 JSON格式', + ADD COLUMN `enabled_default` tinyint(1) NULL DEFAULT 0 COMMENT '是否启用默认值'; +update visualization_outer_params_info +set required =0; + + +ALTER TABLE `xpack_report_info` + ADD COLUMN `show_watermark` tinyint(1) NOT NULL DEFAULT 0 COMMENT '显示水印' AFTER `rid`; diff --git a/core/core-frontend/src/utils/canvasUtils.ts b/core/core-frontend/src/utils/canvasUtils.ts index 6a1a24ffa8..7ec1e6e9c0 100644 --- a/core/core-frontend/src/utils/canvasUtils.ts +++ b/core/core-frontend/src/utils/canvasUtils.ts @@ -273,7 +273,16 @@ export function initCanvasDataPrepare(dvId, busiFlag, callBack) { let attachInfo = { source: 'main' } if (dvMainStore.canvasAttachInfo && !!dvMainStore.canvasAttachInfo.taskId) { attachInfo = { source: 'report', taskId: dvMainStore.canvasAttachInfo.taskId } + const showWatermarkExist = + dvMainStore.canvasAttachInfo.hasOwnProperty('showWatermark') && + typeof dvMainStore.canvasAttachInfo.showWatermark !== 'undefined' && + dvMainStore.canvasAttachInfo.showWatermark !== null + if (showWatermarkExist) { + const enable = dvMainStore.canvasAttachInfo.showWatermark === 'true' + attachInfo['showWatermark'] = enable + } } + method(dvId, busiFlagCustom, attachInfo).then(res => { const canvasInfo = res.data const watermarkInfo = { diff --git a/core/core-frontend/src/views/data-visualization/PreviewCanvas.vue b/core/core-frontend/src/views/data-visualization/PreviewCanvas.vue index f9fe200f0e..e88fcb6915 100644 --- a/core/core-frontend/src/views/data-visualization/PreviewCanvas.vue +++ b/core/core-frontend/src/views/data-visualization/PreviewCanvas.vue @@ -162,9 +162,9 @@ onMounted(async () => { }) await new Promise(r => (p = r)) const dvId = embeddedStore.dvId || router.currentRoute.value.query.dvId - const { dvType, callBackFlag, taskId } = router.currentRoute.value.query + const { dvType, callBackFlag, taskId, showWatermark } = router.currentRoute.value.query if (!!taskId) { - dvMainStore.setCanvasAttachInfo({ taskId: taskId }) + dvMainStore.setCanvasAttachInfo({ taskId, showWatermark }) } if (dvId) { loadCanvasDataAsync(dvId, dvType) diff --git a/de-xpack b/de-xpack index 6e7f7bb108..d883d74073 160000 --- a/de-xpack +++ b/de-xpack @@ -1 +1 @@ -Subproject commit 6e7f7bb108cebaf4b8ae284a91ba87cafb33a6fa +Subproject commit d883d74073867950a4347dc50b417c3093298e60 diff --git a/sdk/api/api-base/src/main/java/io/dataease/api/report/dto/ReportCreator.java b/sdk/api/api-base/src/main/java/io/dataease/api/report/dto/ReportCreator.java index d48b58a83c..b473fd39d9 100644 --- a/sdk/api/api-base/src/main/java/io/dataease/api/report/dto/ReportCreator.java +++ b/sdk/api/api-base/src/main/java/io/dataease/api/report/dto/ReportCreator.java @@ -25,6 +25,8 @@ public class ReportCreator implements Serializable { @JsonSerialize(using = ToStringSerializer.class) private Long rid; + private Boolean showWatermark; + private Integer format; private List viewIdList; diff --git a/sdk/api/api-base/src/main/java/io/dataease/api/report/vo/ReportInfoVO.java b/sdk/api/api-base/src/main/java/io/dataease/api/report/vo/ReportInfoVO.java index 0da44dd137..7e9bfe48c6 100644 --- a/sdk/api/api-base/src/main/java/io/dataease/api/report/vo/ReportInfoVO.java +++ b/sdk/api/api-base/src/main/java/io/dataease/api/report/vo/ReportInfoVO.java @@ -27,6 +27,8 @@ public class ReportInfoVO implements Serializable { @JsonSerialize(using = ToStringSerializer.class) private Long rid; + private Boolean showWatermark; + private Integer format; private List viewIdList; diff --git a/sdk/api/api-base/src/main/java/io/dataease/api/visualization/request/DataVisualizationBaseRequest.java b/sdk/api/api-base/src/main/java/io/dataease/api/visualization/request/DataVisualizationBaseRequest.java index 04f61e5bf6..9049cb77f6 100644 --- a/sdk/api/api-base/src/main/java/io/dataease/api/visualization/request/DataVisualizationBaseRequest.java +++ b/sdk/api/api-base/src/main/java/io/dataease/api/visualization/request/DataVisualizationBaseRequest.java @@ -42,6 +42,8 @@ public class DataVisualizationBaseRequest extends DataVisualizationVO { @JsonSerialize(using = ToStringSerializer.class) private Long taskId; + private Boolean showWatermark; + @JsonSerialize(using = ToStringSerializer.class) // 数据集分组PID private Long datasetFolderPid;