mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-07-21 02:50:14 +08:00
44
lib/pages/member_guard/controller.dart
Normal file
44
lib/pages/member_guard/controller.dart
Normal file
@@ -0,0 +1,44 @@
|
||||
import 'package:PiliPlus/http/loading_state.dart';
|
||||
import 'package:PiliPlus/http/member.dart';
|
||||
import 'package:PiliPlus/models_new/member_guard/data.dart';
|
||||
import 'package:PiliPlus/models_new/member_guard/guard_top_list.dart';
|
||||
import 'package:PiliPlus/pages/common/common_list_controller.dart';
|
||||
import 'package:get/get_core/src/get_main.dart';
|
||||
import 'package:get/get_navigation/get_navigation.dart';
|
||||
|
||||
class MemberGuardController
|
||||
extends CommonListController<MemberGuardData, GuardItem> {
|
||||
@override
|
||||
void onInit() {
|
||||
super.onInit();
|
||||
queryData();
|
||||
}
|
||||
|
||||
final Object ruid = Get.arguments['ruid'];
|
||||
|
||||
late List<GuardItem> tops;
|
||||
|
||||
@override
|
||||
List<GuardItem>? getDataList(MemberGuardData response) {
|
||||
return response.guardTopList;
|
||||
}
|
||||
|
||||
@override
|
||||
bool customHandleResponse(bool isRefresh, Success<MemberGuardData> response) {
|
||||
if (response.response.hasMore != 1) {
|
||||
isEnd = true;
|
||||
}
|
||||
if (isRefresh) {
|
||||
final list = response.response.guardTopList;
|
||||
tops = list.take(3).toList();
|
||||
if (list.length > 3) {
|
||||
list.removeRange(0, 3);
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@override
|
||||
Future<LoadingState<MemberGuardData>> customGetData() =>
|
||||
MemberHttp.memberGuard(ruid: ruid, page: page);
|
||||
}
|
||||
Reference in New Issue
Block a user