From 82f86a8635b296773e3cc8a740bd1f2fa49b72fd Mon Sep 17 00:00:00 2001 From: LXW <1264174498@qq.com> Date: Wed, 7 Aug 2024 22:24:01 +0800 Subject: [PATCH] (improvement)(headless) Fix dimension value intelligent fill error (#1530) Co-authored-by: lxwcodemonkey --- .../server/service/impl/DimensionServiceImpl.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/DimensionServiceImpl.java b/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/DimensionServiceImpl.java index 18894ba6a..1136010df 100644 --- a/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/DimensionServiceImpl.java +++ b/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/DimensionServiceImpl.java @@ -18,6 +18,7 @@ import com.tencent.supersonic.common.pojo.enums.TypeEnums; import com.tencent.supersonic.common.pojo.exception.InvalidArgumentException; import com.tencent.supersonic.headless.api.pojo.DimValueMap; import com.tencent.supersonic.headless.api.pojo.ModelDetail; +import com.tencent.supersonic.headless.api.pojo.enums.ModelDefineType; import com.tencent.supersonic.headless.api.pojo.enums.TagDefineType; import com.tencent.supersonic.headless.api.pojo.request.DimensionReq; import com.tencent.supersonic.headless.api.pojo.request.MetaBatchReq; @@ -371,8 +372,11 @@ public class DimensionServiceImpl extends ServiceImpl mockDimensionValueAlias(DimensionReq dimensionReq, User user) { ModelResp modelResp = modelService.getModel(dimensionReq.getModelId()); ModelDetail modelDetail = modelResp.getModelDetail(); - String tableQuery = modelDetail.getTableQuery(); - String sqlQuery = "SELECT * FROM " + tableQuery; + String sqlQuery = modelDetail.getSqlQuery(); + if (ModelDefineType.TABLE_QUERY.getName().equals(modelDetail.getQueryType())) { + String tableQuery = modelDetail.getTableQuery(); + sqlQuery = "SELECT * FROM " + tableQuery; + } DatabaseResp database = databaseService.getDatabase(modelResp.getDatabaseId()); String sql = "select ai_talk." + dimensionReq.getBizName() + " from (" + sqlQuery