app-starlock/star_lock/lib/mine/mine/starLockMine_logic.dart
2024-04-26 15:38:59 +08:00

60 lines
1.6 KiB
Dart

import 'dart:async';
import 'package:get/get.dart';
import 'package:star_lock/login/login/entity/LoginEntity.dart';
import 'package:star_lock/network/api_repository.dart';
import '../../tools/baseGetXController.dart';
import '../../tools/eventBusEventManage.dart';
import '../../tools/storage.dart';
import 'starLockMine_state.dart';
class StarLockMineLogic extends BaseGetXController {
final StarLockMineState state = StarLockMineState();
//删除账号请求
Future<void> userLogoutRequest() async {
LoginEntity entity = await ApiRepository.to.userLogout(deviceld: '');
if (entity.errorCode!.codeIsSuccessful) {}
}
/// 刷新电子钥匙列表
StreamSubscription? _mineInfoChangeRefreshUIEvent;
void _mineInfoChangeRefreshUIAction() {
// 蓝牙协议通知传输跟蓝牙之外的数据传输类不一样 eventBus
_mineInfoChangeRefreshUIEvent = eventBus.on<MineInfoChangeRefreshUI>().listen((event) {
getMineInfoData();
});
}
getMineInfoData() async {
final data = await Storage.getString(saveUserLoginData);
if (data != null && data.isNotEmpty) {
state.userNickName.value = (await Storage.getNickname())!;
state.userMobile.value = (await Storage.getMobile())! ?? '';
state.userEmail.value = (await Storage.getEmail())!;
state.userHeadUrl.value = (await Storage.getHeadUrl())!;
}
}
@override
void onReady() {
super.onReady();
_mineInfoChangeRefreshUIAction();
}
@override
Future<void> onInit() async {
super.onInit();
getMineInfoData();
}
@override
void onClose() {
super.onClose();
_mineInfoChangeRefreshUIEvent?.cancel();
}
}