Использую LocalDateTime для работы с датой. Стоит задача проверить дату по нескольким условиям
- Является ли текущая дата число, месяц, год сегодняшней
- Является ли текущая дата число, месяц, год прошедшей
- Принадлежит ли текущая дата к диапазону дат сегодняшняя дата + 1 день ... сегодняшняя дата + 7 дней(т.е ближайшая неделя)
Написал такой вот код. А как бы вы это сделали? Метод isExpired, isToday работают почему-то неправильно.
object DateUtils {
fun isToday(beginDate: String): Boolean {
val begin = LocalDateTime.parse(beginDate)
val today = LocalDateTime.now()
return today == begin
}
fun isWithingNearestWeek(beginDate: String): Boolean {
val currentDate = LocalDateTime.parse(beginDate)
val beginWeekDate = LocalDateTime.now().plusDays(1)
val endWeekDate = LocalDateTime.now().plusDays(7)
return currentDate in beginWeekDate..endWeekDate
}
fun isExpired(beginDate: String): Boolean {
val currentDate = LocalDateTime.parse(beginDate)
val todayDate = LocalDateTime.now()
return currentDate.isAfter(todayDate)
}
}