提交 b5e0c6bd authored 作者: wangjiahao's avatar wangjiahao

Merge remote-tracking branch 'origin/dev' into dev

...@@ -700,7 +700,7 @@ public class DorisQueryProvider extends QueryProvider { ...@@ -700,7 +700,7 @@ public class DorisQueryProvider extends QueryProvider {
} }
@Override @Override
public String convertTableToSql(String tableName, Datasource ds){ public String convertTableToSql(String tableName, Datasource ds) {
return createSQLPreview("SELECT * FROM " + String.format(DorisConstants.KEYWORD_TABLE, tableName), null); return createSQLPreview("SELECT * FROM " + String.format(DorisConstants.KEYWORD_TABLE, tableName), null);
} }
...@@ -734,9 +734,13 @@ public class DorisQueryProvider extends QueryProvider { ...@@ -734,9 +734,13 @@ public class DorisQueryProvider extends QueryProvider {
case "not like": case "not like":
return " NOT LIKE "; return " NOT LIKE ";
case "null": case "null":
return " IN "; return " IS NULL ";
case "not_null": case "not_null":
return " IS NOT NULL AND %s <> ''"; return " IS NOT NULL ";
case "empty":
return " = ";
case "not_empty":
return " <> ";
case "between": case "between":
return " BETWEEN "; return " BETWEEN ";
default: default:
...@@ -783,9 +787,15 @@ public class DorisQueryProvider extends QueryProvider { ...@@ -783,9 +787,15 @@ public class DorisQueryProvider extends QueryProvider {
whereName = originName; whereName = originName;
} }
if (StringUtils.equalsIgnoreCase(request.getTerm(), "null")) { if (StringUtils.equalsIgnoreCase(request.getTerm(), "null")) {
whereValue = DorisConstants.WHERE_VALUE_NULL; // whereValue = MySQLConstants.WHERE_VALUE_NULL;
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_null")) { } else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_null")) {
whereTerm = String.format(whereTerm, originName); // whereTerm = String.format(whereTerm, originName);
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "empty")) {
whereValue = "''";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_empty")) {
whereValue = "''";
} else if (StringUtils.containsIgnoreCase(request.getTerm(), "in")) { } else if (StringUtils.containsIgnoreCase(request.getTerm(), "in")) {
whereValue = "('" + StringUtils.join(value, "','") + "')"; whereValue = "('" + StringUtils.join(value, "','") + "')";
} else if (StringUtils.containsIgnoreCase(request.getTerm(), "like")) { } else if (StringUtils.containsIgnoreCase(request.getTerm(), "like")) {
...@@ -952,9 +962,15 @@ public class DorisQueryProvider extends QueryProvider { ...@@ -952,9 +962,15 @@ public class DorisQueryProvider extends QueryProvider {
whereName = originField; whereName = originField;
} }
if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) { if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) {
whereValue = DorisConstants.WHERE_VALUE_NULL; // whereValue = MySQLConstants.WHERE_VALUE_NULL;
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) { } else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) {
whereTerm = String.format(whereTerm, originField); // whereTerm = String.format(whereTerm, originName);
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "empty")) {
whereValue = "''";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_empty")) {
whereValue = "''";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) {
whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')"; whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) {
...@@ -1003,9 +1019,15 @@ public class DorisQueryProvider extends QueryProvider { ...@@ -1003,9 +1019,15 @@ public class DorisQueryProvider extends QueryProvider {
String whereValue = ""; String whereValue = "";
// 原始类型不是时间,在de中被转成时间的字段做处理 // 原始类型不是时间,在de中被转成时间的字段做处理
if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) { if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) {
whereValue = DorisConstants.WHERE_VALUE_NULL; // whereValue = MySQLConstants.WHERE_VALUE_NULL;
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) { } else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) {
whereTerm = String.format(whereTerm, originField); // whereTerm = String.format(whereTerm, originName);
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "empty")) {
whereValue = "''";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_empty")) {
whereValue = "''";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) {
whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')"; whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) {
......
...@@ -682,9 +682,13 @@ public class EsQueryProvider extends QueryProvider { ...@@ -682,9 +682,13 @@ public class EsQueryProvider extends QueryProvider {
case "not like": case "not like":
return " NOT LIKE "; return " NOT LIKE ";
case "null": case "null":
return " IN "; return " IS NULL ";
case "not_null": case "not_null":
return " IS NOT NULL AND %s <> ''"; return " IS NOT NULL ";
case "empty":
return " = ";
case "not_empty":
return " <> ";
case "between": case "between":
return " BETWEEN "; return " BETWEEN ";
default: default:
...@@ -730,9 +734,15 @@ public class EsQueryProvider extends QueryProvider { ...@@ -730,9 +734,15 @@ public class EsQueryProvider extends QueryProvider {
whereName = originName; whereName = originName;
} }
if (StringUtils.equalsIgnoreCase(request.getTerm(), "null")) { if (StringUtils.equalsIgnoreCase(request.getTerm(), "null")) {
whereValue = EsSqlLConstants.WHERE_VALUE_NULL; // whereValue = MySQLConstants.WHERE_VALUE_NULL;
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_null")) { } else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_null")) {
whereTerm = String.format(whereTerm, originName); // whereTerm = String.format(whereTerm, originName);
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "empty")) {
whereValue = "''";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_empty")) {
whereValue = "''";
} else if (StringUtils.containsIgnoreCase(request.getTerm(), "in")) { } else if (StringUtils.containsIgnoreCase(request.getTerm(), "in")) {
whereValue = "('" + StringUtils.join(value, "','") + "')"; whereValue = "('" + StringUtils.join(value, "','") + "')";
} else if (StringUtils.containsIgnoreCase(request.getTerm(), "like")) { } else if (StringUtils.containsIgnoreCase(request.getTerm(), "like")) {
...@@ -913,9 +923,15 @@ public class EsQueryProvider extends QueryProvider { ...@@ -913,9 +923,15 @@ public class EsQueryProvider extends QueryProvider {
String whereValue = ""; String whereValue = "";
// 原始类型不是时间,在de中被转成时间的字段做处理 // 原始类型不是时间,在de中被转成时间的字段做处理
if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) { if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) {
whereValue = EsSqlLConstants.WHERE_VALUE_NULL; // whereValue = MySQLConstants.WHERE_VALUE_NULL;
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) { } else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) {
whereTerm = String.format(whereTerm, originField); // whereTerm = String.format(whereTerm, originField);
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "empty")) {
whereValue = "''";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_empty")) {
whereValue = "''";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) {
whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')"; whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) {
......
...@@ -694,7 +694,7 @@ public class MysqlQueryProvider extends QueryProvider { ...@@ -694,7 +694,7 @@ public class MysqlQueryProvider extends QueryProvider {
} }
@Override @Override
public String convertTableToSql(String tableName, Datasource ds){ public String convertTableToSql(String tableName, Datasource ds) {
return createSQLPreview("SELECT * FROM " + String.format(MySQLConstants.KEYWORD_TABLE, tableName), null); return createSQLPreview("SELECT * FROM " + String.format(MySQLConstants.KEYWORD_TABLE, tableName), null);
} }
...@@ -721,9 +721,13 @@ public class MysqlQueryProvider extends QueryProvider { ...@@ -721,9 +721,13 @@ public class MysqlQueryProvider extends QueryProvider {
case "not like": case "not like":
return " NOT LIKE "; return " NOT LIKE ";
case "null": case "null":
return " IN "; return " IS NULL ";
case "not_null": case "not_null":
return " IS NOT NULL AND %s <> ''"; return " IS NOT NULL ";
case "empty":
return " = ";
case "not_empty":
return " <> ";
case "between": case "between":
return " BETWEEN "; return " BETWEEN ";
default: default:
...@@ -769,9 +773,15 @@ public class MysqlQueryProvider extends QueryProvider { ...@@ -769,9 +773,15 @@ public class MysqlQueryProvider extends QueryProvider {
whereName = originName; whereName = originName;
} }
if (StringUtils.equalsIgnoreCase(request.getTerm(), "null")) { if (StringUtils.equalsIgnoreCase(request.getTerm(), "null")) {
whereValue = MySQLConstants.WHERE_VALUE_NULL; // whereValue = MySQLConstants.WHERE_VALUE_NULL;
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_null")) { } else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_null")) {
whereTerm = String.format(whereTerm, originName); // whereTerm = String.format(whereTerm, originName);
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "empty")) {
whereValue = "''";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_empty")) {
whereValue = "''";
} else if (StringUtils.containsIgnoreCase(request.getTerm(), "in")) { } else if (StringUtils.containsIgnoreCase(request.getTerm(), "in")) {
whereValue = "('" + StringUtils.join(value, "','") + "')"; whereValue = "('" + StringUtils.join(value, "','") + "')";
} else if (StringUtils.containsIgnoreCase(request.getTerm(), "like")) { } else if (StringUtils.containsIgnoreCase(request.getTerm(), "like")) {
...@@ -936,9 +946,15 @@ public class MysqlQueryProvider extends QueryProvider { ...@@ -936,9 +946,15 @@ public class MysqlQueryProvider extends QueryProvider {
whereName = originField; whereName = originField;
} }
if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) { if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) {
whereValue = MySQLConstants.WHERE_VALUE_NULL; // whereValue = MySQLConstants.WHERE_VALUE_NULL;
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) { } else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) {
whereTerm = String.format(whereTerm, originField); // whereTerm = String.format(whereTerm, originField);
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "empty")) {
whereValue = "''";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_empty")) {
whereValue = "''";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) {
whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')"; whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) {
...@@ -986,9 +1002,15 @@ public class MysqlQueryProvider extends QueryProvider { ...@@ -986,9 +1002,15 @@ public class MysqlQueryProvider extends QueryProvider {
String whereValue = ""; String whereValue = "";
// 原始类型不是时间,在de中被转成时间的字段做处理 // 原始类型不是时间,在de中被转成时间的字段做处理
if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) { if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) {
whereValue = MySQLConstants.WHERE_VALUE_NULL; // whereValue = MySQLConstants.WHERE_VALUE_NULL;
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) { } else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) {
whereTerm = String.format(whereTerm, originField); // whereTerm = String.format(whereTerm, originField);
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "empty")) {
whereValue = "''";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_empty")) {
whereValue = "''";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) {
whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')"; whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) {
......
...@@ -109,10 +109,10 @@ public class OracleQueryProvider extends QueryProvider { ...@@ -109,10 +109,10 @@ public class OracleQueryProvider extends QueryProvider {
return st_sql.render(); return st_sql.render();
} }
public void setSchema(SQLObj tableObj, Datasource ds){ public void setSchema(SQLObj tableObj, Datasource ds) {
if(ds != null && !tableObj.getTableName().startsWith("(") && !tableObj.getTableName().endsWith(")")){ if (ds != null && !tableObj.getTableName().startsWith("(") && !tableObj.getTableName().endsWith(")")) {
String schema = new Gson().fromJson(ds.getConfiguration(), JdbcConfiguration.class).getSchema(); String schema = new Gson().fromJson(ds.getConfiguration(), JdbcConfiguration.class).getSchema();
schema = String.format( OracleConstants.KEYWORD_TABLE, schema); schema = String.format(OracleConstants.KEYWORD_TABLE, schema);
tableObj.setTableName(schema + "." + tableObj.getTableName()); tableObj.setTableName(schema + "." + tableObj.getTableName());
} }
} }
...@@ -744,9 +744,9 @@ public class OracleQueryProvider extends QueryProvider { ...@@ -744,9 +744,9 @@ public class OracleQueryProvider extends QueryProvider {
} }
@Override @Override
public String convertTableToSql(String tableName, Datasource ds){ public String convertTableToSql(String tableName, Datasource ds) {
String schema = new Gson().fromJson(ds.getConfiguration(), JdbcConfiguration.class).getSchema(); String schema = new Gson().fromJson(ds.getConfiguration(), JdbcConfiguration.class).getSchema();
schema = String.format( OracleConstants.KEYWORD_TABLE, schema); schema = String.format(OracleConstants.KEYWORD_TABLE, schema);
return createSQLPreview("SELECT * FROM " + schema + "." + String.format(OracleConstants.KEYWORD_TABLE, tableName), null); return createSQLPreview("SELECT * FROM " + schema + "." + String.format(OracleConstants.KEYWORD_TABLE, tableName), null);
} }
...@@ -773,9 +773,13 @@ public class OracleQueryProvider extends QueryProvider { ...@@ -773,9 +773,13 @@ public class OracleQueryProvider extends QueryProvider {
case "not like": case "not like":
return " NOT LIKE "; return " NOT LIKE ";
case "null": case "null":
return " IN "; return " IS NULL ";
case "not_null": case "not_null":
return " IS NOT NULL AND %s <> ''"; return " IS NOT NULL ";
case "empty":
return " = ";
case "not_empty":
return " <> ";
case "between": case "between":
return " BETWEEN "; return " BETWEEN ";
default: default:
...@@ -823,9 +827,15 @@ public class OracleQueryProvider extends QueryProvider { ...@@ -823,9 +827,15 @@ public class OracleQueryProvider extends QueryProvider {
whereName = originName; whereName = originName;
} }
if (StringUtils.equalsIgnoreCase(request.getTerm(), "null")) { if (StringUtils.equalsIgnoreCase(request.getTerm(), "null")) {
whereValue = OracleConstants.WHERE_VALUE_NULL; // whereValue = MySQLConstants.WHERE_VALUE_NULL;
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_null")) { } else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_null")) {
whereTerm = String.format(whereTerm, originName); // whereTerm = String.format(whereTerm, originName);
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "empty")) {
whereValue = "''";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_empty")) {
whereValue = "''";
} else if (StringUtils.containsIgnoreCase(request.getTerm(), "in")) { } else if (StringUtils.containsIgnoreCase(request.getTerm(), "in")) {
whereValue = "('" + StringUtils.join(value, "','") + "')"; whereValue = "('" + StringUtils.join(value, "','") + "')";
} else if (StringUtils.containsIgnoreCase(request.getTerm(), "like")) { } else if (StringUtils.containsIgnoreCase(request.getTerm(), "like")) {
...@@ -1009,9 +1019,15 @@ public class OracleQueryProvider extends QueryProvider { ...@@ -1009,9 +1019,15 @@ public class OracleQueryProvider extends QueryProvider {
whereName = originField; whereName = originField;
} }
if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) { if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) {
whereValue = OracleConstants.WHERE_VALUE_NULL; // whereValue = MySQLConstants.WHERE_VALUE_NULL;
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) { } else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) {
whereTerm = String.format(whereTerm, originField); // whereTerm = String.format(whereTerm, originName);
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "empty")) {
whereValue = "''";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_empty")) {
whereValue = "''";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) {
whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')"; whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) {
...@@ -1059,9 +1075,15 @@ public class OracleQueryProvider extends QueryProvider { ...@@ -1059,9 +1075,15 @@ public class OracleQueryProvider extends QueryProvider {
String whereValue = ""; String whereValue = "";
// 原始类型不是时间,在de中被转成时间的字段做处理 // 原始类型不是时间,在de中被转成时间的字段做处理
if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) { if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) {
whereValue = OracleConstants.WHERE_VALUE_NULL; // whereValue = MySQLConstants.WHERE_VALUE_NULL;
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) { } else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) {
whereTerm = String.format(whereTerm, originField); // whereTerm = String.format(whereTerm, originName);
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "empty")) {
whereValue = "''";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_empty")) {
whereValue = "''";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) {
whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')"; whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) {
......
...@@ -750,9 +750,13 @@ public class PgQueryProvider extends QueryProvider { ...@@ -750,9 +750,13 @@ public class PgQueryProvider extends QueryProvider {
case "not like": case "not like":
return " NOT LIKE "; return " NOT LIKE ";
case "null": case "null":
return " IN "; return " IS NULL ";
case "not_null": case "not_null":
return " IS NOT NULL AND %s <> ''"; return " IS NOT NULL ";
case "empty":
return " = ";
case "not_empty":
return " <> ";
case "between": case "between":
return " BETWEEN "; return " BETWEEN ";
default: default:
...@@ -798,9 +802,15 @@ public class PgQueryProvider extends QueryProvider { ...@@ -798,9 +802,15 @@ public class PgQueryProvider extends QueryProvider {
whereName = originName; whereName = originName;
} }
if (StringUtils.equalsIgnoreCase(request.getTerm(), "null")) { if (StringUtils.equalsIgnoreCase(request.getTerm(), "null")) {
whereValue = PgConstants.WHERE_VALUE_NULL; // whereValue = MySQLConstants.WHERE_VALUE_NULL;
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_null")) { } else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_null")) {
whereTerm = String.format(whereTerm, originName); // whereTerm = String.format(whereTerm, originName);
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "empty")) {
whereValue = "''";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_empty")) {
whereValue = "''";
} else if (StringUtils.containsIgnoreCase(request.getTerm(), "in")) { } else if (StringUtils.containsIgnoreCase(request.getTerm(), "in")) {
whereValue = "('" + StringUtils.join(value, "','") + "')"; whereValue = "('" + StringUtils.join(value, "','") + "')";
} else if (StringUtils.containsIgnoreCase(request.getTerm(), "like")) { } else if (StringUtils.containsIgnoreCase(request.getTerm(), "like")) {
...@@ -980,9 +990,15 @@ public class PgQueryProvider extends QueryProvider { ...@@ -980,9 +990,15 @@ public class PgQueryProvider extends QueryProvider {
String whereValue = ""; String whereValue = "";
// 原始类型不是时间,在de中被转成时间的字段做处理 // 原始类型不是时间,在de中被转成时间的字段做处理
if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) { if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) {
whereValue = PgConstants.WHERE_VALUE_NULL; // whereValue = MySQLConstants.WHERE_VALUE_NULL;
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) { } else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) {
whereTerm = String.format(whereTerm, originField); // whereTerm = String.format(whereTerm, originName);
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "empty")) {
whereValue = "''";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_empty")) {
whereValue = "''";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) {
whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')"; whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) {
......
...@@ -149,7 +149,7 @@ public class SqlserverQueryProvider extends QueryProvider { ...@@ -149,7 +149,7 @@ public class SqlserverQueryProvider extends QueryProvider {
@Override @Override
public String createQueryTableWithPage(String table, List<DatasetTableField> fields, Integer page, Integer pageSize, Integer realSize, boolean isGroup, Datasource ds) { public String createQueryTableWithPage(String table, List<DatasetTableField> fields, Integer page, Integer pageSize, Integer realSize, boolean isGroup, Datasource ds) {
Integer size = (page-1)*pageSize + realSize; Integer size = (page - 1) * pageSize + realSize;
return String.format("SELECT top %s * from ( %s ) AS DE_SQLSERVER_TMP ", size.toString(), createQuerySQL(table, fields, isGroup, ds)); return String.format("SELECT top %s * from ( %s ) AS DE_SQLSERVER_TMP ", size.toString(), createQuerySQL(table, fields, isGroup, ds));
} }
...@@ -162,7 +162,7 @@ public class SqlserverQueryProvider extends QueryProvider { ...@@ -162,7 +162,7 @@ public class SqlserverQueryProvider extends QueryProvider {
@Override @Override
public String createQuerySQLWithPage(String sql, List<DatasetTableField> fields, Integer page, Integer pageSize, Integer realSize, boolean isGroup) { public String createQuerySQLWithPage(String sql, List<DatasetTableField> fields, Integer page, Integer pageSize, Integer realSize, boolean isGroup) {
Integer size = (page-1)*pageSize + realSize; Integer size = (page - 1) * pageSize + realSize;
return String.format("SELECT top %s * from ( %s ) AS DE_SQLSERVER_TMP ", size.toString(), createQuerySQLAsTmp(sql, fields, isGroup)); return String.format("SELECT top %s * from ( %s ) AS DE_SQLSERVER_TMP ", size.toString(), createQuerySQLAsTmp(sql, fields, isGroup));
} }
...@@ -677,9 +677,9 @@ public class SqlserverQueryProvider extends QueryProvider { ...@@ -677,9 +677,9 @@ public class SqlserverQueryProvider extends QueryProvider {
} }
@Override @Override
public String convertTableToSql(String tableName, Datasource ds){ public String convertTableToSql(String tableName, Datasource ds) {
String schema = new Gson().fromJson(ds.getConfiguration(), JdbcConfiguration.class).getSchema(); String schema = new Gson().fromJson(ds.getConfiguration(), JdbcConfiguration.class).getSchema();
schema = String.format( SqlServerSQLConstants.KEYWORD_TABLE, schema); schema = String.format(SqlServerSQLConstants.KEYWORD_TABLE, schema);
return createSQLPreview("SELECT * FROM " + schema + "." + String.format(SqlServerSQLConstants.KEYWORD_TABLE, tableName), null); return createSQLPreview("SELECT * FROM " + schema + "." + String.format(SqlServerSQLConstants.KEYWORD_TABLE, tableName), null);
} }
...@@ -706,9 +706,13 @@ public class SqlserverQueryProvider extends QueryProvider { ...@@ -706,9 +706,13 @@ public class SqlserverQueryProvider extends QueryProvider {
case "not like": case "not like":
return " NOT LIKE "; return " NOT LIKE ";
case "null": case "null":
return " IN "; return " IS NULL ";
case "not_null": case "not_null":
return " IS NOT NULL AND %s <> ''"; return " IS NOT NULL ";
case "empty":
return " = ";
case "not_empty":
return " <> ";
case "between": case "between":
return " BETWEEN "; return " BETWEEN ";
default: default:
...@@ -748,9 +752,15 @@ public class SqlserverQueryProvider extends QueryProvider { ...@@ -748,9 +752,15 @@ public class SqlserverQueryProvider extends QueryProvider {
whereName = originName; whereName = originName;
} }
if (StringUtils.equalsIgnoreCase(request.getTerm(), "null")) { if (StringUtils.equalsIgnoreCase(request.getTerm(), "null")) {
whereValue = SqlServerSQLConstants.WHERE_VALUE_NULL; // whereValue = MySQLConstants.WHERE_VALUE_NULL;
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_null")) { } else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_null")) {
whereTerm = String.format(whereTerm, originName); // whereTerm = String.format(whereTerm, originName);
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "empty")) {
whereValue = "''";
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_empty")) {
whereValue = "''";
} else if (StringUtils.containsIgnoreCase(request.getTerm(), "in")) { } else if (StringUtils.containsIgnoreCase(request.getTerm(), "in")) {
whereValue = "('" + StringUtils.join(value, "','") + "')"; whereValue = "('" + StringUtils.join(value, "','") + "')";
} else if (StringUtils.containsIgnoreCase(request.getTerm(), "like")) { } else if (StringUtils.containsIgnoreCase(request.getTerm(), "like")) {
...@@ -937,9 +947,15 @@ public class SqlserverQueryProvider extends QueryProvider { ...@@ -937,9 +947,15 @@ public class SqlserverQueryProvider extends QueryProvider {
String whereValue = ""; String whereValue = "";
// 原始类型不是时间,在de中被转成时间的字段做处理 // 原始类型不是时间,在de中被转成时间的字段做处理
if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) { if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) {
whereValue = SqlServerSQLConstants.WHERE_VALUE_NULL; // whereValue = MySQLConstants.WHERE_VALUE_NULL;
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) { } else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) {
whereTerm = String.format(whereTerm, originField); // whereTerm = String.format(whereTerm, originName);
whereValue = "";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "empty")) {
whereValue = "''";
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_empty")) {
whereValue = "''";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) {
whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')"; whereValue = "('" + StringUtils.join(f.getValue(), "','") + "')";
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) { } else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) {
......
...@@ -762,8 +762,10 @@ export default { ...@@ -762,8 +762,10 @@ export default {
filter_le: 'Less than or equal to', filter_le: 'Less than or equal to',
filter_gt: 'Greater than', filter_gt: 'Greater than',
filter_ge: 'Greater than or equal to', filter_ge: 'Greater than or equal to',
filter_null: 'Empty', filter_null: 'Null',
filter_not_null: 'Not Empty', filter_not_null: 'Not Null',
filter_empty: 'Empty String',
filter_not_empty: 'Not Empty String',
filter_include: 'Contain', filter_include: 'Contain',
filter_not_include: 'Not Contain', filter_not_include: 'Not Contain',
rose_type: 'Rose pattern', rose_type: 'Rose pattern',
......
...@@ -763,8 +763,10 @@ export default { ...@@ -763,8 +763,10 @@ export default {
filter_le: '小于等于', filter_le: '小于等于',
filter_gt: '大于', filter_gt: '大于',
filter_ge: '大于等于', filter_ge: '大于等于',
filter_null: '爲空', filter_null: '為空',
filter_not_null: '不爲空', filter_not_null: '不為空',
filter_empty: '空字符串',
filter_not_empty: '非空字符串',
filter_include: '包含', filter_include: '包含',
filter_not_include: '不包含', filter_not_include: '不包含',
rose_type: '玫瑰圖模式', rose_type: '玫瑰圖模式',
......
...@@ -765,6 +765,8 @@ export default { ...@@ -765,6 +765,8 @@ export default {
filter_ge: '大于等于', filter_ge: '大于等于',
filter_null: '为空', filter_null: '为空',
filter_not_null: '不为空', filter_not_null: '不为空',
filter_empty: '空字符串',
filter_not_empty: '非空字符串',
filter_include: '包含', filter_include: '包含',
filter_not_include: '不包含', filter_not_include: '不包含',
rose_type: '玫瑰图模式', rose_type: '玫瑰图模式',
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
</el-select> </el-select>
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-input v-show="!f.term.includes('null')" v-model="f.value" class="value-item" :placeholder="$t('chart.condition')" size="mini" clearable /> <el-input v-show="!f.term.includes('null') && !f.term.includes('empty')" v-model="f.value" class="value-item" :placeholder="$t('chart.condition')" size="mini" clearable />
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-button type="text" icon="el-icon-delete" circle style="float: right" @click="removeFilter(index)" /> <el-button type="text" icon="el-icon-delete" circle style="float: right" @click="removeFilter(index)" />
...@@ -44,7 +44,8 @@ export default { ...@@ -44,7 +44,8 @@ export default {
}, },
data() { data() {
return { return {
options: [{ options: [
{
label: '', label: '',
options: [{ options: [{
value: 'eq', value: 'eq',
...@@ -64,26 +65,6 @@ export default { ...@@ -64,26 +65,6 @@ export default {
label: this.$t('chart.filter_not_like') label: this.$t('chart.filter_not_like')
}] }]
}, },
// {
// label: '',
// options: [{
// value: 'lt',
// label: this.$t('chart.filter_lt')
// }, {
// value: 'gt',
// label: this.$t('chart.filter_gt')
// }]
// },
// {
// label: '',
// options: [{
// value: 'le',
// label: this.$t('chart.filter_le')
// }, {
// value: 'ge',
// label: this.$t('chart.filter_ge')
// }]
// },
{ {
label: '', label: '',
options: [{ options: [{
...@@ -93,8 +74,19 @@ export default { ...@@ -93,8 +74,19 @@ export default {
value: 'not_null', value: 'not_null',
label: this.$t('chart.filter_not_null') label: this.$t('chart.filter_not_null')
}] }]
},
{
label: '',
options: [{
value: 'empty',
label: this.$t('chart.filter_empty')
}, {
value: 'not_empty',
label: this.$t('chart.filter_not_empty')
}] }]
} }
]
}
}, },
mounted() { mounted() {
}, },
...@@ -113,7 +105,7 @@ export default { ...@@ -113,7 +105,7 @@ export default {
</script> </script>
<style scoped> <style scoped>
.filter-item{ .filter-item {
width: 100%; width: 100%;
border-radius: 4px; border-radius: 4px;
border: 1px solid #DCDFE6; border: 1px solid #DCDFE6;
...@@ -123,19 +115,22 @@ export default { ...@@ -123,19 +115,22 @@ export default {
justify-content: left; justify-content: left;
align-items: center; align-items: center;
} }
.form-item>>>.el-form-item__label{
.form-item >>> .el-form-item__label {
font-size: 12px; font-size: 12px;
} }
span{
span {
font-size: 12px; font-size: 12px;
} }
.value-item>>>.el-input{ .value-item >>> .el-input {
position: relative; position: relative;
display: inline-block; display: inline-block;
width: 80px!important; width: 80px !important;
} }
.el-select-dropdown__item{
.el-select-dropdown__item {
padding: 0 20px; padding: 0 20px;
font-size: 12px; font-size: 12px;
} }
......
...@@ -83,16 +83,6 @@ export default { ...@@ -83,16 +83,6 @@ export default {
value: 'ge', value: 'ge',
label: this.$t('chart.filter_ge') label: this.$t('chart.filter_ge')
}] }]
},
{
label: '',
options: [{
value: 'null',
label: this.$t('chart.filter_null')
}, {
value: 'not_null',
label: this.$t('chart.filter_not_null')
}]
}] }]
} }
}, },
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
</el-select> </el-select>
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-input v-show="!f.term.includes('null')" v-model="f.value" class="value-item" :placeholder="$t('chart.condition')" size="mini" clearable /> <el-input v-show="!f.term.includes('null') && !f.term.includes('empty')" v-model="f.value" class="value-item" :placeholder="$t('chart.condition')" size="mini" clearable />
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-button type="text" icon="el-icon-delete" circle style="float: right" @click="removeFilter(index)" /> <el-button type="text" icon="el-icon-delete" circle style="float: right" @click="removeFilter(index)" />
...@@ -80,6 +80,16 @@ export default { ...@@ -80,6 +80,16 @@ export default {
value: 'not_null', value: 'not_null',
label: this.$t('chart.filter_not_null') label: this.$t('chart.filter_not_null')
}] }]
},
{
label: '',
options: [{
value: 'empty',
label: this.$t('chart.filter_empty')
}, {
value: 'not_empty',
label: this.$t('chart.filter_not_empty')
}]
} }
], ],
dateOptions: [ dateOptions: [
...@@ -112,16 +122,6 @@ export default { ...@@ -112,16 +122,6 @@ export default {
value: 'ge', value: 'ge',
label: this.$t('chart.filter_ge') label: this.$t('chart.filter_ge')
}] }]
},
{
label: '',
options: [{
value: 'null',
label: this.$t('chart.filter_null')
}, {
value: 'not_null',
label: this.$t('chart.filter_not_null')
}]
} }
], ],
valueOptions: [ valueOptions: [
...@@ -154,16 +154,6 @@ export default { ...@@ -154,16 +154,6 @@ export default {
value: 'ge', value: 'ge',
label: this.$t('chart.filter_ge') label: this.$t('chart.filter_ge')
}] }]
},
{
label: '',
options: [{
value: 'null',
label: this.$t('chart.filter_null')
}, {
value: 'not_null',
label: this.$t('chart.filter_not_null')
}]
} }
], ],
options: [] options: []
......
...@@ -1201,7 +1201,7 @@ export default { ...@@ -1201,7 +1201,7 @@ export default {
saveDimensionFilter() { saveDimensionFilter() {
for (let i = 0; i < this.dimensionItem.filter.length; i++) { for (let i = 0; i < this.dimensionItem.filter.length; i++) {
const f = this.dimensionItem.filter[i] const f = this.dimensionItem.filter[i]
if (!f.term.includes('null') && (!f.value || f.value === '')) { if (!f.term.includes('null') && !f.term.includes('empty') && (!f.value || f.value === '')) {
this.$message({ this.$message({
message: this.$t('chart.filter_value_can_null'), message: this.$t('chart.filter_value_can_null'),
type: 'error', type: 'error',
...@@ -1225,7 +1225,7 @@ export default { ...@@ -1225,7 +1225,7 @@ export default {
saveQuotaFilter() { saveQuotaFilter() {
for (let i = 0; i < this.quotaItem.filter.length; i++) { for (let i = 0; i < this.quotaItem.filter.length; i++) {
const f = this.quotaItem.filter[i] const f = this.quotaItem.filter[i]
if (!f.term.includes('null') && (!f.value || f.value === '')) { if (!f.term.includes('null') && !f.term.includes('empty') && (!f.value || f.value === '')) {
this.$message({ this.$message({
message: this.$t('chart.filter_value_can_null'), message: this.$t('chart.filter_value_can_null'),
type: 'error', type: 'error',
...@@ -1258,7 +1258,7 @@ export default { ...@@ -1258,7 +1258,7 @@ export default {
saveResultFilter() { saveResultFilter() {
for (let i = 0; i < this.filterItem.filter.length; i++) { for (let i = 0; i < this.filterItem.filter.length; i++) {
const f = this.filterItem.filter[i] const f = this.filterItem.filter[i]
if (!f.term.includes('null') && (!f.value || f.value === '')) { if (!f.term.includes('null') && !f.term.includes('empty') && (!f.value || f.value === '')) {
this.$message({ this.$message({
message: this.$t('chart.filter_value_can_null'), message: this.$t('chart.filter_value_can_null'),
type: 'error', type: 'error',
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论