|
|
|
@ -1,6 +1,9 @@
|
|
|
|
|
package cokr.xit.foundation.component;
|
|
|
|
|
|
|
|
|
|
import java.util.Collections;
|
|
|
|
|
import java.util.Date;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.stream.IntStream;
|
|
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
|
|
|
|
@ -92,12 +95,32 @@ public abstract class AbstractBean extends AbstractComponent {
|
|
|
|
|
return isEmpty(logName) ? super.log() : Log.get(logName);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**주어진 Date에 지정한 날짜수만큼의 차이의 Date를 반환한다.
|
|
|
|
|
/**주어진 날짜에 지정한 수만큼 더한 날짜를 반환한다.
|
|
|
|
|
* @param date 날짜
|
|
|
|
|
* @param days 날짜수
|
|
|
|
|
* @return 새 Date
|
|
|
|
|
*/
|
|
|
|
|
protected static Date dateDiff(Date date, int days) {
|
|
|
|
|
protected static Date add(Date date, int days) {
|
|
|
|
|
return new Date(date.getTime() + (1000L * 60L * 60L * 24L * days));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**주어진 날짜부터 지정한 수만큼 증가하는 날짜들을 반환한다.
|
|
|
|
|
* @param date 날짜
|
|
|
|
|
* @param days 날짜수
|
|
|
|
|
* <ul><li>0이면 기준일</li>
|
|
|
|
|
* <li>0보다 크면 기준일부터 이후 날짜</li>
|
|
|
|
|
* <li>0보다 작으면 기준일부터 이전 날짜</li>
|
|
|
|
|
* </ul>
|
|
|
|
|
* @return 주어진 날짜부터 지정한 날짜수만큼 더한 날짜들
|
|
|
|
|
*/
|
|
|
|
|
protected static List<Date> getDates(Date date, int days) {
|
|
|
|
|
if (date == null)
|
|
|
|
|
return Collections.emptyList();
|
|
|
|
|
if (days == 0)
|
|
|
|
|
return List.of(date);
|
|
|
|
|
|
|
|
|
|
return IntStream.range(0, Math.abs(days)).boxed()
|
|
|
|
|
.map(num -> add(date, days > 0 ? num : -num))
|
|
|
|
|
.toList();
|
|
|
|
|
}
|
|
|
|
|
}
|