//// Source code recreated from a .class file by IntelliJ IDEA// (powered by Fernflower decompiler)//package com.sprucetec.pdms.utils.util;import com.sprucetec.pdms.utils.exception.InvalidParamException;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.GregorianCalendar;import java.util.HashMap;import java.util.HashSet;import java.util.Map;import java.util.Set;public class DateUtil { public static final String YMD = "yyyy-MM-dd"; public static final String YMDHMS = "yyyy-MM-dd HH:mm:ss"; public static final String KEY_INT_STARTTIME = "intStarttime"; public static final String KEY_STR_STARTTIME = "strStarttime"; public static final String KEY_INT_ENDTIME = "intEndtime"; public static final String KEY_STR_ENDTIME = "strEndtime"; public DateUtil() { } public static int getCurrentTimeIntValue() { int sencends = (int)(System.currentTimeMillis() / 1000L); return sencends; } public static int getAppointedTimeIntValue(String time, String format) { SimpleDateFormat f = new SimpleDateFormat(format); Date date = null; try { date = f.parse(time); } catch (ParseException var5) { return -1; } return (int)(date.getTime() / 1000L); } public static Date getDateByTimeStamp(int timeStamp, String format) { SimpleDateFormat f = new SimpleDateFormat(format); String d = f.format(Long.valueOf((long)timeStamp * 1000L)); Date date = null; try { date = f.parse(d); } catch (ParseException var6) { date = null; } return date; } public static String getDateStringByTimeStamp(Integer timeStamp, String format) { SimpleDateFormat f = new SimpleDateFormat(format); String d = ""; if(timeStamp != null) { d = f.format(Long.valueOf((long)timeStamp.intValue() * 1000L)); } return d; } public static String formatDate(Object datetime, String format) { SimpleDateFormat f = new SimpleDateFormat(format); if(datetime instanceof Date) { return f.format((Date)datetime); } else if(datetime instanceof Long) { return f.format(new Date(((Long)datetime).longValue())); } else { throw new InvalidParamException("param datetime must be a Date or Long."); } } public static int getTimesmorning(Date date) { Calendar cal = Calendar.getInstance(); cal.setTime(date); cal.set(11, 0); cal.set(13, 0); cal.set(12, 0); cal.set(14, 0); return (int)(cal.getTimeInMillis() / 1000L); } public static int getTimesnight(Date date) { Calendar cal = Calendar.getInstance(); cal.setTime(date); cal.set(11, 23); cal.set(13, 59); cal.set(12, 59); cal.set(14, 999); return (int)(cal.getTimeInMillis() / 1000L); } public static String formatDateToString(Date date, String format) { SimpleDateFormat sdf = new SimpleDateFormat(format); return date == null?"":sdf.format(date); } public static Map<String, Object> formatStarttimeAndEndtime(String format, String strStarttime, String strEndtime, Integer intStarttime, Integer intEndtime) { HashMap timeMap = new HashMap(); if(format == null) { timeMap.put("strStarttime", (Object)null); timeMap.put("intStarttime", (Object)null); timeMap.put("strEndtime", (Object)null); timeMap.put("intEndtime", (Object)null); return timeMap; } else { boolean ymd = false; boolean ymdhms = false; format = format.trim(); int formatLen = format.length(); int ymdLen = "yyyy-MM-dd".length(); int ymdhmsLen = "yyyy-MM-dd HH:mm:ss".length(); if(formatLen == ymdLen) { ymd = true; } else if(formatLen == ymdhmsLen) { ymdhms = true; } if(strStarttime != null && "".equals(strStarttime.trim())) { strStarttime = null; } if(strEndtime != null && "".equals(strEndtime.trim())) { strEndtime = null; } if(intStarttime != null && intStarttime.intValue() <= 0) { intStarttime = null; } if(intEndtime != null && intEndtime.intValue() <= 0) { intEndtime = null; } Date currentTime = new Date(); int intCurrentTime = (int)(currentTime.getTime() / 1000L); int intTodayTimesmorning = getTimesmorning(currentTime); String strTodayTimesmorning = getDateStringByTimeStamp(Integer.valueOf(intTodayTimesmorning), format); int intTodayTimesnight = getTimesnight(currentTime); String strTodayTimesnight = getDateStringByTimeStamp(Integer.valueOf(intTodayTimesnight), format); if(strStarttime == null && strEndtime == null) { if((intStarttime != null || intEndtime != null) && (strStarttime == null || strEndtime == null) && strStarttime != null) { ; } } else { if(strStarttime != null && strEndtime != null) { intStarttime = Integer.valueOf(getAppointedTimeIntValue(strStarttime, format)); intEndtime = Integer.valueOf(getAppointedTimeIntValue(strEndtime, format)); } else if(strStarttime != null) { intStarttime = Integer.valueOf(getAppointedTimeIntValue(strStarttime, format)); intEndtime = Integer.valueOf(intTodayTimesnight); strEndtime = strTodayTimesnight; } else { intEndtime = Integer.valueOf(getAppointedTimeIntValue(strEndtime, format)); if(ymdhms) { strStarttime = "1970-01-01 00:00:00"; } else { strStarttime = "1970-01-01"; } intStarttime = Integer.valueOf(getAppointedTimeIntValue(strStarttime, format)); } if(ymd) { intStarttime = Integer.valueOf(getTimesmorning(getDateByTimeStamp(intStarttime.intValue(), format))); strStarttime = getDateStringByTimeStamp(intStarttime, format); intEndtime = Integer.valueOf(getTimesnight(getDateByTimeStamp(intEndtime.intValue(), format))); strEndtime = getDateStringByTimeStamp(intEndtime, format); } if(intStarttime.intValue() > intEndtime.intValue()) { intStarttime = Integer.valueOf(getTimesmorning(getDateByTimeStamp(intEndtime.intValue(), format))); strStarttime = getDateStringByTimeStamp(intStarttime, format); } if(intStarttime.intValue() > intCurrentTime) { intStarttime = Integer.valueOf(intTodayTimesmorning); strStarttime = getDateStringByTimeStamp(intStarttime, format); } if(intStarttime.equals(intEndtime)) { intStarttime = Integer.valueOf(getTimesmorning(getDateByTimeStamp(intStarttime.intValue(), format))); strStarttime = getDateStringByTimeStamp(intStarttime, format); } } timeMap.put("strStarttime", strStarttime); timeMap.put("intStarttime", intStarttime); timeMap.put("strEndtime", strEndtime); timeMap.put("intEndtime", intEndtime); return timeMap; } } public static Set<Integer> strTimesToIntTimes(String strTimes, String split, String foratter) { HashSet intTimeSet = new HashSet(); String[] dts = strTimes.split(split); String[] var5 = dts; int var6 = dts.length; for(int var7 = 0; var7 < var6; ++var7) { String str = var5[var7]; if(str != null && !"".equals(str.trim())) { try { intTimeSet.add(Integer.valueOf(getAppointedTimeIntValue(str.trim(), foratter))); } catch (Exception var10) { ; } } } return intTimeSet; } public static String foratterIntTime(Integer intTime) { if(intTime != null && intTime.intValue() > 0) { int h = intTime.intValue() / 60; int m = intTime.intValue() % 60; String hh = h + ""; String mm = m + ""; if(hh.length() == 1) { hh = "0" + h; } if(mm.length() == 1) { mm = "0" + m; } return hh + ":" + mm; } else { return "00:00"; } } public static Integer foratterStrTime(String strTime) { String strDateTime = "1970-01-01 " + strTime + ":00"; Integer result = Integer.valueOf(0); try { Integer intTime = Integer.valueOf(getAppointedTimeIntValue(strDateTime, "yyyy-MM-dd HH:mm:ss")); String hh = getDateStringByTimeStamp(intTime, "HH"); String mm = getDateStringByTimeStamp(intTime, "mm"); int h = Integer.parseInt(hh, 10); int m = Integer.parseInt(mm); result = Integer.valueOf(h * 60 + m); } catch (Exception var8) { ; } return result; } public static Integer foratterDateTime(String strDateTime) { Integer resultIntTime = Integer.valueOf(0); if(strDateTime == null) { return resultIntTime; } else { strDateTime = strDateTime.trim(); SimpleDateFormat sdf = new SimpleDateFormat(); if(!"".equals(strDateTime) && strDateTime.indexOf("date") != 0) { if(strDateTime.indexOf("time") == 0) { if(strDateTime.length() > 4) { switch(strDateTime.toCharArray()[4]) { case 'H': case 'h': sdf = new SimpleDateFormat("HH"); break; case 'M': case 'm': sdf = new SimpleDateFormat("HH:mm"); break; case 'S': sdf = new SimpleDateFormat("HH:mm:ss:SSS"); break; case 's': sdf = new SimpleDateFormat("HH:mm:ss"); } strDateTime = sdf.format(new Date()); } else { sdf = new SimpleDateFormat("HH:mm:ss"); strDateTime = sdf.format(new Date()); } resultIntTime = foratterDateTime(strDateTime); } else if(strDateTime.indexOf("datetime") != 0 && strDateTime.indexOf("-") <= 0 && strDateTime.indexOf("/") <= 0) { String[] strArrTime = strDateTime.split(":"); int strArrLenTime = strArrTime.length; if(strArrLenTime == 1) { resultIntTime = Integer.valueOf(Integer.parseInt(strArrTime[0])); } else if(strArrLenTime == 2) { resultIntTime = Integer.valueOf(Integer.parseInt(strArrTime[0]) * 60 + Integer.parseInt(strArrTime[1])); } else if(strArrLenTime == 3) { resultIntTime = Integer.valueOf(Integer.parseInt(strArrTime[0]) * 60 * 60 + Integer.parseInt(strArrTime[1]) * 60 + Integer.parseInt(strArrTime[2])); } else { resultIntTime = Integer.valueOf(0); } } } return resultIntTime; } } public static int getCurrentTimeMinuteValue() { Integer result = Integer.valueOf(0); try { Integer intTime = Integer.valueOf(getCurrentTimeIntValue()); String hh = getDateStringByTimeStamp(intTime, "HH"); String mm = getDateStringByTimeStamp(intTime, "mm"); int h = Integer.parseInt(hh, 10); int m = Integer.parseInt(mm); result = Integer.valueOf(h * 60 + m); } catch (Exception var6) { ; } return result.intValue(); } public static void main(String[] args) { int i = getCurrentTimeMinuteValue(); System.out.println(i); System.out.println(foratterIntTime(Integer.valueOf(i))); System.out.println(foratterStrTime("11:25")); Integer timeint = foratterDateTime("timeM"); System.out.println(foratterIntTime(timeint)); } public static Date gregorianCalendar(Date date, int value, int field) { GregorianCalendar gc = new GregorianCalendar(); gc.setTime(date); gc.add(field, value); date = gc.getTime(); return date; } public static Integer addDay(Integer intDate, int day) { Integer result = Integer.valueOf(0); int oneDay = 86400; result = Integer.valueOf(intDate.intValue() + day * oneDay); return result; } public static Integer addDay(Date date, int day) { Integer intDate = Integer.valueOf((int)(date.getTime() / 1000L)); Integer result = Integer.valueOf(0); int oneDay = 86400; result = Integer.valueOf(intDate.intValue() + day * oneDay); return result; } public static Integer getAgeByStartDate(int startTime) { Date startDate = getDateByTimeStamp(startTime, "yyyy-MM-dd HH:mm:ss"); Calendar cal = Calendar.getInstance(); Calendar startCal = Calendar.getInstance(); startCal.setTime(startDate); if(cal.before(startCal)) { return Integer.valueOf(0); } else { int year = cal.get(1); int month = cal.get(2); int day = cal.get(5); int startYear = startCal.get(1); int startMonth = startCal.get(2); int startDay = startCal.get(5); int age = year - startYear; if(month > startMonth) { ++age; } else if(month == startMonth && day >= startDay) { ++age; } return Integer.valueOf(age); } }}