From 7e1423190ac72539d3f731b79f5c2ae4a18f58d5 Mon Sep 17 00:00:00 2001
From: lizijie <lzjiiie@163.com>
Date: Tue, 06 Sep 2022 15:36:10 +0800
Subject: [PATCH] 按时间段查询走航车轨迹

---
 screen-common/src/main/java/com/moral/util/DateUtils.java |   63 +++++++++++++++++++++++++++----
 1 files changed, 54 insertions(+), 9 deletions(-)

diff --git a/screen-common/src/main/java/com/moral/util/DateUtils.java b/screen-common/src/main/java/com/moral/util/DateUtils.java
index 7776593..25c78ae 100644
--- a/screen-common/src/main/java/com/moral/util/DateUtils.java
+++ b/screen-common/src/main/java/com/moral/util/DateUtils.java
@@ -80,6 +80,10 @@
      * ������������(yyyy-MM-dd HH)
      * */
     public static final String yyyy_MM_dd_HH_EN = "yyyy-MM-dd HH";
+    /*
+     * ������������(MM-dd)
+     * */
+    public static final String MM_dd_EN = "MM-dd";
 
     /*
      * Date���toString������
@@ -651,6 +655,8 @@
         return new Date();
     }
 
+
+
     public static String getAfterNDays(Date date, int n, String formateStr) {
         SimpleDateFormat sdf = new SimpleDateFormat(formateStr);
         Calendar calendar = new GregorianCalendar();
@@ -956,9 +962,9 @@
         cal.setTime(date);
         final int last = cal.getActualMinimum(Calendar.DAY_OF_YEAR);
         cal.set(Calendar.DAY_OF_YEAR, last);
-        cal.set(Calendar.HOUR_OF_DAY,0);
-        cal.set(Calendar.MINUTE,0);
-        cal.set(Calendar.SECOND,0);
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
         return cal.getTime();
     }
 
@@ -977,16 +983,16 @@
     }
 
     /*
-    * ���������������������������������
-    * */
-    public static Date getFirstDayOfMonth(Date date){
+     * ���������������������������������
+     * */
+    public static Date getFirstDayOfMonth(Date date) {
         final Calendar cal = Calendar.getInstance();
         cal.setTime(date);
         final int last = cal.getActualMinimum(Calendar.DAY_OF_MONTH);
         cal.set(Calendar.DAY_OF_MONTH, last);
-        cal.set(Calendar.HOUR_OF_DAY,0);
-        cal.set(Calendar.MINUTE,0);
-        cal.set(Calendar.SECOND,0);
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
         return cal.getTime();
     }
 
@@ -1016,6 +1022,19 @@
         int year = cal.get(Calendar.YEAR);
         return year == currentYear;
     }
+
+    /*
+     * ���������������������������
+     * */
+    public static boolean isCurrentMonth(Date date) {
+        Calendar cal = Calendar.getInstance();
+        cal.setTime(new Date());
+        int currentYear = cal.get(Calendar.MONTH);
+        cal.setTime(date);
+        int year = cal.get(Calendar.MONTH);
+        return year == currentYear;
+    }
+
 
     /**
      * ������������������������������
@@ -1431,6 +1450,14 @@
         return calendar.getTime();
     }
 
+    //������������
+    public static Date addYears(Date date, int years) {
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(date);
+        calendar.add(Calendar.YEAR, years);
+        return calendar.getTime();
+    }
+
     /**
      * <p>
      * Title: getDays
@@ -1796,4 +1823,22 @@
         String lastYear = getDateAddYear(DateUtils.dateToDateString(getDate(), DateUtils.yyyy), -1);
         return DateUtils.getDate(lastYear, DateUtils.yyyy);
     }
+
+    //���������������������������������������������������
+    public static Map<Date, List<Integer>> getBeforeAndAfterHourDate(Date date) {
+        String s = dateToDateString(date, yyyy_MM_dd_EN);
+        List<String> timeLag = getTimeLag(s);
+        Map<Date, List<Integer>> result = new HashMap<>();
+        for (String s1 : timeLag) {
+            List<Integer> objects = new ArrayList<>();
+            Date current = getDate(s1, yyyy_MM_dd_HH_EN);
+            Date before = addHours(current, -1);
+            Date after = addHours(current, 1);
+            objects.add(getHour(before));
+            objects.add(getHour(current));
+            objects.add(getHour(after));
+            result.put(current, objects);
+        }
+        return result;
+    }
 }

--
Gitblit v1.8.0