controller.dart 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. import 'package:electronic_assistant/base/base_controller.dart';
  2. import 'package:electronic_assistant/data/consts/event_report_id.dart';
  3. import 'package:electronic_assistant/handler/event_handler.dart';
  4. import 'package:electronic_assistant/resource/colors.gen.dart';
  5. import 'package:electronic_assistant/utils/error_handler.dart';
  6. import 'package:electronic_assistant/utils/toast_util.dart';
  7. import 'package:flutter/cupertino.dart';
  8. import 'package:flutter_screenutil/flutter_screenutil.dart';
  9. import 'package:get/get.dart';
  10. import '../../../data/api/response/user_info_response.dart';
  11. import '../../../data/repositories/account_repository.dart';
  12. import '../../../dialog/alert_dialog.dart';
  13. import '../../../resource/string.gen.dart';
  14. import '../../../utils/app_info_util.dart';
  15. import '../controller.dart';
  16. class MainDrawerController extends BaseController {
  17. String get versionName => "v${appInfoUtil.appVersionName}";
  18. String get loginTxt =>
  19. accountRepository.getUserSubName(accountRepository.phone);
  20. final Rxn<UserInfoResponse> _userInfo = accountRepository.userInfo;
  21. UserInfoResponse? get userInfo => _userInfo.value;
  22. void accountLogout() {
  23. EAAlertDialog.show(
  24. contentWidget: Text(
  25. StringName.accountLogoutTips.tr,
  26. style: TextStyle(
  27. fontSize: 15.sp,
  28. color: ColorName.primaryTextColor,
  29. fontWeight: FontWeight.bold),
  30. ),
  31. cancelText: StringName.cancel.tr,
  32. confirmText: StringName.sure.tr,
  33. confirmOnTap: () {
  34. accountRepository.userDeprecate().then((data) {
  35. Get.find<MainController>().closeDrawer();
  36. accountRepository.logout();
  37. ToastUtil.showToast(StringName.accountLogoutSuccess.tr);
  38. }).catchError((error) {
  39. ErrorHandler.toastError(error);
  40. });
  41. });
  42. }
  43. void onCheckUpdate() {
  44. EventHandler.report(EventId.event_105001);
  45. ToastUtil.showToast(StringName.versionLatest.tr);
  46. }
  47. }