opt model

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-06-10 15:11:40 +08:00
parent bdf3cfc750
commit 88288f4a7a
44 changed files with 266 additions and 549 deletions

View File

@@ -1,12 +1,13 @@
import 'package:PiliPlus/http/fav.dart';
import 'package:PiliPlus/http/loading_state.dart';
import 'package:PiliPlus/models_new/fav/fav_video/data.dart';
import 'package:PiliPlus/models_new/fav/fav_folder/data.dart';
import 'package:PiliPlus/pages/common/common_data_controller.dart';
import 'package:PiliPlus/services/account_service.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
class MediaController extends CommonDataController<FavVideoData, FavVideoData> {
class MediaController
extends CommonDataController<FavFolderData, FavFolderData> {
final list = <({IconData icon, String title, VoidCallback onTap})>[
(
icon: Icons.history,
@@ -47,14 +48,14 @@ class MediaController extends CommonDataController<FavVideoData, FavVideoData> {
}
@override
bool customHandleResponse(bool isRefresh, Success<FavVideoData> response) {
bool customHandleResponse(bool isRefresh, Success<FavFolderData> response) {
count.value = response.response.count ?? -1;
loadingState.value = response;
return true;
}
@override
Future<LoadingState<FavVideoData>> customGetData() {
Future<LoadingState<FavFolderData>> customGetData() {
return FavHttp.userfavFolder(
pn: 1,
ps: 5,

View File

@@ -2,7 +2,7 @@ import 'dart:async';
import 'package:PiliPlus/http/loading_state.dart';
import 'package:PiliPlus/models/common/nav_bar_config.dart';
import 'package:PiliPlus/models_new/fav/fav_video/list.dart';
import 'package:PiliPlus/models_new/fav/fav_folder/list.dart';
import 'package:PiliPlus/pages/common/common_page.dart';
import 'package:PiliPlus/pages/main/controller.dart';
import 'package:PiliPlus/pages/media/controller.dart';
@@ -169,7 +169,7 @@ class _MediaPageState extends CommonPageState<MediaPage, MediaController>
Loading() => const SizedBox.shrink(),
Success(:var response) => Builder(
builder: (context) {
List<FavVideoItemModel>? favFolderList = response.list;
List<FavFolderInfo>? favFolderList = response.list;
if (favFolderList.isNullOrEmpty) {
return const SizedBox.shrink();
}

View File

@@ -1,5 +1,5 @@
import 'package:PiliPlus/common/widgets/image/network_img_layer.dart';
import 'package:PiliPlus/models_new/fav/fav_video/list.dart';
import 'package:PiliPlus/models_new/fav/fav_folder/list.dart';
import 'package:PiliPlus/utils/utils.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
@@ -12,7 +12,7 @@ class FavFolderItem extends StatelessWidget {
required this.heroTag,
});
final FavVideoItemModel item;
final FavFolderInfo item;
final VoidCallback callback;
final String heroTag;