Fix: Show only incomplete todos due today or later (exclude overdue items)
This commit is contained in:
@@ -37,17 +37,16 @@ router.get("/", async (req, res) => {
|
|||||||
|
|
||||||
router.get("/today", async (req, res) => {
|
router.get("/today", async (req, res) => {
|
||||||
try {
|
try {
|
||||||
const { start, end } = getDayRange();
|
const { start } = getDayRange();
|
||||||
// Include:
|
// Show incomplete todos that are:
|
||||||
// 1. Tasks due today
|
// 1. Due today or later (not overdue)
|
||||||
// 2. Overdue tasks (due before today) that are not completed
|
// 2. Have no due date set
|
||||||
// 3. Tasks with no due date that are not completed
|
|
||||||
const todos = await Todo.find({
|
const todos = await Todo.find({
|
||||||
|
completed: false,
|
||||||
$or: [
|
$or: [
|
||||||
{ dueDate: { $gte: start, $lte: end } },
|
{ dueDate: { $gte: start } },
|
||||||
{ dueDate: { $lt: start }, completed: false },
|
{ dueDate: { $exists: false } },
|
||||||
{ dueDate: { $exists: false }, completed: false },
|
{ dueDate: null }
|
||||||
{ dueDate: null, completed: false }
|
|
||||||
]
|
]
|
||||||
}).sort({
|
}).sort({
|
||||||
dueDate: 1,
|
dueDate: 1,
|
||||||
|
|||||||
Reference in New Issue
Block a user