|
|
@@ -1,11 +1,14 @@
|
|
|
import 'package:electronic_assistant/base/base_controller.dart';
|
|
|
+import 'package:electronic_assistant/data/repositories/account_repository.dart';
|
|
|
import 'package:electronic_assistant/data/repositories/talk_repository.dart';
|
|
|
import 'package:electronic_assistant/utils/error_handler.dart';
|
|
|
import 'package:flutter/widgets.dart';
|
|
|
import 'package:get/get_rx/src/rx_types/rx_types.dart';
|
|
|
import 'package:pull_to_refresh/pull_to_refresh.dart';
|
|
|
|
|
|
+import '../../data/api/response/example_info_response.dart';
|
|
|
import '../../data/bean/talks.dart';
|
|
|
+import '../../data/repositories/config_repository.dart';
|
|
|
|
|
|
class FilesController extends BaseController {
|
|
|
final refreshController = RefreshController(initialRefresh: false);
|
|
|
@@ -22,22 +25,30 @@ class FilesController extends BaseController {
|
|
|
|
|
|
RxList<TalkBean> get talkList => talkRepository.talkList;
|
|
|
|
|
|
- void requestTalkData({int page = 1}) {
|
|
|
- talkRepository.requestTalkPagePaginate(page, pageSize).then((response) {
|
|
|
- debugPrint("requestTalkData-response-$response");
|
|
|
- if (talkRepository.talkList.length >= response.count) {
|
|
|
- debugPrint("requestTalkData-没有更多数据了");
|
|
|
- refreshController.loadNoData();
|
|
|
- } else {
|
|
|
- refreshController.loadComplete();
|
|
|
- }
|
|
|
+ void requestTalkData({int page = 1}) async {
|
|
|
+ if (accountRepository.isLogin.value) {
|
|
|
+ talkRepository.requestTalkPagePaginate(page, pageSize).then((response) {
|
|
|
+ debugPrint("requestTalkData-response-$response");
|
|
|
+ if (talkRepository.talkList.length >= response.count) {
|
|
|
+ debugPrint("requestTalkData-没有更多数据了");
|
|
|
+ refreshController.loadNoData();
|
|
|
+ } else {
|
|
|
+ refreshController.loadComplete();
|
|
|
+ }
|
|
|
+ refreshController.refreshCompleted();
|
|
|
+ }).catchError((error) {
|
|
|
+ debugPrint("requestTalkData-catchError-$error");
|
|
|
+ refreshController.loadFailed();
|
|
|
+ refreshController.refreshFailed();
|
|
|
+ ErrorHandler.toastError(error);
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ ExampleInfoResponse exampleInfo = await configRepository.getExampleInfo();
|
|
|
+ talkRepository.setTalkList(
|
|
|
+ exampleInfo.talkInfoList != null ? exampleInfo.talkInfoList! : []);
|
|
|
refreshController.refreshCompleted();
|
|
|
- }).catchError((error) {
|
|
|
- debugPrint("requestTalkData-catchError-$error");
|
|
|
- refreshController.loadFailed();
|
|
|
- refreshController.refreshFailed();
|
|
|
- ErrorHandler.toastError(error);
|
|
|
- });
|
|
|
+ refreshController.loadNoData();
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
void onRefreshData() {
|