From eb1c7808ccd8cf2aa2d0eae1ab20e560908841e3 Mon Sep 17 00:00:00 2001
From: dengzedong <dengzedong@email>
Date: 星期四, 19 六月 2025 18:38:39 +0800
Subject: [PATCH] setDataSource(dataSet.getDataSource())

---
 iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/utils/IndSqlUtils.java |   51 +++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 41 insertions(+), 10 deletions(-)

diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/utils/IndSqlUtils.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/utils/IndSqlUtils.java
index 08f68dd..3f99482 100644
--- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/utils/IndSqlUtils.java
+++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/utils/IndSqlUtils.java
@@ -66,7 +66,7 @@
         if (dataSet == null) {
             return result;
         }
-        result.setDataSource(indItem.getDataSource());
+        result.setDataSource(dataSet.getDataSource());
         StringBuilder selectSql = new StringBuilder();
         IndStatFuncEnum statFun = IndStatFuncEnum.getEumByCode(StringUtils.isBlank(indItem.getStatFunc()) ? IndStatFuncEnum.DEFAULT.getCode() : indItem.getStatFunc());
         switch (statFun) {
@@ -153,20 +153,35 @@
         switch (timeLimit) {
             case TODAY:
                 whereSql.append(indItem.getTimeLabel());
-                whereSql.append("='");
+                whereSql.append(" >= '");
+                calendar.set(Calendar.MINUTE, 0);
+                calendar.set(Calendar.HOUR_OF_DAY, 0);
+                whereSql.append(DateUtils.format(calendar.getTime(), datePattern));
+                whereSql.append("' AND ");
+                whereSql.append(indItem.getTimeLabel());
+                whereSql.append(" < '");
+                calendar.add(Calendar.DAY_OF_YEAR, 1);
                 whereSql.append(DateUtils.format(calendar.getTime(), datePattern));
                 whereSql.append("'");
                 break;
             case YESTERDAY:
-                calendar.add(Calendar.DAY_OF_YEAR, -1);
                 whereSql.append(indItem.getTimeLabel());
-                whereSql.append("='");
+                whereSql.append(" < '");
+                calendar.set(Calendar.MINUTE, 0);
+                calendar.set(Calendar.HOUR_OF_DAY, 0);
+                whereSql.append(DateUtils.format(calendar.getTime(), datePattern));
+                whereSql.append("' AND ");
+                whereSql.append(indItem.getTimeLabel());
+                whereSql.append(" >= '");
+                calendar.add(Calendar.DAY_OF_YEAR, -1);
                 whereSql.append(DateUtils.format(calendar.getTime(), datePattern));
                 whereSql.append("'");
                 break;
             case LAST_DAY_7:
                 whereSql.append(indItem.getTimeLabel());
-                whereSql.append(" <= '");
+                whereSql.append(" < '");
+                calendar.set(Calendar.MINUTE, 0);
+                calendar.set(Calendar.HOUR_OF_DAY, 0);
                 whereSql.append(DateUtils.format(calendar.getTime(), datePattern));
                 whereSql.append("' AND ");
                 whereSql.append(indItem.getTimeLabel());
@@ -177,7 +192,9 @@
                 break;
             case LAST_DAY_30:
                 whereSql.append(indItem.getTimeLabel());
-                whereSql.append(" <= '");
+                whereSql.append(" < '");
+                calendar.set(Calendar.MINUTE, 0);
+                calendar.set(Calendar.HOUR_OF_DAY, 0);
                 whereSql.append(DateUtils.format(calendar.getTime(), datePattern));
                 whereSql.append("' AND ");
                 whereSql.append(indItem.getTimeLabel());
@@ -188,7 +205,9 @@
                 break;
             case LAST_DAY_90:
                 whereSql.append(indItem.getTimeLabel());
-                whereSql.append(" <= '");
+                whereSql.append(" < '");
+                calendar.set(Calendar.MINUTE, 0);
+                calendar.set(Calendar.HOUR_OF_DAY, 0);
                 whereSql.append(DateUtils.format(calendar.getTime(), datePattern));
                 whereSql.append("' AND ");
                 whereSql.append(indItem.getTimeLabel());
@@ -244,15 +263,27 @@
                 whereSql.append("'");
                 break;
             case LAST_YEAR:
-                calendar.add(Calendar.YEAR, -1);
                 whereSql.append(indItem.getTimeLabel());
-                whereSql.append("='");
+                whereSql.append(" <= '");
+                whereSql.append(DateUtils.format(calendar.getTime(), datePattern));
+                whereSql.append("' AND ");
+                whereSql.append(indItem.getTimeLabel());
+                whereSql.append(" >= '");
+                calendar.add(Calendar.YEAR, -1);
                 whereSql.append(DateUtils.format(calendar.getTime(), datePattern));
                 whereSql.append("'");
                 break;
             case THIS_YEAR:
                 whereSql.append(indItem.getTimeLabel());
-                whereSql.append("='");
+                whereSql.append(" >= '");
+                calendar.set(Calendar.MINUTE, 0);
+                calendar.set(Calendar.HOUR_OF_DAY, 0);
+                calendar.set(Calendar.DAY_OF_YEAR, 1);
+                whereSql.append(DateUtils.format(calendar.getTime(), datePattern));
+                whereSql.append("' AND ");
+                whereSql.append(indItem.getTimeLabel());
+                whereSql.append(" < '");
+                calendar.add(Calendar.YEAR, 1);
                 whereSql.append(DateUtils.format(calendar.getTime(), datePattern));
                 whereSql.append("'");
                 break;

--
Gitblit v1.9.3