/**
* 一天的开始时间
* @param date
* @return
*/
static Date dayBegin(Date date) {
def cal = Calendar.getInstance()
cal.setTime(date)
cal.set(Calendar.HOUR_OF_DAY, 0)
cal.set(Calendar.MINUTE, 0)
cal.set(Calendar.SECOND, 0)
cal.set(Calendar.MILLISECOND, 0)
return cal.getTime()
}
/**
* 一天的结束时间
* @param date
* @return
*/
static Date dayEnd(Date date) {
def cal = Calendar.getInstance()
cal.setTime(date)
cal.set(Calendar.HOUR_OF_DAY, 23)
cal.set(Calendar.MINUTE, 59)
cal.set(Calendar.SECOND, 59)
cal.set(Calendar.MILLISECOND, 0)
return cal.getTime()
}
/**
* 是否为上午时间
* @param day 参考日期
* @param target 目标时间
* @return 如果目标时间是参考日期的上午时间,返回true
*/
static boolean isAfternoon(Date day, Date target) {
def h0 = dayBegin(day)
def h24 = dayEnd(day)
def h12 = DateUtils.addHours(h0, +12)
return target.before(h24) && target.after(h12)
}
/**
* 是否为下午时间
* @param day 参考日期
* @param target 目标时间
* @return 如果目标时间是参考日期的下午时间,返回true
*/
static boolean isMorning(Date day, Date target) {
def h0 = dayBegin(day)
def h12 = DateUtils.addHours(h0, +12)
return target.after(h0) && target.before(h12)
}