app-starlock/lib/mine/minePersonInfo/minePersonInfoEditName/MinePersonInfoEditName_logic.dart

52 lines
1.7 KiB
Dart
Raw Normal View History

2024-04-10 13:36:00 +08:00
import 'dart:async';
import 'package:flutter/cupertino.dart';
import 'package:get/get.dart';
import 'package:star_lock/login/login/entity/LoginData.dart';
import 'package:star_lock/main/lockDetail/passwordKey/passwordKeyList/passwordKeyListEntity.dart';
2024-03-05 09:29:49 +08:00
import 'package:star_lock/mine/minePersonInfo/minePersonInfoEditName/minePersonInfoEditName_state.dart';
2024-04-03 16:50:42 +08:00
import 'package:star_lock/tools/eventBusEventManage.dart';
import '../../../../network/api_repository.dart';
import '../../../../tools/baseGetXController.dart';
2024-04-03 16:50:42 +08:00
import '../../../tools/storage.dart';
class MinePersonInfoEditNameLogic extends BaseGetXController {
2024-04-10 13:36:00 +08:00
final MinePersonInfoEditNamePageState state = MinePersonInfoEditNamePageState();
//更新个人信息-昵称
Future<void> updateUserInfoRequest() async {
final PasswordKeyListEntity entity = await ApiRepository.to.updateUserNameInfo(
2024-04-10 13:36:00 +08:00
nickname: state.inputNickName.value,
);
if (entity.errorCode!.codeIsSuccessful) {
showToast('操作成功'.tr);
final LoginData? loginData = await Storage.getLoginData();
2024-04-03 16:50:42 +08:00
loginData!.nickname = state.inputNickName.value;
Storage.saveLoginData(loginData);
eventBus.fire(MineInfoChangeRefreshUI());
Get.back();
}
}
void checkNext(TextEditingController controller) {
changeInput(controller);
}
void changeInput(TextEditingController controller) {
if (controller == state.nickNameController) {
state.inputNickName.value = controller.text;
}
_resetCanSub();
}
void _resetCanSub() {
state.canSub.value = state.nickNameIsOK;
}
@override
void onInit() {
super.onInit();
state.nickNameController.text = state.inputNickName.value;
}
}