52 lines
1.7 KiB
Dart
Executable File
52 lines
1.7 KiB
Dart
Executable File
|
|
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';
|
|
import 'package:star_lock/mine/minePersonInfo/minePersonInfoEditName/minePersonInfoEditName_state.dart';
|
|
import 'package:star_lock/tools/eventBusEventManage.dart';
|
|
import '../../../../network/api_repository.dart';
|
|
import '../../../../tools/baseGetXController.dart';
|
|
import '../../../tools/storage.dart';
|
|
|
|
class MinePersonInfoEditNameLogic extends BaseGetXController {
|
|
final MinePersonInfoEditNamePageState state = MinePersonInfoEditNamePageState();
|
|
//更新个人信息-昵称
|
|
Future<void> updateUserInfoRequest() async {
|
|
final PasswordKeyListEntity entity = await ApiRepository.to.updateUserNameInfo(
|
|
nickname: state.inputNickName.value,
|
|
);
|
|
if (entity.errorCode!.codeIsSuccessful) {
|
|
showToast('操作成功'.tr);
|
|
final LoginData? loginData = await Storage.getLoginData();
|
|
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;
|
|
}
|
|
}
|