diff --git a/lib/controller/task_planning/daily_task_controller.dart b/lib/controller/task_planning/daily_task_controller.dart index 74da88e..7fddd48 100644 --- a/lib/controller/task_planning/daily_task_controller.dart +++ b/lib/controller/task_planning/daily_task_controller.dart @@ -134,11 +134,24 @@ class DailyTaskController extends GetxController { ); if (response != null && response.isNotEmpty) { + if (!isLoadMore) { + groupedDailyTasks.clear(); + } + for (var task in response) { final assignmentDateKey = task.assignmentDate.toIso8601String().split('T')[0]; - groupedDailyTasks.putIfAbsent(assignmentDateKey, () => []).add(task); + + // Initialize list if not present + groupedDailyTasks.putIfAbsent(assignmentDateKey, () => []); + + // Only add task if it doesn't already exist (avoid duplicates) + if (!groupedDailyTasks[assignmentDateKey]! + .any((t) => t.id == task.id)) { + groupedDailyTasks[assignmentDateKey]!.add(task); + } } + dailyTasks = groupedDailyTasks.values.expand((list) => list).toList(); currentPage = pageNumber; } else {