58 lines
1.6 KiB
Dart
58 lines
1.6 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:get/get.dart';
|
|
import 'package:star_lock/appRouters.dart';
|
|
import 'package:star_lock/tools/baseGetXController.dart';
|
|
|
|
import '../../mine/mine/starLockMine_logic.dart';
|
|
import '../../network/api_repository.dart';
|
|
import 'starLock_login_state.dart';
|
|
|
|
class StarLockLoginLogic extends BaseGetXController {
|
|
final StarLockLoginState state = StarLockLoginState();
|
|
final stateMyLogic = Get.put(StarLockMineLogic()).state;
|
|
|
|
void login() async {
|
|
var entity = await ApiRepository.to
|
|
.login("1", state.pwd.value, "+86", state.emailOrPhone.value);
|
|
if (entity.errorCode!.codeIsSuccessful) {
|
|
// await StoreService.to.saveLogInInfo(entity);
|
|
stateMyLogic.saveLoginData(entity.data);
|
|
// Get.back();
|
|
// Get.toNamed(Routers.starLockMain);
|
|
Get.offNamedUntil(Routers.starLockMain, (route) => false);
|
|
}
|
|
}
|
|
|
|
void changeAgreeState() {
|
|
_resetCanNext();
|
|
}
|
|
|
|
void exchangeFistShow() =>
|
|
state.passwordShow.value = !state.passwordShow.value;
|
|
|
|
void checkNext(TextEditingController controller) {
|
|
changeInput(controller);
|
|
}
|
|
|
|
void changeInput(TextEditingController controller) {
|
|
if (controller == state.emailOrPhoneController) {
|
|
state.emailOrPhone.value = controller.text;
|
|
}
|
|
if (controller == state.pwdController) {
|
|
state.pwd.value = controller.text;
|
|
}
|
|
_resetCanNext();
|
|
}
|
|
|
|
void _resetCanNext() {
|
|
state.canNext.value =
|
|
state.pwdIsOK && state.isEmailOrPhone && state.agree.value;
|
|
}
|
|
|
|
@override
|
|
void onClose() {
|
|
state.onClose();
|
|
super.onClose();
|
|
}
|
|
}
|