1
jyy
2021-01-07 459426b1590862777553a8b77335e13acfe5612b
zq-erp/src/main/java/com/matrix/core/tools/DateUtil.java
@@ -17,6 +17,19 @@
 * @createTime 2014.08.30
 */
public class DateUtil {
   private final static int[] dayArr = new int[] { 20, 19, 21, 20, 21, 22, 23,
         23, 23, 24, 23, 22 };
   private final static String[] constellationArr = new String[] { "摩羯座",
         "水瓶座", "双鱼座", "白羊座", "金牛座", "双子座", "巨蟹座", "狮子座", "处女座", "天秤座",
         "天蝎座", "射手座", "摩羯座" };
   public static final String DATE_FORMAT_STS = "yyyy-MM-dd'T'HH:mm:ss";
   public static final String DATE_FORMAT_ST = "yyyy-MM-dd'T'HH:mm";
   public static final String HH_mm = "HH:mm";
   public static final String HHmm = "HHmm";
   public static final String MONTH = "yyyy-MM";
@@ -24,11 +37,12 @@
   public static final String DATE_FORMAT_MONGO = "yyyy-MM-dd'T'HH:mm:ss.SSS";
   public static final String DATE_FORMAT_STS = "yyyy-MM-dd'T'HH:mm:ss";
   public static final String DATE_FORMAT_MM = "yyyy-MM-dd HH:mm";
   public static final String DATE_FORMAT_HH = "yyyy-MM-dd HH";
   public static final String DATE_FORMAT_DD = "yyyy-MM-dd";
@@ -94,6 +108,34 @@
   }
   /**
    * Java通过生日计算星座
    *
    * @param month
    * @param day
    * @return
    */
   public static String getConstellation(int month, int day) {
      return day < dayArr[month - 1] ? constellationArr[month - 1]
            : constellationArr[month];
   }
   /**
    *
    * @Title: getNextNMinute  获取date之后N分钟的时间
    * @Description: TODO
    * @author:罗凯
    * @param date
    * @return
    * Date    返回类型
    * @date 2016年8月3日 下午2:48:51
    * @throws
    */
   public static Date getNextNMinute(Date date,int n){
      return new Date(date.getTime()+(n*60*1000));
   }
   /**
    * 返回月份
    * 
    * @param date
@@ -145,7 +187,15 @@
      }
      return null;
   }
   /**
    * 获取一个编码
    * 获取一个当前时间并且加入了四位的随机字母
    * @return
    */
   public static String getTimeCode() {
      return dateToString(new Date(), "yyyyMMddssSSS")+StringUtils.getRandomString(4);
   }
   /**
    * 判断给定的日期是一周中的第几天,注意:按照中国的习惯,周日是第七天
@@ -354,7 +404,36 @@
      }
      return currentDate.after(referenceDate);
   }
   public static long getDifTimeMin(Date beginTime,Date endTime){
      return (endTime.getTime()-beginTime.getTime())/1000/ 60;
   }
   public static List<Date> getFutureDay(Date date, int start,int end){
      List<Date> dates=new ArrayList<Date>();
      for (int i = 0; i < end-start; i++) {
         dates.add(DateUtil.nextNDate(date,i));
      }
      return dates;
   }
   /**
    * 字符串转日期 如果转换失败就返回一个当前时间date
    *
    * @param dateStr
    * @param format
    * @return
    */
   public static Date stringToDateNew(String dateStr, String format) {
      if (StringUtils.isBlank(dateStr) || StringUtils.isBlank(format)) {
         return new Date();
      }
      DateFormat fmt = new SimpleDateFormat(format);
      try {
         return fmt.parse(dateStr);
      } catch (ParseException e) {
      }
      return new Date();
   }
   /**
    * 判断currentDate是否在startDate和endDate之间,不包括startDate和endDate
    *