app-starlock/star_lock/lib/login/login/starLock_login_logic.dart
2024-01-11 15:14:02 +08:00

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();
}
}