mirror of
https://github.com/tencentmusic/supersonic.git
synced 2025-12-11 12:07:42 +00:00
[improvement][project]Use DatePeriodEnum to replace DAY/MONTH/YEAR period constants.
This commit is contained in:
@@ -574,7 +574,7 @@ public class S2SemanticLayerService implements SemanticLayerService {
|
||||
TimeDefaultConfig timeDefaultConfig = dataSetSchema.getTagTypeTimeDefaultConfig();
|
||||
if (Objects.nonNull(timeDefaultConfig)) {
|
||||
unit = timeDefaultConfig.getUnit();
|
||||
String date = LocalDate.now().plusDays(-unit).toString();
|
||||
String date = LocalDate.now().minusDays(unit).toString();
|
||||
dateInfo.setDateMode(DateConf.DateMode.BETWEEN);
|
||||
dateInfo.setStartDate(date);
|
||||
dateInfo.setEndDate(date);
|
||||
|
||||
@@ -9,9 +9,9 @@ import com.alibaba.excel.write.metadata.WriteSheet;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.tencent.supersonic.auth.api.authentication.pojo.User;
|
||||
import com.tencent.supersonic.common.pojo.Aggregator;
|
||||
import com.tencent.supersonic.common.pojo.Constants;
|
||||
import com.tencent.supersonic.common.pojo.DateConf;
|
||||
import com.tencent.supersonic.common.pojo.QueryColumn;
|
||||
import com.tencent.supersonic.common.pojo.enums.DatePeriodEnum;
|
||||
import com.tencent.supersonic.common.pojo.enums.TimeDimensionEnum;
|
||||
import com.tencent.supersonic.common.util.DateUtils;
|
||||
import com.tencent.supersonic.headless.api.pojo.DrillDownDimension;
|
||||
@@ -298,9 +298,9 @@ public class DownloadServiceImpl implements DownloadService {
|
||||
}
|
||||
|
||||
private String getTimeDimension(DateConf dateConf) {
|
||||
if (Constants.MONTH.equals(dateConf.getPeriod())) {
|
||||
if (DatePeriodEnum.MONTH.equals(dateConf.getPeriod())) {
|
||||
return TimeDimensionEnum.MONTH.getName();
|
||||
} else if (Constants.WEEK.equals(dateConf.getPeriod())) {
|
||||
} else if (DatePeriodEnum.WEEK.equals(dateConf.getPeriod())) {
|
||||
return TimeDimensionEnum.WEEK.getName();
|
||||
} else {
|
||||
return TimeDimensionEnum.DAY.getName();
|
||||
|
||||
@@ -6,6 +6,7 @@ import com.tencent.supersonic.common.pojo.Aggregator;
|
||||
import com.tencent.supersonic.common.pojo.DateConf;
|
||||
import com.tencent.supersonic.common.pojo.DateConf.DateMode;
|
||||
import com.tencent.supersonic.common.pojo.ItemDateResp;
|
||||
import com.tencent.supersonic.common.pojo.enums.DatePeriodEnum;
|
||||
import com.tencent.supersonic.common.pojo.enums.TypeEnums;
|
||||
import com.tencent.supersonic.common.util.DateModeUtils;
|
||||
import com.tencent.supersonic.common.util.SqlFilterUtils;
|
||||
@@ -40,10 +41,7 @@ import java.util.Optional;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static com.tencent.supersonic.common.pojo.Constants.DAY;
|
||||
import static com.tencent.supersonic.common.pojo.Constants.DAY_FORMAT;
|
||||
import static com.tencent.supersonic.common.pojo.Constants.MONTH;
|
||||
import static com.tencent.supersonic.common.pojo.Constants.WEEK;
|
||||
|
||||
@Slf4j
|
||||
@Component
|
||||
@@ -236,7 +234,7 @@ public class QueryStructUtils {
|
||||
Set<String> dateList = new HashSet<>();
|
||||
String startDate = "";
|
||||
String endDate = "";
|
||||
String period = "";
|
||||
DatePeriodEnum period = null;
|
||||
for (FieldExpression f : fieldExpressions) {
|
||||
if (Objects.isNull(f.getFieldName())
|
||||
|| !internalCols.contains(f.getFieldName().toLowerCase())) {
|
||||
@@ -247,7 +245,7 @@ public class QueryStructUtils {
|
||||
continue;
|
||||
}
|
||||
period = dateModeUtils.getPeriodByCol(f.getFieldName().toLowerCase());
|
||||
if ("".equals(period)) {
|
||||
if (period == null) {
|
||||
continue;
|
||||
}
|
||||
if ("=".equals(f.getOperator())) {
|
||||
@@ -263,7 +261,7 @@ public class QueryStructUtils {
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!"".equals(period)) {
|
||||
if (period != null) {
|
||||
DateConf dateConf = new DateConf();
|
||||
dateConf.setPeriod(period);
|
||||
if (!CollectionUtils.isEmpty(dateList)) {
|
||||
|
||||
Reference in New Issue
Block a user