forked from github/dataease
chore: 图表SQL日志
This commit is contained in:
parent
b0a88179b2
commit
84b44127df
@ -1,13 +1,18 @@
|
|||||||
package io.dataease.chart.charts;
|
package io.dataease.chart.charts;
|
||||||
|
|
||||||
|
import io.dataease.chart.manage.ChartDataManage;
|
||||||
import io.dataease.datasource.provider.CalciteProvider;
|
import io.dataease.datasource.provider.CalciteProvider;
|
||||||
import io.dataease.extensions.view.dto.*;
|
import io.dataease.extensions.view.dto.*;
|
||||||
import io.dataease.extensions.view.model.SQLMeta;
|
import io.dataease.extensions.view.model.SQLMeta;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
public abstract class AbstractChartHandler {
|
public abstract class AbstractChartHandler {
|
||||||
|
public static Logger logger = LoggerFactory.getLogger(ChartDataManage.class);
|
||||||
|
|
||||||
public abstract <T> T formatAxis(ChartViewDTO view);
|
public abstract <T> T formatAxis(ChartViewDTO view);
|
||||||
public abstract <T extends CustomFilterResult, K extends AxisFormatResult> T customFilter(ChartViewDTO view, List<ChartExtFilterDTO> filterList, K formatResult);
|
public abstract <T extends CustomFilterResult, K extends AxisFormatResult> T customFilter(ChartViewDTO view, List<ChartExtFilterDTO> filterList, K formatResult);
|
||||||
public abstract <T extends ChartCalcDataResult> T calcChartResult(ChartViewDTO view, AxisFormatResult formatResult, CustomFilterResult filterResult, Map<String, Object> sqlMap, SQLMeta sqlMeta, CalciteProvider provider);
|
public abstract <T extends ChartCalcDataResult> T calcChartResult(ChartViewDTO view, AxisFormatResult formatResult, CustomFilterResult filterResult, Map<String, Object> sqlMap, SQLMeta sqlMeta, CalciteProvider provider);
|
||||||
|
@ -101,6 +101,7 @@ public class DefaultChartHandler extends AbstractChartHandler {
|
|||||||
String querySql = SQLProvider.createQuerySQL(sqlMeta, true, needOrder, view);
|
String querySql = SQLProvider.createQuerySQL(sqlMeta, true, needOrder, view);
|
||||||
querySql = SqlUtils.rebuildSQL(querySql, sqlMeta, crossDs, dsMap);
|
querySql = SqlUtils.rebuildSQL(querySql, sqlMeta, crossDs, dsMap);
|
||||||
datasourceRequest.setQuery(querySql);
|
datasourceRequest.setQuery(querySql);
|
||||||
|
logger.info("calcite chart sql: " + querySql);
|
||||||
List<String[]> data = (List<String[]>) provider.fetchResultField(datasourceRequest).get("data");
|
List<String[]> data = (List<String[]>) provider.fetchResultField(datasourceRequest).get("data");
|
||||||
//自定义排序
|
//自定义排序
|
||||||
data = ChartDataUtil.resultCustomSort(xAxis, data);
|
data = ChartDataUtil.resultCustomSort(xAxis, data);
|
||||||
|
@ -87,6 +87,7 @@ public class YoyChartHandler extends DefaultChartHandler {
|
|||||||
var request = new DatasourceRequest();
|
var request = new DatasourceRequest();
|
||||||
request.setDsList(dsMap);
|
request.setDsList(dsMap);
|
||||||
request.setQuery(originSql);
|
request.setQuery(originSql);
|
||||||
|
logger.info("calcite yoy sql: " + originSql);
|
||||||
// 实际过滤后的数据
|
// 实际过滤后的数据
|
||||||
var originData = (List<String[]>) provider.fetchResultField(request).get("data");
|
var originData = (List<String[]>) provider.fetchResultField(request).get("data");
|
||||||
List<String[]> resultData = new ArrayList<>();
|
List<String[]> resultData = new ArrayList<>();
|
||||||
|
@ -55,6 +55,7 @@ public class BarHandler extends YoyChartHandler {
|
|||||||
req.setDsList(dsMap);
|
req.setDsList(dsMap);
|
||||||
var assistSql = assistSQL(originSql, assistFields);
|
var assistSql = assistSQL(originSql, assistFields);
|
||||||
req.setQuery(assistSql);
|
req.setQuery(assistSql);
|
||||||
|
logger.info("calcite assistSql sql: " + assistSql);
|
||||||
var assistData = (List<String[]>) provider.fetchResultField(req).get("data");
|
var assistData = (List<String[]>) provider.fetchResultField(req).get("data");
|
||||||
result.setAssistData(assistData);
|
result.setAssistData(assistData);
|
||||||
result.setDynamicAssistFields(dynamicAssistFields);
|
result.setDynamicAssistFields(dynamicAssistFields);
|
||||||
|
@ -69,6 +69,7 @@ public class LineHandler extends YoyChartHandler {
|
|||||||
req.setDsList(dsMap);
|
req.setDsList(dsMap);
|
||||||
var assistSql = assistSQL(originSql, assistFields);
|
var assistSql = assistSQL(originSql, assistFields);
|
||||||
req.setQuery(assistSql);
|
req.setQuery(assistSql);
|
||||||
|
logger.info("calcite assistSql sql: " + assistSql);
|
||||||
var assistData = (List<String[]>) provider.fetchResultField(req).get("data");
|
var assistData = (List<String[]>) provider.fetchResultField(req).get("data");
|
||||||
result.setAssistData(assistData);
|
result.setAssistData(assistData);
|
||||||
result.setDynamicAssistFields(dynamicAssistFields);
|
result.setDynamicAssistFields(dynamicAssistFields);
|
||||||
|
@ -87,6 +87,7 @@ public class MixHandler extends YoyChartHandler {
|
|||||||
req.setDsList(dsMap);
|
req.setDsList(dsMap);
|
||||||
var assistSql = assistSQL(originSql, assistFields);
|
var assistSql = assistSQL(originSql, assistFields);
|
||||||
req.setQuery(assistSql);
|
req.setQuery(assistSql);
|
||||||
|
logger.info("calcite assistSql sql: " + assistSql);
|
||||||
var assistData = (List<String[]>) provider.fetchResultField(req).get("data");
|
var assistData = (List<String[]>) provider.fetchResultField(req).get("data");
|
||||||
leftResult.setAssistData(assistData);
|
leftResult.setAssistData(assistData);
|
||||||
leftResult.setDynamicAssistFields(leftAssistFields);
|
leftResult.setDynamicAssistFields(leftAssistFields);
|
||||||
|
@ -41,6 +41,7 @@ public class NumbericChartHandler extends DefaultChartHandler {
|
|||||||
String querySql = SQLProvider.createQuerySQL(sqlMeta, true, needOrder, view);
|
String querySql = SQLProvider.createQuerySQL(sqlMeta, true, needOrder, view);
|
||||||
querySql = SqlUtils.rebuildSQL(querySql, sqlMeta, crossDs, dsMap);
|
querySql = SqlUtils.rebuildSQL(querySql, sqlMeta, crossDs, dsMap);
|
||||||
datasourceRequest.setQuery(querySql);
|
datasourceRequest.setQuery(querySql);
|
||||||
|
logger.info("calcite chart sql: " + querySql);
|
||||||
List<String[]> data = (List<String[]>) provider.fetchResultField(datasourceRequest).get("data");
|
List<String[]> data = (List<String[]>) provider.fetchResultField(datasourceRequest).get("data");
|
||||||
boolean isdrill = filterResult
|
boolean isdrill = filterResult
|
||||||
.getFilterList()
|
.getFilterList()
|
||||||
|
@ -97,6 +97,7 @@ public class TableInfoHandler extends DefaultChartHandler {
|
|||||||
totalPageSql = SqlUtils.rebuildSQL(totalPageSql, sqlMeta, crossDs, dsMap);
|
totalPageSql = SqlUtils.rebuildSQL(totalPageSql, sqlMeta, crossDs, dsMap);
|
||||||
datasourceRequest.setQuery(totalPageSql);
|
datasourceRequest.setQuery(totalPageSql);
|
||||||
datasourceRequest.setTotalPageFlag(true);
|
datasourceRequest.setTotalPageFlag(true);
|
||||||
|
logger.info("calcite total sql: " + totalPageSql);
|
||||||
List<String[]> tmpData = (List<String[]>) provider.fetchResultField(datasourceRequest).get("data");
|
List<String[]> tmpData = (List<String[]>) provider.fetchResultField(datasourceRequest).get("data");
|
||||||
var totalItems = ObjectUtils.isEmpty(tmpData) ? 0 : Long.valueOf(tmpData.get(0)[0]);
|
var totalItems = ObjectUtils.isEmpty(tmpData) ? 0 : Long.valueOf(tmpData.get(0)[0]);
|
||||||
if (StringUtils.equalsIgnoreCase(view.getResultMode(), "custom")) {
|
if (StringUtils.equalsIgnoreCase(view.getResultMode(), "custom")) {
|
||||||
@ -109,6 +110,7 @@ public class TableInfoHandler extends DefaultChartHandler {
|
|||||||
|
|
||||||
querySql = SqlUtils.rebuildSQL(querySql, sqlMeta, crossDs, dsMap);
|
querySql = SqlUtils.rebuildSQL(querySql, sqlMeta, crossDs, dsMap);
|
||||||
datasourceRequest.setQuery(querySql);
|
datasourceRequest.setQuery(querySql);
|
||||||
|
logger.info("calcite chart sql: " + querySql);
|
||||||
List<String[]> data = (List<String[]>) provider.fetchResultField(datasourceRequest).get("data");
|
List<String[]> data = (List<String[]>) provider.fetchResultField(datasourceRequest).get("data");
|
||||||
//自定义排序
|
//自定义排序
|
||||||
data = ChartDataUtil.resultCustomSort(xAxis, data);
|
data = ChartDataUtil.resultCustomSort(xAxis, data);
|
||||||
|
Loading…
Reference in New Issue
Block a user