forked from github/dataease
Merge pull request #11125 from dataease/pr@dev-v2@fix_app-import-filter
fix(仪表板): 修复应用导入过滤组件自动匹配场景匹配结果不对问题
This commit is contained in:
commit
fa3b7403e1
@ -2,7 +2,6 @@ package io.dataease.visualization.server;
|
|||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.google.gson.Gson;
|
|
||||||
import io.dataease.api.dataset.union.DatasetGroupInfoDTO;
|
import io.dataease.api.dataset.union.DatasetGroupInfoDTO;
|
||||||
import io.dataease.api.visualization.request.VisualizationAppExportRequest;
|
import io.dataease.api.visualization.request.VisualizationAppExportRequest;
|
||||||
import io.dataease.api.visualization.vo.*;
|
import io.dataease.api.visualization.vo.*;
|
||||||
@ -18,10 +17,6 @@ import io.dataease.datasource.dao.auto.entity.CoreDatasource;
|
|||||||
import io.dataease.datasource.dao.auto.mapper.CoreDatasourceMapper;
|
import io.dataease.datasource.dao.auto.mapper.CoreDatasourceMapper;
|
||||||
import io.dataease.datasource.provider.ApiUtils;
|
import io.dataease.datasource.provider.ApiUtils;
|
||||||
import io.dataease.datasource.provider.ExcelUtils;
|
import io.dataease.datasource.provider.ExcelUtils;
|
||||||
import io.dataease.extensions.datasource.dto.DatasetTableDTO;
|
|
||||||
import io.dataease.extensions.datasource.dto.DatasetTableFieldDTO;
|
|
||||||
import io.dataease.extensions.datasource.dto.DatasourceDTO;
|
|
||||||
import io.dataease.extensions.datasource.dto.DatasourceRequest;
|
|
||||||
import io.dataease.extensions.datasource.vo.DatasourceConfiguration;
|
import io.dataease.extensions.datasource.vo.DatasourceConfiguration;
|
||||||
import io.dataease.extensions.view.dto.ChartViewDTO;
|
import io.dataease.extensions.view.dto.ChartViewDTO;
|
||||||
import io.dataease.api.template.dto.TemplateManageFileDTO;
|
import io.dataease.api.template.dto.TemplateManageFileDTO;
|
||||||
@ -39,7 +34,6 @@ import io.dataease.commons.constants.OptConstants;
|
|||||||
import io.dataease.constant.CommonConstants;
|
import io.dataease.constant.CommonConstants;
|
||||||
import io.dataease.constant.LogOT;
|
import io.dataease.constant.LogOT;
|
||||||
import io.dataease.exception.DEException;
|
import io.dataease.exception.DEException;
|
||||||
import io.dataease.i18n.Translator;
|
|
||||||
import io.dataease.license.config.XpackInteract;
|
import io.dataease.license.config.XpackInteract;
|
||||||
import io.dataease.log.DeLog;
|
import io.dataease.log.DeLog;
|
||||||
import io.dataease.model.BusiNodeRequest;
|
import io.dataease.model.BusiNodeRequest;
|
||||||
@ -52,7 +46,6 @@ import io.dataease.template.dao.auto.mapper.VisualizationTemplateMapper;
|
|||||||
import io.dataease.template.dao.ext.ExtVisualizationTemplateMapper;
|
import io.dataease.template.dao.ext.ExtVisualizationTemplateMapper;
|
||||||
import io.dataease.template.manage.TemplateCenterManage;
|
import io.dataease.template.manage.TemplateCenterManage;
|
||||||
import io.dataease.utils.*;
|
import io.dataease.utils.*;
|
||||||
import io.dataease.visualization.dao.auto.entity.CoreStore;
|
|
||||||
import io.dataease.visualization.dao.auto.entity.DataVisualizationInfo;
|
import io.dataease.visualization.dao.auto.entity.DataVisualizationInfo;
|
||||||
import io.dataease.visualization.dao.auto.entity.VisualizationWatermark;
|
import io.dataease.visualization.dao.auto.entity.VisualizationWatermark;
|
||||||
import io.dataease.visualization.dao.auto.mapper.DataVisualizationInfoMapper;
|
import io.dataease.visualization.dao.auto.mapper.DataVisualizationInfoMapper;
|
||||||
@ -323,6 +316,34 @@ public class DataVisualizationServer implements DataVisualizationApi {
|
|||||||
LogUtil.error(e);
|
LogUtil.error(e);
|
||||||
DEException.throwException(e);
|
DEException.throwException(e);
|
||||||
}
|
}
|
||||||
|
// 更换主数据内容
|
||||||
|
AtomicReference<String> componentDataStr = new AtomicReference<>(request.getComponentData());
|
||||||
|
dsGroupIdMap.forEach((key,value) ->{
|
||||||
|
componentDataStr.set(componentDataStr.get().replaceAll(key.toString(), value.toString()));
|
||||||
|
});
|
||||||
|
dsTableIdMap.forEach((key,value) ->{
|
||||||
|
componentDataStr.set(componentDataStr.get().replaceAll(key.toString(), value.toString()));
|
||||||
|
});
|
||||||
|
|
||||||
|
dsTableFieldsIdMap.forEach((key,value) ->{
|
||||||
|
componentDataStr.set(componentDataStr.get().replaceAll(key.toString(), value.toString()));
|
||||||
|
});
|
||||||
|
|
||||||
|
datasourceIdMap.forEach((key,value) ->{
|
||||||
|
componentDataStr.set(componentDataStr.get().replaceAll(key.toString(), value.toString()));
|
||||||
|
//表名映射更新
|
||||||
|
Map<String,String> appDsTableNamesMap = dsTableNamesMap.get(key);
|
||||||
|
Map<String,String> 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()));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
DataVisualizationInfo visualizationInfo = new DataVisualizationInfo();
|
DataVisualizationInfo visualizationInfo = new DataVisualizationInfo();
|
||||||
BeanUtils.copyBean(visualizationInfo, request);
|
BeanUtils.copyBean(visualizationInfo, request);
|
||||||
@ -587,6 +608,7 @@ public class DataVisualizationServer implements DataVisualizationApi {
|
|||||||
extendDataInfo.put(newViewId, extendDataDTO);
|
extendDataInfo.put(newViewId, extendDataDTO);
|
||||||
templateData = templateData.replaceAll(originViewId, newViewId.toString());
|
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);
|
canvasViewInfo.put(chartView.getId(), chartView);
|
||||||
|
Loading…
Reference in New Issue
Block a user