Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2026-01-02 12:05:31 +08:00
parent 80e007bac6
commit 041af37bb0
67 changed files with 775 additions and 838 deletions

View File

@@ -77,14 +77,14 @@ class FavPgcController
if (res case Success(:final response)) {
try {
final ctr = Get.find<FavPgcController>(tag: '$type$followStatus');
if (ctr.loadingState.value.isSuccess) {
ctr.loadingState
..value.data!.insertAll(
0,
removeList.map((item) => item..checked = false),
)
..refresh();
ctr.allSelected.value = false;
if (ctr.loadingState.value case Success(:final response)) {
response?.insertAll(
0,
removeList.map((item) => item..checked = false),
);
ctr
..loadingState.refresh()
..allSelected.value = false;
}
} catch (e) {
if (kDebugMode) debugPrint('fav pgc onUpdate: $e');
@@ -97,28 +97,28 @@ class FavPgcController
}
Future<void> onUpdate(int index, int followStatus, int? seasonId) async {
final result = await VideoHttp.pgcUpdate(
final res = await VideoHttp.pgcUpdate(
seasonId: seasonId.toString(),
status: followStatus,
);
if (result case Success(:final response)) {
if (res case Success(:final response)) {
List<FavPgcItemModel> list = loadingState.value.data!;
final item = list.removeAt(index);
loadingState.refresh();
try {
final ctr = Get.find<FavPgcController>(tag: '$type$followStatus');
if (ctr.loadingState.value.isSuccess) {
ctr.loadingState
..value.data?.insert(0, item)
..refresh();
ctr.allSelected.value = false;
if (ctr.loadingState.value case Success(:final response)) {
response?.insert(0, item);
ctr
..loadingState.refresh()
..allSelected.value = false;
}
} catch (e) {
if (kDebugMode) debugPrint('fav pgc pgcUpdate: $e');
}
SmartDialog.showToast(response);
} else {
result.toast();
res.toast();
}
}
}

View File

@@ -2,7 +2,6 @@ import 'package:PiliPlus/common/widgets/scroll_physics.dart';
import 'package:PiliPlus/common/widgets/view_safe_area.dart';
import 'package:PiliPlus/http/loading_state.dart';
import 'package:PiliPlus/models/common/fav_type.dart';
import 'package:PiliPlus/models_new/fav/fav_folder/list.dart';
import 'package:PiliPlus/pages/fav/article/controller.dart';
import 'package:PiliPlus/pages/fav/cheese/controller.dart';
import 'package:PiliPlus/pages/fav/topic/controller.dart';
@@ -63,10 +62,8 @@ class _FavPageState extends State<FavPage> with SingleTickerProviderStateMixin {
onPressed: () => Get.toNamed('/createFav')?.then(
(data) {
if (data != null) {
List<FavFolderInfo>? list =
_favController.loadingState.value.isSuccess
? _favController.loadingState.value.data
: null;
final list =
_favController.loadingState.value.dataOrNull;
if (list != null && list.isNotEmpty) {
list.insert(1, data);
_favController.loadingState.refresh();
@@ -104,10 +101,11 @@ class _FavPageState extends State<FavPage> with SingleTickerProviderStateMixin {
() => _showVideoFavMenu.value
? IconButton(
onPressed: () {
if (_favController.loadingState.value.isSuccess) {
if (_favController.loadingState.value case Success(
:final response,
)) {
try {
final item =
_favController.loadingState.value.data!.first;
final item = response!.first;
Get.toNamed(
'/favSearch',
arguments: {