mirror of
https://github.com/tencentmusic/supersonic.git
synced 2025-12-10 11:07:06 +00:00
[improvement](knowledge) support knowledge scenes without dates (#318)
Co-authored-by: kanedai <kanedai@tencent.com>
This commit is contained in:
@@ -173,20 +173,22 @@ public class DictMetaHelper {
|
||||
.forEach(knowledgeInfo -> {
|
||||
SchemaElement dimensionDesc = dimIdAndDescPair.get(knowledgeInfo.getItemId());
|
||||
|
||||
//default cnt
|
||||
if (Objects.isNull(chatDefaultConfig)
|
||||
|| CollectionUtils.isEmpty(chatDefaultConfig.getMetrics())) {
|
||||
Long dimId = dimensionDesc.getId();
|
||||
if (Objects.nonNull(dimId)) {
|
||||
String datasourceBizName = queryDataSourceByDimId(dimId);
|
||||
String internalMetricName =
|
||||
datasourceBizName + UNDERLINE + internalMetricNameSuffix;
|
||||
defaultMetricDescList.add(new DefaultMetric(internalMetricName,
|
||||
internalMetricDays, DAY));
|
||||
}
|
||||
Long dimId = dimensionDesc.getId();
|
||||
String internalMetricName = "";
|
||||
if (Objects.nonNull(dimId)) {
|
||||
String datasourceBizName = queryDataSourceByDimId(dimId);
|
||||
internalMetricName = datasourceBizName + UNDERLINE + internalMetricNameSuffix;
|
||||
}
|
||||
|
||||
if (Objects.isNull(chatDefaultConfig)) {
|
||||
defaultMetricDescList.add(new DefaultMetric(internalMetricName,
|
||||
internalMetricDays, DAY));
|
||||
} else {
|
||||
SchemaElement schemaItem = chatDefaultConfig.getMetrics().get(0);
|
||||
defaultMetricDescList.add(new DefaultMetric(schemaItem.getBizName(),
|
||||
String metric = internalMetricName;
|
||||
if (!CollectionUtils.isEmpty(chatDefaultConfig.getMetrics())) {
|
||||
metric = chatDefaultConfig.getMetrics().get(0).getBizName();
|
||||
}
|
||||
defaultMetricDescList.add(new DefaultMetric(metric,
|
||||
chatDefaultConfig.getUnit(), chatDefaultConfig.getPeriod()));
|
||||
|
||||
}
|
||||
|
||||
@@ -67,7 +67,7 @@ public class DictQueryHelper {
|
||||
defaultMetricDesc.getBizName(), dim4Dict);
|
||||
if (!CollectionUtils.isEmpty(data)) {
|
||||
int size = (data.size() > printDataShow) ? printDataShow : data.size();
|
||||
log.info("data:{}", data.subList(0, size - 1));
|
||||
log.info("data:{}", data.subList(0, size));
|
||||
} else {
|
||||
log.warn("data is empty. nature:{}", nature);
|
||||
if (Objects.nonNull(queryResultWithColumns)) {
|
||||
@@ -178,6 +178,7 @@ public class DictQueryHelper {
|
||||
|
||||
DateConf dateInfo = new DateConf();
|
||||
dateInfo.setDateMode(DateConf.DateMode.RECENT);
|
||||
log.debug("defaultMetric unit():{}", defaultMetricDesc.getUnit());
|
||||
dateInfo.setUnit(defaultMetricDesc.getUnit());
|
||||
queryStructCmd.setDateInfo(dateInfo);
|
||||
|
||||
|
||||
@@ -137,6 +137,12 @@ public class QueryStructUtils {
|
||||
if (Objects.isNull(dateInfo) || Objects.isNull(dateInfo.getDateMode())) {
|
||||
return "";
|
||||
}
|
||||
if (dateInfo.getDateMode().equals(DateMode.RECENT)) {
|
||||
if (dateInfo.getUnit() <= 0) {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
List<Long> dimensionIds = getDimensionIds(queryStructCmd);
|
||||
List<Long> metricIds = getMetricIds(queryStructCmd);
|
||||
|
||||
@@ -177,7 +183,7 @@ public class QueryStructUtils {
|
||||
return whereClauseFromFilter;
|
||||
} else if (Strings.isNotEmpty(whereFromDate) && Strings.isEmpty(whereClauseFromFilter)) {
|
||||
return whereFromDate;
|
||||
} else if (Strings.isEmpty(whereFromDate) && Strings.isEmpty(whereClauseFromFilter)) {
|
||||
} else if (Objects.isNull(whereFromDate) && Strings.isEmpty(whereClauseFromFilter)) {
|
||||
log.info("the current date information is empty, enter the date initialization logic");
|
||||
return dateModeUtils.defaultRecentDateInfo(queryStructCmd.getDateInfo());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user