From efcc514b4985c82934cd3d692dea4a7a6742397d Mon Sep 17 00:00:00 2001 From: xufenglei <xufenglei> Date: Tue, 28 Aug 2018 16:58:49 +0800 Subject: [PATCH] 警报报表 接口优化 --- src/main/java/com/moral/common/util/ReportTimeFormat.java | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 50 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/moral/common/util/ReportTimeFormat.java b/src/main/java/com/moral/common/util/ReportTimeFormat.java index 47aa811..8528d0e 100644 --- a/src/main/java/com/moral/common/util/ReportTimeFormat.java +++ b/src/main/java/com/moral/common/util/ReportTimeFormat.java @@ -10,13 +10,24 @@ import java.util.List; public class ReportTimeFormat { + // ������mysql format���������java���format������������ + public final static String YEAR_FORMAT = "yyyy"; + public final static String MONTH_FORMAT = "yyyy-MM"; + public final static String DAY_FORMAT = "yyyy-MM-dd"; + public final static String HOUR_FORMAT = "yyyy-MM-dd/HH"; + public final static String MINUTE_FORMAT = "yyyy-MM-dd/HH:mm"; + public final static String YEAR_FORMAT_OF_MYSQL = "%Y"; + public final static String MONTH_FORMAT_OF_MYSQL = "%Y-%m"; + public final static String DAY_FORMAT_OF_MYSQL = "%Y-%m-%d"; + public final static String HOUR_FORMAT_OF_MYSQL = "%Y-%m-%d/%H"; + public final static String MINUTE_FORMAT_OF_MYSQL = "%Y-%m-%d/%H:%i"; public static String toMySqlTimeFormat(TimeUnits timeUnits){ switch (timeUnits){ - case YEAR: return "%Y"; - case MONTH: return "%Y-%m"; - case DAY: return "%Y-%m-%d"; - case HOUR: return "%Y-%m-%d/%H"; - case MINUTE:return "%Y-%m-%d/%H:%i"; + case YEAR: return YEAR_FORMAT_OF_MYSQL; + case MONTH: return MONTH_FORMAT_OF_MYSQL; + case DAY: return DAY_FORMAT_OF_MYSQL; + case HOUR: return HOUR_FORMAT_OF_MYSQL; + case MINUTE:return MINUTE_FORMAT_OF_MYSQL; } return "%Y-%m-%d%H:%i:%s"; } @@ -30,6 +41,12 @@ } return "%s"; } + + /** + * ������ ������������������ ������������ + * @param timePeriod + * @return + */ public static List<String> makeTimeList(TimePeriod timePeriod){ Calendar start = Calendar.getInstance(); start.setTime(timePeriod.getStartTime()); @@ -39,15 +56,15 @@ String formatStyle = ""; int timeUnit = 0; switch (timePeriod.getTimeUnits()){ - case YEAR: formatStyle ="yyyy"; + case YEAR: formatStyle = YEAR_FORMAT; timeUnit = Calendar.YEAR;break; - case MONTH: formatStyle ="yyyy-MM"; + case MONTH: formatStyle =MONTH_FORMAT; timeUnit = Calendar.MONTH;break; - case DAY: formatStyle ="yyyy-MM-dd"; + case DAY: formatStyle =DAY_FORMAT; timeUnit = Calendar.DAY_OF_YEAR;break; - case HOUR: formatStyle ="yyyy-MM-dd/HH"; + case HOUR: formatStyle =HOUR_FORMAT; timeUnit = Calendar.HOUR;break; - case MINUTE: formatStyle ="yyyy-MM-dd/HH:mm"; + case MINUTE: formatStyle =MINUTE_FORMAT; timeUnit = Calendar.MINUTE;break; } do{ @@ -58,6 +75,29 @@ while (start.getTimeInMillis()<end.getTimeInMillis()); return timeList; } + + /** + * ������������������ + * @param date ��������������� + * @param timeUnits ������������������������������������������ + * @param amount ������������������������������������ + * @return + */ + public static Date dateCalc(Date date,TimeUnits timeUnits,Integer amount) { + Calendar rightNow = Calendar.getInstance(); + rightNow.setTime(date); + rightNow.add(toCalendarTimeUnit(timeUnits), amount); + return rightNow.getTime(); + } + private static int toCalendarTimeUnit(TimeUnits timeUnits) { + switch (timeUnits) { + case YEAR: return Calendar.YEAR; + case MONTH: return Calendar.MONTH; + case DAY: return Calendar.DAY_OF_YEAR; + case HOUR: return Calendar.HOUR; + default: return Calendar.MINUTE; + } + } /**"yyyy-MM-dd hh:mm:ss" * ������������date��������������������������������������������� * @param date -- Gitblit v1.8.0