登录修改
This commit is contained in:
@@ -1,4 +1,7 @@
|
||||
import 'dart:async';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:getx_scaffold/getx_scaffold.dart';
|
||||
import 'package:ln_jq_app/common/model/base_model.dart';
|
||||
|
||||
class LoginController extends GetxController with BaseControllerMixin {
|
||||
@override
|
||||
@@ -7,19 +10,71 @@ class LoginController extends GetxController with BaseControllerMixin {
|
||||
LoginController();
|
||||
|
||||
// 控制输入框的 TextEditingController
|
||||
final TextEditingController phoneController = TextEditingController();
|
||||
final TextEditingController codeController = TextEditingController();
|
||||
|
||||
// 兼容旧逻辑
|
||||
final TextEditingController driverIdentityController = TextEditingController();
|
||||
final TextEditingController stationIdController = TextEditingController();
|
||||
final TextEditingController passwordController = TextEditingController();
|
||||
|
||||
// --- 倒计时逻辑 ---
|
||||
final RxInt countdown = 0.obs;
|
||||
Timer? _timer;
|
||||
|
||||
void startCountdown() async {
|
||||
if (phoneController.text.isEmpty || !phoneController.text.isPhoneNumber) {
|
||||
showToast("请输入正确的手机号");
|
||||
return;
|
||||
}
|
||||
|
||||
if (countdown.value > 0) return;
|
||||
|
||||
// 调用发送验证码接口
|
||||
var responseData = await HttpService.to.post(
|
||||
'appointment/login/sendCode',
|
||||
data: {"mobile": phoneController.text},
|
||||
);
|
||||
|
||||
if (responseData == null && responseData!.data == null) {
|
||||
showToast('验证码发送失败,请稍后重试');
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
var result = BaseModel.fromJson(responseData.data);
|
||||
|
||||
if (result.code != 0) {
|
||||
showToast(result.error);
|
||||
dismissLoading();
|
||||
return;
|
||||
}
|
||||
|
||||
showToast("验证码已发送");
|
||||
|
||||
countdown.value = 60;
|
||||
_timer = Timer.periodic(const Duration(seconds: 1), (timer) {
|
||||
if (countdown.value > 0) {
|
||||
countdown.value--;
|
||||
} else {
|
||||
_timer?.cancel();
|
||||
}
|
||||
});
|
||||
} catch (e) {
|
||||
showToast('验证码服务异常,请稍后重试');
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void onInit() {
|
||||
|
||||
super.onInit();
|
||||
}
|
||||
|
||||
@override
|
||||
void onClose() {
|
||||
_timer?.cancel();
|
||||
phoneController.dispose();
|
||||
codeController.dispose();
|
||||
super.onClose();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user