diff --git a/core/backend/src/main/java/io/dataease/provider/engine/doris/DorisQueryProvider.java b/core/backend/src/main/java/io/dataease/provider/engine/doris/DorisQueryProvider.java index 6db85d3ce8..b68fb346ac 100644 --- a/core/backend/src/main/java/io/dataease/provider/engine/doris/DorisQueryProvider.java +++ b/core/backend/src/main/java/io/dataease/provider/engine/doris/DorisQueryProvider.java @@ -1186,6 +1186,8 @@ public class DorisQueryProvider extends QueryProvider { return "%Y" + split + "%m" + split + "%d"; case "H_m_s": return "%H:%i:%S"; + case "y_M_d_H": + return "%Y" + split + "%m" + split + "%d" + " %H"; case "y_M_d_H_m": return "%Y" + split + "%m" + split + "%d" + " %H:%i"; case "y_M_d_H_m_s": diff --git a/core/backend/src/main/java/io/dataease/provider/engine/mysql/MysqlQueryProvider.java b/core/backend/src/main/java/io/dataease/provider/engine/mysql/MysqlQueryProvider.java index 3f1b4df0c4..6c459d49e8 100644 --- a/core/backend/src/main/java/io/dataease/provider/engine/mysql/MysqlQueryProvider.java +++ b/core/backend/src/main/java/io/dataease/provider/engine/mysql/MysqlQueryProvider.java @@ -1064,16 +1064,16 @@ public class MysqlQueryProvider extends QueryProvider { String format = transDateFormat(request.getDateStyle(), request.getDatePattern()); if (field.getDeExtractType() == 0 || field.getDeExtractType() == 5 || field.getDeExtractType() == 1) { String date = String.format(MySQLConstants.STR_TO_DATE, originName, StringUtils.isNotEmpty(field.getDateFormat()) ? field.getDateFormat() : MysqlConstants.DEFAULT_DATE_FORMAT); - if(request.getOperator().equals("between")){ + if (request.getOperator().equals("between")) { whereName = date; - }else { + } else { whereName = String.format(MySQLConstants.DATE_FORMAT, date, format); } } if (field.getDeExtractType() == 2 || field.getDeExtractType() == 3 || field.getDeExtractType() == 4) { - if(request.getOperator().equals("between")){ + if (request.getOperator().equals("between")) { whereName = originName; - }else { + } else { String cast = String.format(MySQLConstants.CAST, originName, MySQLConstants.DEFAULT_INT_FORMAT) + "/1000"; whereName = String.format(DorisConstants.FROM_UNIXTIME, cast, format); } @@ -1166,6 +1166,8 @@ public class MysqlQueryProvider extends QueryProvider { return "%Y" + split + "%m" + split + "%d"; case "H_m_s": return "%H:%i:%S"; + case "y_M_d_H": + return "%Y" + split + "%m" + split + "%d" + " %H"; case "y_M_d_H_m": return "%Y" + split + "%m" + split + "%d" + " %H:%i"; case "y_M_d_H_m_s": diff --git a/core/backend/src/main/java/io/dataease/provider/query/ck/CKQueryProvider.java b/core/backend/src/main/java/io/dataease/provider/query/ck/CKQueryProvider.java index 18b8ed35d8..9d6f7cf6a5 100644 --- a/core/backend/src/main/java/io/dataease/provider/query/ck/CKQueryProvider.java +++ b/core/backend/src/main/java/io/dataease/provider/query/ck/CKQueryProvider.java @@ -820,9 +820,9 @@ public class CKQueryProvider extends QueryProvider { } public String getTotalCount(boolean isTable, String sql, Datasource ds) { - if(isTable){ + if (isTable) { return "SELECT COUNT(*) from " + String.format(CKConstants.KEYWORD_TABLE, sql); - }else { + } else { return "SELECT COUNT(*) from ( " + sqlFix(sql) + " ) DE_COUNT_TEMP"; } } @@ -1251,6 +1251,8 @@ public class CKQueryProvider extends QueryProvider { return "%Y" + split + "%m" + split + "%d"; case "H_m_s": return "%H:%M:%S"; + case "y_M_d_H": + return "%Y" + split + "%m" + split + "%d" + " %H"; case "y_M_d_H_m": return "%Y" + split + "%m" + split + "%d" + " %H:%M"; case "y_M_d_H_m_s": diff --git a/core/backend/src/main/java/io/dataease/provider/query/db2/Db2QueryProvider.java b/core/backend/src/main/java/io/dataease/provider/query/db2/Db2QueryProvider.java index 4899c0da2a..394c6d0aa4 100644 --- a/core/backend/src/main/java/io/dataease/provider/query/db2/Db2QueryProvider.java +++ b/core/backend/src/main/java/io/dataease/provider/query/db2/Db2QueryProvider.java @@ -1122,25 +1122,25 @@ public class Db2QueryProvider extends QueryProvider { } else { originName = String.format(Db2Constants.STR_TO_DATE, originName); } - if(request.getOperator().equals("between")){ + if (request.getOperator().equals("between")) { whereName = originName; - }else { + } else { whereName = String.format(Db2Constants.DATE_FORMAT, originName, format); } } if (field.getDeExtractType() == DeTypeConstants.DE_INT || field.getDeExtractType() == 3 || field.getDeExtractType() == 4) { - if(request.getOperator().equals("between")){ + if (request.getOperator().equals("between")) { String cast = String.format(Db2Constants.CAST, originName, Db2Constants.DEFAULT_INT_FORMAT); whereName = String.format(Db2Constants.FROM_UNIXTIME, cast, Db2Constants.DEFAULT_DATE_FORMAT); - }else { + } else { String cast = String.format(Db2Constants.CAST, originName, Db2Constants.DEFAULT_INT_FORMAT); whereName = String.format(Db2Constants.FROM_UNIXTIME, cast, format); } } if (field.getDeExtractType() == DeTypeConstants.DE_TIME) { - if(request.getOperator().equals("between")){ + if (request.getOperator().equals("between")) { whereName = originName; - }else { + } else { if (field.getType().equalsIgnoreCase("TIME")) { whereName = String.format(Db2Constants.FORMAT_TIME, originName, format); } else if (field.getType().equalsIgnoreCase("DATE")) { @@ -1242,6 +1242,8 @@ public class Db2QueryProvider extends QueryProvider { return "YYYY" + split + "MM" + split + "DD"; case "H_m_s": return "HH24:MI:SS"; + case "y_M_d_H": + return "YYYY" + split + "MM" + split + "DD" + " HH24"; case "y_M_d_H_m": return "YYYY" + split + "MM" + split + "DD" + " HH24:MI"; case "y_M_d_H_m_s": diff --git a/core/backend/src/main/java/io/dataease/provider/query/es/EsQueryProvider.java b/core/backend/src/main/java/io/dataease/provider/query/es/EsQueryProvider.java index 7f3f5f9f38..610e837715 100644 --- a/core/backend/src/main/java/io/dataease/provider/query/es/EsQueryProvider.java +++ b/core/backend/src/main/java/io/dataease/provider/query/es/EsQueryProvider.java @@ -1174,6 +1174,8 @@ public class EsQueryProvider extends QueryProvider { return "yyyy" + split + "MM" + split + "dd"; case "H_m_s": return "HH:mm:ss"; + case "y_M_d_H": + return "yyyy" + split + "MM" + split + "dd" + " HH"; case "y_M_d_H_m": return "yyyy" + split + "MM" + split + "dd" + " HH:mm"; case "y_M_d_H_m_s": @@ -1329,7 +1331,7 @@ public class EsQueryProvider extends QueryProvider { } public String getResultCount(boolean isTable, String sql, List xAxis, List fieldCustomFilter, List rowPermissionsTree, List extFilterRequestList, Datasource ds, ChartViewWithBLOBs view) { - return null; + return null; } @Override diff --git a/core/backend/src/main/java/io/dataease/provider/query/hive/HiveQueryProvider.java b/core/backend/src/main/java/io/dataease/provider/query/hive/HiveQueryProvider.java index 463530d966..697c370f70 100644 --- a/core/backend/src/main/java/io/dataease/provider/query/hive/HiveQueryProvider.java +++ b/core/backend/src/main/java/io/dataease/provider/query/hive/HiveQueryProvider.java @@ -1147,6 +1147,8 @@ public class HiveQueryProvider extends QueryProvider { return "yyyy" + split + "MM" + split + "dd"; case "H_m_s": return "HH:mm:ss"; + case "y_M_d_H": + return "yyyy" + split + "MM" + split + "dd" + " HH"; case "y_M_d_H_m": return "yyyy" + split + "MM" + split + "dd" + " HH:mm"; case "y_M_d_H_m_s": diff --git a/core/backend/src/main/java/io/dataease/provider/query/impala/ImpalaQueryProvider.java b/core/backend/src/main/java/io/dataease/provider/query/impala/ImpalaQueryProvider.java index a62a7fbf2e..9f3989a44a 100644 --- a/core/backend/src/main/java/io/dataease/provider/query/impala/ImpalaQueryProvider.java +++ b/core/backend/src/main/java/io/dataease/provider/query/impala/ImpalaQueryProvider.java @@ -1153,6 +1153,8 @@ public class ImpalaQueryProvider extends QueryProvider { return "yyyy" + split + "MM" + split + "dd"; case "H_m_s": return "HH:mm:ss"; + case "y_M_d_H": + return "yyyy" + split + "MM" + split + "dd" + " HH"; case "y_M_d_H_m": return "yyyy" + split + "MM" + split + "dd" + " HH:mm"; case "y_M_d_H_m_s": diff --git a/core/backend/src/main/java/io/dataease/provider/query/mongodb/MongoQueryProvider.java b/core/backend/src/main/java/io/dataease/provider/query/mongodb/MongoQueryProvider.java index 73218b28d8..7e4ebcc7e1 100644 --- a/core/backend/src/main/java/io/dataease/provider/query/mongodb/MongoQueryProvider.java +++ b/core/backend/src/main/java/io/dataease/provider/query/mongodb/MongoQueryProvider.java @@ -1038,6 +1038,8 @@ public class MongoQueryProvider extends QueryProvider { return "%Y" + split + "%m" + split + "%d"; case "H_m_s": return "%H:%i:%S"; + case "y_M_d_H": + return "%Y" + split + "%m" + split + "%d" + " %H"; case "y_M_d_H_m": return "%Y" + split + "%m" + split + "%d" + " %H:%i"; case "y_M_d_H_m_s": diff --git a/core/backend/src/main/java/io/dataease/provider/query/mysql/MysqlQueryProvider.java b/core/backend/src/main/java/io/dataease/provider/query/mysql/MysqlQueryProvider.java index 8b61050428..17f7a77641 100644 --- a/core/backend/src/main/java/io/dataease/provider/query/mysql/MysqlQueryProvider.java +++ b/core/backend/src/main/java/io/dataease/provider/query/mysql/MysqlQueryProvider.java @@ -1190,6 +1190,8 @@ public class MysqlQueryProvider extends QueryProvider { return "%Y" + split + "%m" + split + "%d"; case "H_m_s": return "%H:%i:%S"; + case "y_M_d_H": + return "%Y" + split + "%m" + split + "%d" + " %H"; case "y_M_d_H_m": return "%Y" + split + "%m" + split + "%d" + " %H:%i"; case "y_M_d_H_m_s": diff --git a/core/backend/src/main/java/io/dataease/provider/query/oracle/OracleQueryProvider.java b/core/backend/src/main/java/io/dataease/provider/query/oracle/OracleQueryProvider.java index 7eef266f6e..5dd5ab8763 100644 --- a/core/backend/src/main/java/io/dataease/provider/query/oracle/OracleQueryProvider.java +++ b/core/backend/src/main/java/io/dataease/provider/query/oracle/OracleQueryProvider.java @@ -1317,6 +1317,8 @@ public class OracleQueryProvider extends QueryProvider { return "YYYY" + split + "MM" + split + "DD"; case "H_m_s": return "HH24:MI:SS"; + case "y_M_d_H": + return "YYYY" + split + "MM" + split + "DD" + " HH24"; case "y_M_d_H_m": return "YYYY" + split + "MM" + split + "DD" + " HH24:MI"; case "y_M_d_H_m_s": diff --git a/core/backend/src/main/java/io/dataease/provider/query/pg/PgQueryProvider.java b/core/backend/src/main/java/io/dataease/provider/query/pg/PgQueryProvider.java index a7f9e17295..bb00acfdee 100644 --- a/core/backend/src/main/java/io/dataease/provider/query/pg/PgQueryProvider.java +++ b/core/backend/src/main/java/io/dataease/provider/query/pg/PgQueryProvider.java @@ -1181,6 +1181,8 @@ public class PgQueryProvider extends QueryProvider { return "YYYY" + split + "MM" + split + "DD"; case "H_m_s": return "HH24:MI:SS"; + case "y_M_d_H": + return "YYYY" + split + "MM" + split + "DD" + " HH24"; case "y_M_d_H_m": return "YYYY" + split + "MM" + split + "DD" + " HH24:MI"; case "y_M_d_H_m_s": diff --git a/core/backend/src/main/java/io/dataease/provider/query/redshift/RedshiftQueryProvider.java b/core/backend/src/main/java/io/dataease/provider/query/redshift/RedshiftQueryProvider.java index 56543a16a3..393c4d040a 100644 --- a/core/backend/src/main/java/io/dataease/provider/query/redshift/RedshiftQueryProvider.java +++ b/core/backend/src/main/java/io/dataease/provider/query/redshift/RedshiftQueryProvider.java @@ -1169,6 +1169,8 @@ public class RedshiftQueryProvider extends QueryProvider { return "YYYY" + split + "MM" + split + "DD"; case "H_m_s": return "HH24:MI:SS'"; + case "y_M_d_H": + return "YYYY" + split + "MM" + split + "DD" + " HH24"; case "y_M_d_H_m": return "YYYY" + split + "MM" + split + "DD" + " HH24:MI"; case "y_M_d_H_m_s": diff --git a/core/backend/src/main/java/io/dataease/provider/query/sqlserver/SqlserverQueryProvider.java b/core/backend/src/main/java/io/dataease/provider/query/sqlserver/SqlserverQueryProvider.java index b9d8acf5c5..53821d0b14 100644 --- a/core/backend/src/main/java/io/dataease/provider/query/sqlserver/SqlserverQueryProvider.java +++ b/core/backend/src/main/java/io/dataease/provider/query/sqlserver/SqlserverQueryProvider.java @@ -1227,6 +1227,12 @@ public class SqlserverQueryProvider extends QueryProvider { } case "H_m_s": return "CONVERT(varchar(100), " + originField + ", 8)"; + case "y_M_d_H": + if (split.equalsIgnoreCase("-")) { + return "substring( convert(varchar," + originField + ",120),1,13)"; + } else { + return "replace(" + "substring( convert(varchar," + originField + ",120),1,13), '-','/')"; + } case "y_M_d_H_m": if (split.equalsIgnoreCase("-")) { return "substring( convert(varchar," + originField + ",120),1,16)"; diff --git a/core/frontend/src/lang/en.js b/core/frontend/src/lang/en.js index e81b23265a..10e6b67d83 100644 --- a/core/frontend/src/lang/en.js +++ b/core/frontend/src/lang/en.js @@ -1192,6 +1192,7 @@ export default { y_W: 'Year Week', y_M_d: 'Year Month Day', H_m_s: 'Hour Minute Second', + y_M_d_H: 'Year Month Day Hour', y_M_d_H_m: 'Year Month Day Hour Minute', y_M_d_H_m_s: 'Year Month Day Hour Minute Second', date_sub: 'yyyy-MM-dd', diff --git a/core/frontend/src/lang/tw.js b/core/frontend/src/lang/tw.js index 574745c5eb..f5a2062a6b 100644 --- a/core/frontend/src/lang/tw.js +++ b/core/frontend/src/lang/tw.js @@ -1191,6 +1191,7 @@ export default { y_W: '年周', y_M_d: '年月日', H_m_s: '時分秒', + y_M_d_H: '年月日時', y_M_d_H_m: '年月日時分', y_M_d_H_m_s: '年月日時分秒', date_sub: 'yyyy-MM-dd', diff --git a/core/frontend/src/lang/zh.js b/core/frontend/src/lang/zh.js index afca486999..983477b26e 100644 --- a/core/frontend/src/lang/zh.js +++ b/core/frontend/src/lang/zh.js @@ -1190,6 +1190,7 @@ export default { y_W: '年周', y_M_d: '年月日', H_m_s: '时分秒', + y_M_d_H: '年月日时', y_M_d_H_m: '年月日时分', y_M_d_H_m_s: '年月日时分秒', date_sub: 'yyyy-MM-dd', diff --git a/core/frontend/src/views/chart/components/dragItem/DimensionExtItem.vue b/core/frontend/src/views/chart/components/dragItem/DimensionExtItem.vue index fca25c18d9..322deb7308 100644 --- a/core/frontend/src/views/chart/components/dragItem/DimensionExtItem.vue +++ b/core/frontend/src/views/chart/components/dragItem/DimensionExtItem.vue @@ -122,6 +122,7 @@ :command="beforeDateStyle('H_m_s')" divided >{{ $t('chart.H_m_s') }} + {{ $t('chart.y_M_d_H') }} {{ $t('chart.y_M_d_H_m') }} {{ $t('chart.y_M_d_H_m_s') }} diff --git a/core/frontend/src/views/chart/components/dragItem/DimensionItem.vue b/core/frontend/src/views/chart/components/dragItem/DimensionItem.vue index 1b5aade2ad..b0fbd2aebd 100644 --- a/core/frontend/src/views/chart/components/dragItem/DimensionItem.vue +++ b/core/frontend/src/views/chart/components/dragItem/DimensionItem.vue @@ -130,6 +130,7 @@ :command="beforeDateStyle('H_m_s')" divided >{{ $t('chart.H_m_s') }} + {{ $t('chart.y_M_d_H') }} {{ $t('chart.y_M_d_H_m') }} {{ $t('chart.y_M_d_H_m_s') }}