[improvement][project]Use DatePeriodEnum to replace DAY/MONTH/YEAR period constants.

This commit is contained in:
jerryjzhang
2024-09-22 17:14:55 +08:00
parent ae889bb0ae
commit cd08cf51c5
28 changed files with 170 additions and 339 deletions

View File

@@ -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);

View File

@@ -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();

View File

@@ -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)) {