From 3a15353bc405d5ba18430e2f40ac9de79bae3bc3 Mon Sep 17 00:00:00 2001 From: bggRGjQaUbCoE Date: Mon, 6 Jan 2025 18:03:09 +0800 Subject: [PATCH] opt: multi del Signed-off-by: bggRGjQaUbCoE --- lib/pages/fav_detail/controller.dart | 10 +++++++--- lib/pages/history/controller.dart | 11 ++++++++--- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/lib/pages/fav_detail/controller.dart b/lib/pages/fav_detail/controller.dart index 5966bad3..90eff1a6 100644 --- a/lib/pages/fav_detail/controller.dart +++ b/lib/pages/fav_detail/controller.dart @@ -105,11 +105,15 @@ class FavDetailController extends MultiSelectController { ); if (result['status']) { List dataList = (loadingState.value as Success).response; - Set remainList = dataList.toSet().difference(list.toSet()); + List remainList = + dataList.toSet().difference(list.toSet()).toList(); item.value.mediaCount = item.value.mediaCount! - list.length; item.refresh(); - loadingState.value = - LoadingState.success(remainList.toList()); + if (remainList.isNotEmpty) { + loadingState.value = LoadingState.success(remainList); + } else { + onReload(); + } SmartDialog.showToast('取消收藏'); checkedCount.value = 0; enableMultiSelect.value = false; diff --git a/lib/pages/history/controller.dart b/lib/pages/history/controller.dart index df5651e8..7dd09698 100644 --- a/lib/pages/history/controller.dart +++ b/lib/pages/history/controller.dart @@ -145,10 +145,15 @@ class HistoryController extends MultiSelectController { }).toList(); dynamic response = await UserHttp.delHistory(kidList); if (response['status']) { - Set remainList = ((loadingState.value as Success).response as List) + List remainList = ((loadingState.value as Success).response as List) .toSet() - .difference(result.toSet()); - loadingState.value = LoadingState.success(remainList.toList()); + .difference(result.toSet()) + .toList(); + if (remainList.isNotEmpty) { + loadingState.value = LoadingState.success(remainList); + } else { + onReload(); + } if (enableMultiSelect.value) { checkedCount.value = 0; enableMultiSelect.value = false;