demo_controller.dart 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. import 'package:flustars/flustars.dart';
  2. import 'package:flutter/material.dart';
  3. import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
  4. import 'package:get/get.dart';
  5. import 'package:ftrecruiter/api/api_repository.dart';
  6. import 'package:ftrecruiter/comm/utils/log_utils.dart';
  7. import 'package:ftrecruiter/entity/response/industry_data.dart';
  8. import 'package:ftrecruiter/entity/response/server_time.dart';
  9. import 'package:ftrecruiter/entity/response/user_profile.dart';
  10. class DemoController extends GetxController with StateMixin<ServerTime> {
  11. DemoController({required this.apiRepository});
  12. final ApiRepository apiRepository;
  13. final registerEmailController = TextEditingController();
  14. //调用接口,获取服务器时间
  15. void getServerTime() {
  16. //获取服务器时间
  17. apiRepository.getServerTime(success: (serverTime) {
  18. Log.d("data:$serverTime");
  19. change(serverTime, status: RxStatus.success());
  20. }, onError: (code, msg) {
  21. Log.d("data-error:$code $msg");
  22. change(null, status: RxStatus.empty());
  23. });
  24. //获取用户信息
  25. apiRepository.getUserProfile(success: (userProfile) {
  26. Log.d("user-profile-success - memberId:${userProfile.memberId}");
  27. SmartDialog.compatible.showToast(
  28. "get user profile success , memberId:${userProfile.memberId}");
  29. }, onError: (code, msg) {
  30. Log.d("user-profile-error:$code $msg");
  31. });
  32. //获取行业列表
  33. apiRepository.getIndustryList(success: (list) {
  34. Log.d("industry-success list length: ${list.length}");
  35. }, onError: (code, msg) {
  36. Log.d("industry-error:$code $msg");
  37. });
  38. }
  39. //测试异步
  40. void testFuture() async {
  41. Log.d("start1- ${DateTime.now().millisecondsSinceEpoch}");
  42. Future.delayed(const Duration(seconds: 3), () {
  43. Log.d("start3- ${DateTime.now().millisecondsSinceEpoch}");
  44. });
  45. Log.d("start2- ${DateTime.now().millisecondsSinceEpoch}");
  46. String str = await Future.delayed(const Duration(seconds: 2), () {
  47. return "I Love Flutter";
  48. });
  49. Log.d("start5- ${DateTime.now().millisecondsSinceEpoch}");
  50. Log.d("start4- ${DateTime.now().millisecondsSinceEpoch} $str");
  51. await Future.delayed(const Duration(seconds: 3));
  52. Log.d("start6- ${DateTime.now().millisecondsSinceEpoch}");
  53. }
  54. }