|
|
|
@ -1,8 +1,8 @@
|
|
|
|
|
package com.ibeetl.admin.core.util;
|
|
|
|
|
|
|
|
|
|
import cn.hutool.core.date.DateField;
|
|
|
|
|
import cn.hutool.core.date.DateTime;
|
|
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
|
|
import org.apache.commons.lang3.Range;
|
|
|
|
|
|
|
|
|
|
import java.text.ParseException;
|
|
|
|
|
import java.text.SimpleDateFormat;
|
|
|
|
@ -114,8 +114,8 @@ public class DateUtil extends cn.hutool.core.date.DateUtil {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 指定时间在时间列表中所在的第几周
|
|
|
|
|
* 根据周来
|
|
|
|
|
*
|
|
|
|
|
* 根据开始时间和周偏移量,来计算待验证的时间,在该时间区间里是第几周
|
|
|
|
|
*
|
|
|
|
|
* @param startTime 开始时间
|
|
|
|
|
* @param date 比对时间
|
|
|
|
@ -124,15 +124,14 @@ public class DateUtil extends cn.hutool.core.date.DateUtil {
|
|
|
|
|
* @param <T>
|
|
|
|
|
*/
|
|
|
|
|
public static <T extends Date> Integer weekNumberInList(T startTime, T date, int weekNumber) {
|
|
|
|
|
|
|
|
|
|
List<List<T>> lists = new ArrayList<>();
|
|
|
|
|
for (int i = 1; i <= weekNumber; i++) {
|
|
|
|
|
List<T> dateTimes = (List<T>) rangeToList(startTime, offsetWeek(startTime, i), DateField.DAY_OF_YEAR);
|
|
|
|
|
lists.add(dateTimes);
|
|
|
|
|
}
|
|
|
|
|
// 偏移周
|
|
|
|
|
T tempEndTime = (T)offsetWeek(startTime, i);
|
|
|
|
|
// Range范围。结束时间向前偏移一天
|
|
|
|
|
Range<T> range = (Range<T>) Range.between(startTime, offsetDay(tempEndTime, -1));
|
|
|
|
|
|
|
|
|
|
for (int i = 0; i < lists.size(); i++) {
|
|
|
|
|
if(((T)lists.get(i)).compareTo(date) == 0) {
|
|
|
|
|
// 是否包含待验证的时间对象
|
|
|
|
|
if(range.contains(date)) {
|
|
|
|
|
return i;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|