import 'package:get/get.dart'; import 'package:get/get_core/src/get_main.dart'; import 'package:injectable/injectable.dart'; import 'package:location/base/base_controller.dart'; import 'package:location/data/bean/member_status_info.dart'; import 'package:location/module/feedback/feed_back_page.dart'; import 'package:location/module/login/login_page.dart'; import 'package:location/module/urgent_contact/urgent_contact_page.dart'; import 'package:location/resource/string.gen.dart'; import '../../data/repositories/account_repository.dart'; import '../../dialog/common_alert_dialog_impl.dart'; import '../../sdk/qiyu/qi_yu_helper.dart'; import '../../sdk/wechat/wechat_share_util.dart'; import '../../utils/toast_util.dart'; @injectable class MineController extends BaseController { final AccountRepository accountRepository; MineController(this.accountRepository); bool get isLogin => accountRepository.isLogin.value; MemberStatusInfo? get memberStatusInfo => accountRepository.memberStatusInfo.value; String? get phone => accountRepository.loginPhoneNum.value; void onBack() { Get.back(); } String getUserName(String phone) { if (phone.length > 4) { phone = phone.substring(phone.length - 4); } return '${StringName.mineAccountLoggedDesc}$phone'; } onShareClick() { WechatShareUtil.shareWebPage().catchError((error) { ToastUtil.show(error); }); } onCustomerServiceClick() { QiYuHelper.openCustomService(); } onPermissionSettingClick() {} onAccountFeedbackClick() { FeedBackPage.start(); } onAboutClick() {} onLogoutAccountClick() {} onFunExitAccountClick() { exitAccountDialog(confirmOnTap: () { accountRepository.logout(); }); } onLoginClick() { if (isLogin) { return; } LoginPage.start(); } onUrgentContactClick() { UrgentContactPage.start(); } }