mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-06-01 00:28:18 +08:00
@@ -10,7 +10,6 @@ import 'package:PiliPlus/models_new/later/data.dart';
|
||||
import 'package:PiliPlus/models_new/media_list/data.dart';
|
||||
import 'package:PiliPlus/models_new/space_setting/data.dart';
|
||||
import 'package:PiliPlus/models_new/sub/sub/data.dart';
|
||||
import 'package:PiliPlus/models_new/sub/sub/list.dart';
|
||||
import 'package:PiliPlus/models_new/video/video_tag/data.dart';
|
||||
import 'package:PiliPlus/utils/global_data.dart';
|
||||
import 'package:PiliPlus/utils/storage.dart';
|
||||
@@ -253,7 +252,7 @@ class UserHttp {
|
||||
}
|
||||
|
||||
// 我的订阅
|
||||
static Future<LoadingState<List<SubItemModel>?>> userSubFolder({
|
||||
static Future<LoadingState<SubData>> userSubFolder({
|
||||
required int mid,
|
||||
required int pn,
|
||||
required int ps,
|
||||
@@ -268,7 +267,7 @@ class UserHttp {
|
||||
},
|
||||
);
|
||||
if (res.data['code'] == 0 && res.data['data'] is Map) {
|
||||
return Success(SubData.fromJson(res.data['data']).list);
|
||||
return Success(SubData.fromJson(res.data['data']));
|
||||
} else {
|
||||
return Error(res.data['message']);
|
||||
}
|
||||
|
||||
@@ -22,6 +22,7 @@ class BlackListController
|
||||
|
||||
@override
|
||||
List<BlackListItem>? getDataList(BlackListData response) {
|
||||
total.value = response.total ?? 0;
|
||||
return response.list;
|
||||
}
|
||||
|
||||
@@ -32,12 +33,6 @@ class BlackListController
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
bool customHandleResponse(bool isRefresh, Success<BlackListData> response) {
|
||||
total.value = response.response.total ?? 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
void onRemove(BuildContext context, int index, name, mid) {
|
||||
showConfirmDialog(
|
||||
context: context,
|
||||
|
||||
@@ -21,6 +21,9 @@ class SelectTopicController
|
||||
|
||||
@override
|
||||
List<TopicItem>? getDataList(TopicPubSearchData response) {
|
||||
if (response.pageInfo?.hasMore == false) {
|
||||
isEnd = true;
|
||||
}
|
||||
return response.topicItems;
|
||||
}
|
||||
|
||||
|
||||
@@ -41,16 +41,10 @@ class DynamicsTabController
|
||||
response.items?.removeWhere((e) => dynamicsController.tempBannedList
|
||||
.contains(e.modules.moduleAuthor?.mid));
|
||||
}
|
||||
offset = response.offset ?? '';
|
||||
return response.items;
|
||||
}
|
||||
|
||||
@override
|
||||
bool customHandleResponse(
|
||||
bool isRefresh, Success<DynamicsDataModel> response) {
|
||||
offset = response.response.offset ?? '';
|
||||
return false;
|
||||
}
|
||||
|
||||
@override
|
||||
Future<LoadingState<DynamicsDataModel>> customGetData() =>
|
||||
DynamicsHttp.followDynamic(
|
||||
|
||||
@@ -26,15 +26,10 @@ class FavController extends CommonListController<FavFolderData, FavFolderInfo> {
|
||||
|
||||
@override
|
||||
List<FavFolderInfo>? getDataList(FavFolderData response) {
|
||||
return response.list;
|
||||
}
|
||||
|
||||
@override
|
||||
bool customHandleResponse(bool isRefresh, Success<FavFolderData> response) {
|
||||
if (response.response.hasMore == false) {
|
||||
if (response.hasMore == false) {
|
||||
isEnd = true;
|
||||
}
|
||||
return false;
|
||||
return response.list;
|
||||
}
|
||||
|
||||
@override
|
||||
|
||||
@@ -37,6 +37,9 @@ class FavDetailController
|
||||
|
||||
@override
|
||||
List<FavDetailItemModel>? getDataList(FavDetailData response) {
|
||||
if (response.hasMore == false) {
|
||||
isEnd = true;
|
||||
}
|
||||
return response.medias;
|
||||
}
|
||||
|
||||
@@ -49,8 +52,8 @@ class FavDetailController
|
||||
|
||||
@override
|
||||
bool customHandleResponse(bool isRefresh, Success<FavDetailData> response) {
|
||||
FavDetailData data = response.response;
|
||||
if (isRefresh) {
|
||||
FavDetailData data = response.response;
|
||||
folderInfo.value = data.info!;
|
||||
isOwner.value = data.info?.mid == accountService.mid;
|
||||
}
|
||||
|
||||
@@ -26,15 +26,10 @@ class FavSearchController
|
||||
|
||||
@override
|
||||
List<FavDetailItemModel>? getDataList(FavDetailData response) {
|
||||
return response.medias;
|
||||
}
|
||||
|
||||
@override
|
||||
bool customHandleResponse(bool isRefresh, Success<FavDetailData> response) {
|
||||
if (response.response.hasMore == false) {
|
||||
if (response.hasMore == false) {
|
||||
isEnd = true;
|
||||
}
|
||||
return false;
|
||||
return response.medias;
|
||||
}
|
||||
|
||||
Future<void> onCancelFav(int index, int id, int? type) async {
|
||||
|
||||
@@ -22,6 +22,7 @@ class MemberArticleCtr
|
||||
|
||||
@override
|
||||
List<SpaceArticleItem>? getDataList(SpaceArticleData response) {
|
||||
count = response.count ?? -1;
|
||||
return response.item;
|
||||
}
|
||||
|
||||
@@ -32,13 +33,6 @@ class MemberArticleCtr
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
bool customHandleResponse(
|
||||
bool isRefresh, Success<SpaceArticleData> response) {
|
||||
count = response.response.count ?? -1;
|
||||
return false;
|
||||
}
|
||||
|
||||
@override
|
||||
Future<LoadingState<SpaceArticleData>> customGetData() =>
|
||||
MemberHttp.spaceArticle(mid: mid, page: page);
|
||||
|
||||
@@ -34,18 +34,11 @@ class MemberDynamicsController
|
||||
|
||||
@override
|
||||
List<DynamicItemModel>? getDataList(DynamicsDataModel response) {
|
||||
return response.items;
|
||||
}
|
||||
|
||||
@override
|
||||
bool customHandleResponse(
|
||||
bool isRefresh, Success<DynamicsDataModel> response) {
|
||||
DynamicsDataModel data = response.response;
|
||||
offset = data.offset?.isNotEmpty == true ? data.offset! : '-1';
|
||||
if (data.hasMore == false) {
|
||||
offset = response.offset?.isNotEmpty == true ? response.offset! : '-1';
|
||||
if (response.hasMore == false) {
|
||||
isEnd = true;
|
||||
}
|
||||
return false;
|
||||
return response.items;
|
||||
}
|
||||
|
||||
@override
|
||||
|
||||
@@ -41,6 +41,9 @@ class MemberSearchChildController extends CommonListController {
|
||||
case MemberSearchType.dynamic:
|
||||
DynamicsDataModel data = response;
|
||||
offset = data.offset;
|
||||
if (data.hasMore == false) {
|
||||
isEnd = true;
|
||||
}
|
||||
controller.counts[searchType.index] = data.total ?? 0;
|
||||
return data.items;
|
||||
}
|
||||
|
||||
@@ -46,16 +46,10 @@ class SearchPanelController<R extends SearchNumData<T>, T>
|
||||
|
||||
@override
|
||||
List<T>? getDataList(R response) {
|
||||
searchResultController?.count[searchType.index] = response.numResults ?? 0;
|
||||
return response.list;
|
||||
}
|
||||
|
||||
@override
|
||||
bool customHandleResponse(bool isRefresh, Success<R> response) {
|
||||
searchResultController?.count[searchType.index] =
|
||||
response.response.numResults ?? 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
@override
|
||||
Future<LoadingState<R>> customGetData() => SearchHttp.searchByType<R>(
|
||||
searchType: searchType,
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import 'package:PiliPlus/http/fav.dart';
|
||||
import 'package:PiliPlus/http/loading_state.dart';
|
||||
import 'package:PiliPlus/http/user.dart';
|
||||
import 'package:PiliPlus/models_new/sub/sub/data.dart';
|
||||
import 'package:PiliPlus/models_new/sub/sub/list.dart';
|
||||
import 'package:PiliPlus/pages/common/common_list_controller.dart';
|
||||
import 'package:PiliPlus/services/account_service.dart';
|
||||
@@ -8,8 +9,7 @@ import 'package:flutter/material.dart';
|
||||
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
|
||||
import 'package:get/get.dart';
|
||||
|
||||
class SubController
|
||||
extends CommonListController<List<SubItemModel>?, SubItemModel> {
|
||||
class SubController extends CommonListController<SubData, SubItemModel> {
|
||||
AccountService accountService = Get.find<AccountService>();
|
||||
|
||||
@override
|
||||
@@ -64,8 +64,15 @@ class SubController
|
||||
}
|
||||
|
||||
@override
|
||||
Future<LoadingState<List<SubItemModel>?>> customGetData() =>
|
||||
UserHttp.userSubFolder(
|
||||
List<SubItemModel>? getDataList(SubData response) {
|
||||
if (response.hasMore == false) {
|
||||
isEnd = true;
|
||||
}
|
||||
return response.list;
|
||||
}
|
||||
|
||||
@override
|
||||
Future<LoadingState<SubData>> customGetData() => UserHttp.userSubFolder(
|
||||
pn: page,
|
||||
ps: 20,
|
||||
mid: accountService.mid,
|
||||
|
||||
@@ -29,6 +29,10 @@ class SubDetailController
|
||||
|
||||
@override
|
||||
List<SubDetailItemModel>? getDataList(SubDetailData response) {
|
||||
mediaCount.value = response.info!.mediaCount!;
|
||||
if (subInfo.type == 11) {
|
||||
playCount.value = response.info!.cntInfo!.play!;
|
||||
}
|
||||
return response.medias;
|
||||
}
|
||||
|
||||
@@ -39,15 +43,6 @@ class SubDetailController
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
bool customHandleResponse(bool isRefresh, Success<SubDetailData> response) {
|
||||
mediaCount.value = response.response.info!.mediaCount!;
|
||||
if (subInfo.type == 11) {
|
||||
playCount.value = response.response.info!.cntInfo!.play!;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@override
|
||||
Future<LoadingState<SubDetailData>> customGetData() {
|
||||
if (subInfo.type == 11) {
|
||||
|
||||
Reference in New Issue
Block a user