diff --git a/app/api/leantime/tasks/route.ts b/app/api/leantime/tasks/route.ts index ed628253..2ae82b9c 100644 --- a/app/api/leantime/tasks/route.ts +++ b/app/api/leantime/tasks/route.ts @@ -152,17 +152,10 @@ export async function GET(request: NextRequest) { const tasks = data.result .filter((task: any) => { - // Skip completed tasks (status 5 - Done) - if (task.status === 5) { - console.log(`Filtering out completed task ${task.id} (type: ${task.type || 'main'}, status: ${task.status})`); - return false; - } - - // For subtasks, check if parent task is completed - if (task.type === 'subtask' && task.dependingTicketId) { - const parentTask = data.result.find((t: any) => t.id === task.dependingTicketId); - if (parentTask && parentTask.status === 5) { - console.log(`Filtering out subtask ${task.id} because parent task ${task.dependingTicketId} is completed`); + // For main tasks, filter out if status is Done (3) + if (!task.type || task.type !== 'subtask') { + if (task.status === 3) { + console.log(`Filtering out completed main task ${task.id} (status: ${task.status})`); return false; } } diff --git a/components/flow.tsx b/components/flow.tsx index 38c3b95c..4bb2cb44 100644 --- a/components/flow.tsx +++ b/components/flow.tsx @@ -106,13 +106,21 @@ export function Duties() { return; } - // Filter out tasks with status Done (5) and sort by dateToFinish + // Filter out parent tasks with status Done (3) and sort by dateToFinish const sortedTasks = data .filter((task: Task) => { - const isNotDone = task.status !== 5; // Only filter status 5 (Done) - // Log task details for debugging - console.log(`Task ${task.id}: status=${task.status} (${getStatusLabel(task.status)}), type=${task.type || 'main'}, parentId=${task.dependingTicketId || 'none'}, dateToFinish=${task.dateToFinish}, isNotDone=${isNotDone}`); - return isNotDone; + // If it's a main task (not a subtask) and it's Done, filter it out + if (!task.type || task.type !== 'subtask') { + const isMainTaskActive = task.status !== 3; + if (!isMainTaskActive) { + console.log(`Filtering out completed main task ${task.id} (status: ${task.status})`); + } + return isMainTaskActive; + } + + // For subtasks, we keep them regardless of their status + console.log(`Keeping subtask ${task.id}: status=${task.status} (${getStatusLabel(task.status)}), parentId=${task.dependingTicketId || 'none'}`); + return true; }) .sort((a: Task, b: Task) => { // First sort by dateToFinish (oldest first)