diff --git a/newadmin/common-api/src/main/java/com/chaozhanggui/common/system/util/DateUtils.java b/newadmin/common-api/src/main/java/com/chaozhanggui/common/system/util/DateUtils.java new file mode 100644 index 0000000..47de9d4 --- /dev/null +++ b/newadmin/common-api/src/main/java/com/chaozhanggui/common/system/util/DateUtils.java @@ -0,0 +1,471 @@ +package com.chaozhanggui.common.system.util; + +import java.text.DateFormat; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; + +/** + * Created by SEELE on 2018/4/19. + */ +public class DateUtils { + + private final static SimpleDateFormat sdfYear = new SimpleDateFormat("yyyy"); + private final static SimpleDateFormat sdfDay = new SimpleDateFormat("yyyy-MM-dd"); + private final static SimpleDateFormat sdfDays = new SimpleDateFormat("yyyyMMdd"); + private final static SimpleDateFormat sdfTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + private final static SimpleDateFormat sdfTimeSS = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); + private final static SimpleDateFormat sdfTimes = new SimpleDateFormat("yyyyMMddHHmmss"); + private final static SimpleDateFormat times=new SimpleDateFormat("HH:mm:ss"); + + private final static SimpleDateFormat sdfTimesSS = new SimpleDateFormat("yyyyMMddHHmmssSSS"); + + public static int daysOfTwoDate(String startTime, String endTime) { + SimpleDateFormat formatter = new SimpleDateFormat( "yyyy-MM-dd"); + Date date1=null; + Date date = null; + Long l = 0L; + try { + date = formatter.parse(startTime); + long startLongTime = date.getTime(); + date1 = formatter.parse(endTime); + long endLongTime = date1.getTime(); + + l = (endLongTime - startLongTime) / (1000 * 60 * 60 * 24); + + } catch (ParseException e) { + e.printStackTrace(); + } + return l.intValue(); + } + + public static Date getNewDate(Date date, Integer type, Integer interval) throws ParseException { + Calendar c = Calendar.getInstance(); + c.setTime(date); + switch (type) { + case 1: + c.set(Calendar.YEAR, (c.get(Calendar.YEAR) + interval)); + break; + case 2: + c.set(Calendar.MONTH, (c.get(Calendar.MONTH) + interval)); + break; + case 3: + c.set(Calendar.DATE, (c.get(Calendar.DATE) + interval)); + break; + case 4: + c.set(Calendar.HOUR, (c.get(Calendar.HOUR) + interval)); + break; + case 5: + c.set(Calendar.MINUTE, (c.get(Calendar.MINUTE) + interval)); + break; + default: + c.set(Calendar.SECOND, (c.get(Calendar.SECOND) + interval)); + break; + } + Date newDate = c.getTime(); + return sdfTime.parse(sdfTime.format(newDate)); + } + + public static Date getEndDate(Date date) throws ParseException { + return sdfTime.parse(sdfDay.format(date).concat(" 23:59:59")); + } + + public static Date getNewDateH(Date date, Integer type, Integer interval) throws ParseException { + Calendar c = Calendar.getInstance(); + c.setTime(date); + switch (type) { + case 1: + c.set(Calendar.YEAR, (c.get(Calendar.YEAR) + interval)); + break; + case 2: + c.set(Calendar.MONTH, (c.get(Calendar.MONTH) + interval)); + break; + case 3: + c.set(Calendar.DATE, (c.get(Calendar.DATE) + interval)); + break; + case 4: + c.set(Calendar.HOUR, (c.get(Calendar.HOUR) + interval)); + break; + case 5: + c.set(Calendar.MINUTE, (c.get(Calendar.MINUTE) + interval)); + break; + default: + c.set(Calendar.SECOND, (c.get(Calendar.SECOND) + interval)); + break; + } + Date newDate = c.getTime(); + return sdfDay.parse(sdfDay.format(newDate)); + } + + public static String getNewDate2(Date date, Integer type, Integer interval) throws ParseException { + Calendar c = Calendar.getInstance(); + c.setTime(date); + switch (type) { + case 1: + c.set(Calendar.YEAR, (c.get(Calendar.YEAR) + interval)); + break; + case 2: + c.set(Calendar.MONTH, (c.get(Calendar.MONTH) + interval)); + break; + case 3: + c.set(Calendar.DATE, (c.get(Calendar.DATE) + interval)); + break; + case 4: + c.set(Calendar.HOUR, (c.get(Calendar.HOUR) + interval)); + break; + case 5: + c.set(Calendar.MINUTE, (c.get(Calendar.MINUTE) + interval)); + break; + default: + c.set(Calendar.SECOND, (c.get(Calendar.SECOND) + interval)); + break; + } + Date newDate = c.getTime(); + return sdfDay.format(newDate); + } + + public static Date getNewDate3(Date date, Integer type, Integer interval) throws ParseException { + Calendar c = Calendar.getInstance(); + c.setTime(date); + switch (type) { + case 1: + c.set(Calendar.YEAR, (c.get(Calendar.YEAR) + interval)); + break; + case 2: + c.set(Calendar.MONTH, (c.get(Calendar.MONTH) + interval)); + break; + case 3: + c.set(Calendar.DATE, (c.get(Calendar.DATE) + interval)); + break; + case 4: + c.set(Calendar.HOUR, (c.get(Calendar.HOUR) + interval)); + break; + case 5: + c.set(Calendar.MINUTE, (c.get(Calendar.MINUTE) + interval)); + break; + default: + c.set(Calendar.SECOND, (c.get(Calendar.SECOND) + interval)); + break; + } + Date newDate = c.getTime(); + return newDate; + } + + public static String getNewDate4(Date date, Integer type, Integer interval) throws ParseException { + Calendar c = Calendar.getInstance(); + c.setTime(date); + switch (type) { + case 1: + c.set(Calendar.YEAR, (c.get(Calendar.YEAR) + interval)); + break; + case 2: + c.set(Calendar.MONTH, (c.get(Calendar.MONTH) + interval)); + break; + case 3: + c.set(Calendar.DATE, (c.get(Calendar.DATE) + interval)); + break; + case 4: + c.set(Calendar.HOUR, (c.get(Calendar.HOUR) + interval)); + break; + case 5: + c.set(Calendar.MINUTE, (c.get(Calendar.MINUTE) + interval)); + break; + default: + c.set(Calendar.SECOND, (c.get(Calendar.SECOND) + interval)); + break; + } + Date newDate = c.getTime(); + return sdfDays.format(newDate); + } + + /** + * 获取YYYY格式 + * @return + */ + public static String getSdfTimes() { + return sdfTimes.format(new Date()); + } + + public static String getSdfTimesSS() { + return sdfTimesSS.format(new Date()); + } + + /** + * 获取YYYY格式 + * @return + */ + public static String getYear() { + return sdfYear.format(new Date()); + } + + /** + * 获取YYYY-MM-DD格式 + * @return + */ + public static String getDay() { + return sdfDay.format(new Date()); + } + + /** + * 获取YYYYMMDD格式 + * @return + */ + public static String getDays(){ + return sdfDays.format(new Date()); + } + + /** + * 获取YYYY-MM-DD HH:mm:ss格式 + * @return + */ + public static String getTime() { + return sdfTime.format(new Date()); + } + + /** + * @Title: compareDate + * @Description: TODO(日期比较,如果s>=e 返回true 否则返回false) + * @param s + * @param e + * @return boolean + * @throws + * @author fh + */ + public static boolean compareDate(String s, String e) { + if(fomatDate(s)==null||fomatDate(e)==null){ + return false; + } + return fomatDate(s).getTime() >=fomatDate(e).getTime(); + } + + /** + * 格式化日期 + * @return + */ + public static Date fomatDate(String date) { + DateFormat fmt = new SimpleDateFormat("yyyy-MM-dd"); + try { + return fmt.parse(date); + } catch (ParseException e) { + e.printStackTrace(); + return null; + } + } + + /** + * 校验日期是否合法 + * @return + */ + public static boolean isValidDate(String s) { + DateFormat fmt = new SimpleDateFormat("yyyy-MM-dd"); + try { + fmt.parse(s); + return true; + } catch (Exception e) { + // 如果throw java.text.ParseException或者NullPointerException,就说明格式不对 + return false; + } + } + + /** + * @param startTime + * @param endTime + * @return + */ + public static int getDiffYear(String startTime, String endTime) { + DateFormat fmt = new SimpleDateFormat("yyyy-MM-dd"); + try { + //long aa=0; + int years=(int) (((fmt.parse(endTime).getTime()-fmt.parse(startTime).getTime())/ (1000 * 60 * 60 * 24))/365); + return years; + } catch (Exception e) { + // 如果throw java.text.ParseException或者NullPointerException,就说明格式不对 + return 0; + } + } + + /** + *
  • 功能描述:时间相减得到天数 + * @param beginDateStr + * @param endDateStr + * @return + * long + * @author Administrator + */ + public static long getDaySub(String beginDateStr, String endDateStr){ + long day=0; + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + Date beginDate = null; + Date endDate = null; + + try { + beginDate = format.parse(beginDateStr); + endDate= format.parse(endDateStr); + } catch (ParseException e) { + e.printStackTrace(); + } + day=(endDate.getTime()-beginDate.getTime())/(24*60*60*1000); + //System.out.println("相隔的天数="+day); + + return day; + } + + /** + * 得到n天之后的日期 + * @param days + * @return + */ + public static String getAfterDayDate(String days) { + int daysInt = Integer.parseInt(days); + + Calendar canlendar = Calendar.getInstance(); // java.util包 + canlendar.add(Calendar.DATE, daysInt); // 日期减 如果不够减会将月变动 + Date date = canlendar.getTime(); + + SimpleDateFormat sdfd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String dateStr = sdfd.format(date); + + return dateStr; + } + /** + * 得到n天之后的日期 + * @param days + * @return + */ + public static String getAfterDate(Date openDate, String days) { + int daysInt = Integer.parseInt(days); + + Calendar canlendar = Calendar.getInstance(); // java.util包 + canlendar.setTime(openDate); + canlendar.add(Calendar.DATE, daysInt); // 日期减 如果不够减会将月变动 + Date date = canlendar.getTime(); + SimpleDateFormat sdfd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String dateStr = sdfd.format(date); + return dateStr; + } + public static String getAfterDate1(Date openDate, String year) { + int daysInt = Integer.parseInt(year); + + Calendar canlendar = Calendar.getInstance(); // java.util包 + canlendar.setTime(openDate); + canlendar.add(Calendar.YEAR, daysInt); // 日期减 如果不够减会将月变动 + Date date = canlendar.getTime(); + SimpleDateFormat sdfd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String dateStr = sdfd.format(date); + return dateStr; + } + public static Date getAfterDateStr(Date openDate, String days) { + int daysInt = Integer.parseInt(days); + + Calendar canlendar = Calendar.getInstance(); // java.util包 + canlendar.setTime(openDate); + canlendar.add(Calendar.DATE, daysInt); // 日期减 如果不够减会将月变动 + Date date = canlendar.getTime(); + return date; + } + + /** + * 得到n天之后是周几 + * @param days + * @return + */ + public static String getAfterDayWeek(String days) { + int daysInt = Integer.parseInt(days); + Calendar canlendar = Calendar.getInstance(); // java.util包 + canlendar.add(Calendar.DATE, daysInt); // 日期减 如果不够减会将月变动 + Date date = canlendar.getTime(); + SimpleDateFormat sdf = new SimpleDateFormat("E"); + String dateStr = sdf.format(date); + return dateStr; + } + + /** + * 格式化日期为时分秒 + * @param date + * @return + */ + public static Date fomatDateTime(String date) { + DateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + try { + return fmt.parse(date); + } catch (ParseException e) { + e.printStackTrace(); + return null; + } + } + + public static String formatDateToStr(Date date) { + return sdfTime.format(date); + } + + /** 功能描述:获取前一天日期 + * @params: [date] + * @return: java.lang.String + * @Author: Administrator + * @Date: 2020-10-09 15:51 + */ + public static String getYsetDate(Date date) { + Calendar cal = Calendar.getInstance(); + cal.setTime(date); + cal.add(Calendar.DATE, -1); + Date start = cal.getTime(); + String day= sdfDay.format(start); + return day; + } + + /** 功能描述:获取前一天日期 + * @params: [date] + * @return: java.lang.String + * @Author: Administrator + * @Date: 2020-10-09 15:51 + */ + public static String getYsetDates(Date date) { + Calendar cal = Calendar.getInstance(); + cal.setTime(date); + cal.add(Calendar.DATE, -1); + Date start = cal.getTime(); + String day= sdfDays.format(start); + return day; + } + + + public static boolean getThreadTime(String quittime, String DZtime) { + boolean flag = false; + String quitT[] = quittime.split(":"); + String DZT[] = DZtime.split(":"); + Calendar ca = Calendar.getInstance(); + Calendar ca1 = Calendar.getInstance(); + Calendar ca2 = Calendar.getInstance(); + ca1.set(ca.get(Calendar.YEAR), ca.get(Calendar.MONTH), ca.get(Calendar.DAY_OF_MONTH), Integer.valueOf(quitT[0]), Integer.valueOf(quitT[1]), Integer.valueOf(quitT[2])); + ca2.set(ca.get(Calendar.YEAR), ca.get(Calendar.MONTH), ca.get(Calendar.DAY_OF_MONTH), Integer.valueOf(DZT[0]), Integer.valueOf(DZT[1]), Integer.valueOf(DZT[2])); + if (ca1.after(ca2)) { + if (ca.equals(ca1) || ca.after(ca1) || ca.before(ca2) || ca.equals(ca2)) { + flag = true; + } else { + flag = false; + } + } else if (ca1.before(ca2)) { + if ((ca.equals(ca1) || ca.after(ca1)) && (ca.equals(ca2) || ca.before(ca2))) { + flag = true; + } else { + flag = false; + } + } else if (ca1.equals(ca2)) { + flag = false; + } + return flag; + } + + + + public static String getTimes(Date date){ + return times.format(date); + } + + + public static void main(String[] args){ + System.out.println(getSdfTimesSS()); + } + +} diff --git a/newadmin/pom.xml b/newadmin/pom.xml index dd9332e..fb789dd 100644 --- a/newadmin/pom.xml +++ b/newadmin/pom.xml @@ -14,9 +14,11 @@ pom - admin dao-api common-api + oss-service + admin +