From ed078f24ec5e28c1d351d70043982e606ef21281 Mon Sep 17 00:00:00 2001 From: Marc Rejohn Castillano Date: Sun, 1 Mar 2026 17:30:31 +0800 Subject: [PATCH] Track all assigned IT Staff for My Tasks Tab --- lib/screens/tasks/tasks_list_screen.dart | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/lib/screens/tasks/tasks_list_screen.dart b/lib/screens/tasks/tasks_list_screen.dart index 90719307..052b4f71 100644 --- a/lib/screens/tasks/tasks_list_screen.dart +++ b/lib/screens/tasks/tasks_list_screen.dart @@ -183,6 +183,14 @@ class _TasksListScreenState extends ConsumerState latestAssigneeByTaskId[entry.key] = entry.value.userId; } + // Track ALL assigned users per task (not just latest) for "My Tasks" filtering + final assignedUsersByTaskId = >{}; + for (final a in assignments) { + assignedUsersByTaskId + .putIfAbsent(a.taskId, () => {}) + .add(a.userId); + } + final filteredTasks = _applyTaskFilters( tasks, ticketById: ticketById, @@ -471,7 +479,10 @@ class _TasksListScreenState extends ConsumerState : filteredTasks .where( (t) => - latestAssigneeByTaskId[t.id] == currentUserId, + assignedUsersByTaskId[t.id]?.contains( + currentUserId, + ) ?? + false, ) .toList();