fix: исправлен расчет даты переноса задач с периодами повторения
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 54s
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 54s
- Добавлена поддержка сокращенных форм единиц времени (mons, min, hrs, wks, yrs и т.д.) - Исправлена обработка недель, которые PostgreSQL возвращает как дни (7 days вместо 1 week) - Добавлено приведение repetition_period к тексту при чтении из БД - Обновлена версия до 3.8.6
This commit is contained in:
@@ -139,26 +139,43 @@ function TaskList({ onNavigate, data, loading, backgroundLoading, onRefresh }) {
|
||||
switch (unit) {
|
||||
case 'minute':
|
||||
case 'minutes':
|
||||
case 'mins':
|
||||
case 'min':
|
||||
nextDate.setMinutes(nextDate.getMinutes() + value)
|
||||
break
|
||||
case 'hour':
|
||||
case 'hours':
|
||||
case 'hrs':
|
||||
case 'hr':
|
||||
nextDate.setHours(nextDate.getHours() + value)
|
||||
break
|
||||
case 'day':
|
||||
case 'days':
|
||||
nextDate.setDate(nextDate.getDate() + value)
|
||||
// PostgreSQL может возвращать недели как дни (например, "7 days" вместо "1 week")
|
||||
// Если количество дней кратно 7, обрабатываем как недели
|
||||
if (value % 7 === 0 && value >= 7) {
|
||||
const weeks = value / 7
|
||||
nextDate.setDate(nextDate.getDate() + weeks * 7)
|
||||
} else {
|
||||
nextDate.setDate(nextDate.getDate() + value)
|
||||
}
|
||||
break
|
||||
case 'week':
|
||||
case 'weeks':
|
||||
case 'wks':
|
||||
case 'wk':
|
||||
nextDate.setDate(nextDate.getDate() + value * 7)
|
||||
break
|
||||
case 'month':
|
||||
case 'months':
|
||||
case 'mons':
|
||||
case 'mon':
|
||||
nextDate.setMonth(nextDate.getMonth() + value)
|
||||
break
|
||||
case 'year':
|
||||
case 'years':
|
||||
case 'yrs':
|
||||
case 'yr':
|
||||
nextDate.setFullYear(nextDate.getFullYear() + value)
|
||||
break
|
||||
default:
|
||||
|
||||
Reference in New Issue
Block a user