mirror of
https://github.com/tencentmusic/supersonic.git
synced 2025-12-10 11:07:06 +00:00
[fix][headless]Fix table name of SqlQuery.
This commit is contained in:
@@ -2,7 +2,6 @@ package com.tencent.supersonic.headless.core.translator.parser;
|
||||
|
||||
import com.tencent.supersonic.common.jsqlparser.SqlReplaceHelper;
|
||||
import com.tencent.supersonic.common.jsqlparser.SqlSelectHelper;
|
||||
import com.tencent.supersonic.common.pojo.Constants;
|
||||
import com.tencent.supersonic.headless.api.pojo.response.DimSchemaResp;
|
||||
import com.tencent.supersonic.headless.api.pojo.response.SemanticSchemaResp;
|
||||
import com.tencent.supersonic.headless.core.pojo.OntologyQuery;
|
||||
@@ -41,9 +40,8 @@ public class DimExpressionParser implements QueryParser {
|
||||
|
||||
Map<String, String> bizName2Expr = getDimensionExpressions(semanticSchema, ontologyQuery);
|
||||
if (!CollectionUtils.isEmpty(bizName2Expr)) {
|
||||
String sql = SqlReplaceHelper.replaceSqlByExpression(
|
||||
Constants.TABLE_PREFIX + queryStatement.getDataSetId(), sqlQuery.getSql(),
|
||||
bizName2Expr);
|
||||
String sql = SqlReplaceHelper.replaceSqlByExpression(sqlQuery.getTable(),
|
||||
sqlQuery.getSql(), bizName2Expr);
|
||||
sqlQuery.setSql(sql);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,6 @@ package com.tencent.supersonic.headless.core.translator.parser;
|
||||
|
||||
import com.tencent.supersonic.common.jsqlparser.SqlReplaceHelper;
|
||||
import com.tencent.supersonic.common.jsqlparser.SqlSelectHelper;
|
||||
import com.tencent.supersonic.common.pojo.Constants;
|
||||
import com.tencent.supersonic.headless.api.pojo.Measure;
|
||||
import com.tencent.supersonic.headless.api.pojo.enums.MetricDefineType;
|
||||
import com.tencent.supersonic.headless.api.pojo.response.MetricSchemaResp;
|
||||
@@ -40,9 +39,8 @@ public class MetricExpressionParser implements QueryParser {
|
||||
|
||||
Map<String, String> bizName2Expr = getMetricExpressions(semanticSchema, ontologyQuery);
|
||||
if (!CollectionUtils.isEmpty(bizName2Expr)) {
|
||||
String sql = SqlReplaceHelper.replaceSqlByExpression(
|
||||
Constants.TABLE_PREFIX + queryStatement.getDataSetId(), sqlQuery.getSql(),
|
||||
bizName2Expr);
|
||||
String sql = SqlReplaceHelper.replaceSqlByExpression(sqlQuery.getTable(),
|
||||
sqlQuery.getSql(), bizName2Expr);
|
||||
sqlQuery.setSql(sql);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -77,7 +77,7 @@ public class SqlQueryParser implements QueryParser {
|
||||
if (StringUtils.isEmpty(tableName)) {
|
||||
return;
|
||||
}
|
||||
sqlQuery.setTable(tableName.toLowerCase());
|
||||
sqlQuery.setTable(Constants.TABLE_PREFIX + queryStatement.getDataSetId());
|
||||
SqlGenerateUtils sqlGenerateUtils = ContextUtils.getBean(SqlGenerateUtils.class);
|
||||
SemanticSchemaResp semanticSchema = queryStatement.getSemanticSchema();
|
||||
if (!sqlGenerateUtils.isSupportWith(
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.tencent.supersonic.headless.server.facade.service.impl;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.common.collect.Sets;
|
||||
import com.tencent.supersonic.common.pojo.Constants;
|
||||
import com.tencent.supersonic.common.pojo.QueryColumn;
|
||||
import com.tencent.supersonic.common.pojo.User;
|
||||
import com.tencent.supersonic.common.pojo.enums.TaskStatusEnum;
|
||||
@@ -323,6 +324,7 @@ public class S2SemanticLayerService implements SemanticLayerService {
|
||||
DataSetResp dataSetResp = dataSetService.getDataSet(querySqlReq.getDataSetId());
|
||||
queryStatement.setDataSetId(dataSetResp.getId());
|
||||
queryStatement.setDataSetName(dataSetResp.getName());
|
||||
sqlQuery.setTable(Constants.TABLE_PREFIX + dataSetResp.getId());
|
||||
}
|
||||
return queryStatement;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user