fix: show due today if never completed

This commit is contained in:
Moritz Böhme 2025-04-07 15:28:28 +02:00
parent a59ad17743
commit 0b189b2283

View file

@ -41,21 +41,25 @@ defmodule Putzplan.Tasks.Task do
fragment(
"SELECT c.completion FROM \"completed_tasks\" AS c WHERE c.task_id = ? ORDER BY c.completion DESC LIMIT 1",
id
) || today()
)
)
calculate :due,
:date,
expr(
fragment(
# HACK: to cast to date
"SELECT strftime('%F', ?)",
date_add(
last_completed,
repetition_days,
:day
if last_completed do
fragment(
# HACK: to cast to date
"SELECT strftime('%F', ?)",
date_add(
last_completed,
repetition_days,
:day
)
)
)
else
today()
end
)
end
end