Unverified 提交 0d580d6e authored 作者: XiaJunjie2020's avatar XiaJunjie2020 提交者: GitHub

Merge pull request #282 from dataease/pr@dev@feat_支持仪表板数字区间过滤

feat: 支持仪表板数字区间过滤
...@@ -569,10 +569,14 @@ public class DorisQueryProvider extends QueryProvider { ...@@ -569,10 +569,14 @@ public class DorisQueryProvider extends QueryProvider {
} else if (StringUtils.containsIgnoreCase(request.getOperator(), "like")) { } else if (StringUtils.containsIgnoreCase(request.getOperator(), "like")) {
whereValue = "'%" + value.get(0) + "%'"; whereValue = "'%" + value.get(0) + "%'";
} else if (StringUtils.containsIgnoreCase(request.getOperator(), "between")) { } else if (StringUtils.containsIgnoreCase(request.getOperator(), "between")) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); if (request.getDatasetTableField().getDeType() == 1) {
String startTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(0)))); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String endTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(1)))); String startTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(0))));
whereValue = String.format(DorisConstants.WHERE_BETWEEN, startTime, endTime); String endTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(1))));
whereValue = String.format(DorisConstants.WHERE_BETWEEN, startTime, endTime);
} else {
whereValue = String.format(MySQLConstants.WHERE_BETWEEN, value.get(0), value.get(1));
}
} else { } else {
whereValue = String.format(DorisConstants.WHERE_VALUE_VALUE, value.get(0)); whereValue = String.format(DorisConstants.WHERE_VALUE_VALUE, value.get(0));
} }
......
...@@ -576,10 +576,14 @@ public class MysqlQueryProvider extends QueryProvider { ...@@ -576,10 +576,14 @@ public class MysqlQueryProvider extends QueryProvider {
} else if (StringUtils.containsIgnoreCase(request.getOperator(), "like")) { } else if (StringUtils.containsIgnoreCase(request.getOperator(), "like")) {
whereValue = "'%" + value.get(0) + "%'"; whereValue = "'%" + value.get(0) + "%'";
} else if (StringUtils.containsIgnoreCase(request.getOperator(), "between")) { } else if (StringUtils.containsIgnoreCase(request.getOperator(), "between")) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); if (request.getDatasetTableField().getDeType() == 1) {
String startTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(0)))); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String endTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(1)))); String startTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(0))));
whereValue = String.format(MySQLConstants.WHERE_BETWEEN, startTime, endTime); String endTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(1))));
whereValue = String.format(MySQLConstants.WHERE_BETWEEN, startTime, endTime);
} else {
whereValue = String.format(MySQLConstants.WHERE_BETWEEN, value.get(0), value.get(1));
}
} else { } else {
whereValue = String.format(MySQLConstants.WHERE_VALUE_VALUE, value.get(0)); whereValue = String.format(MySQLConstants.WHERE_VALUE_VALUE, value.get(0));
} }
......
...@@ -7,6 +7,8 @@ import io.dataease.dto.chart.ChartViewFieldDTO; ...@@ -7,6 +7,8 @@ import io.dataease.dto.chart.ChartViewFieldDTO;
import io.dataease.dto.sqlObj.SQLObj; import io.dataease.dto.sqlObj.SQLObj;
import io.dataease.provider.QueryProvider; import io.dataease.provider.QueryProvider;
import io.dataease.provider.SQLConstants; import io.dataease.provider.SQLConstants;
import io.dataease.provider.doris.DorisConstants;
import io.dataease.provider.mysql.MySQLConstants;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
...@@ -584,10 +586,14 @@ public class OracleQueryProvider extends QueryProvider { ...@@ -584,10 +586,14 @@ public class OracleQueryProvider extends QueryProvider {
} else if (StringUtils.containsIgnoreCase(request.getOperator(), "like")) { } else if (StringUtils.containsIgnoreCase(request.getOperator(), "like")) {
whereValue = "'%" + value.get(0) + "%'"; whereValue = "'%" + value.get(0) + "%'";
} else if (StringUtils.containsIgnoreCase(request.getOperator(), "between")) { } else if (StringUtils.containsIgnoreCase(request.getOperator(), "between")) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); if (request.getDatasetTableField().getDeType() == 1) {
String startTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(0)))); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String endTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(1)))); String startTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(0))));
whereValue = String.format(OracleConstants.WHERE_BETWEEN, startTime, endTime); String endTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(1))));
whereValue = String.format(OracleConstants.WHERE_BETWEEN, startTime, endTime);
} else {
whereValue = String.format(MySQLConstants.WHERE_BETWEEN, value.get(0), value.get(1));
}
} else { } else {
whereValue = String.format(OracleConstants.WHERE_VALUE_VALUE, value.get(0)); whereValue = String.format(OracleConstants.WHERE_VALUE_VALUE, value.get(0));
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论