feat: submit user login with app

This commit is contained in:
2025-10-06 16:26:41 +03:30
parent b49479010a
commit 90abc5b0ac
9 changed files with 55 additions and 7 deletions

View File

@@ -1,4 +1,5 @@
import 'dart:async';
import 'dart:io';
import 'package:flutter/material.dart';
import 'package:rasadyar_chicken/data/common/dio_error_handler.dart';
@@ -42,6 +43,7 @@ class AuthLogic extends GetxController with GetTickerProviderStateMixin {
Rx<AuthType> authType = AuthType.useAndPass.obs;
Rx<AuthStatus> authStatus = AuthStatus.init.obs;
Rx<OtpStatus> otpStatus = OtpStatus.init.obs;
RxnString deviceName = RxnString(null);
RxInt secondsRemaining = 120.obs;
Timer? _timer;
@@ -62,6 +64,7 @@ class AuthLogic extends GetxController with GetTickerProviderStateMixin {
textAnimation = CurvedAnimation(parent: _textAnimationController, curve: Curves.easeInOut);
initUserPassData();
getDeviceModel();
}
@override
@@ -128,6 +131,11 @@ class AuthLogic extends GetxController with GetTickerProviderStateMixin {
);
}
authRepository.submitUserInfo(
phone: usernameController.value.text,
deviceName: deviceName.value,
);
if (tmpRoles!.length > 1) {
Get.offAndToNamed(ChickenRoutes.role);
} else {
@@ -176,4 +184,24 @@ class AuthLogic extends GetxController with GetTickerProviderStateMixin {
rememberMe.value = true;
}
}
Future<void> getDeviceModel() async {
final deviceInfo = DeviceInfoPlugin();
if (Platform.isAndroid) {
final info = await deviceInfo.androidInfo;
print('Device: ${info.manufacturer} ${info.model}');
print('Android version: ${info.version.release}');
deviceName.value =
'Device:${info.manufacturer} Model:${info.model} version ${info.version.release}';
} else if (Platform.isIOS) {
final info = await deviceInfo.iosInfo;
print('Device: ${info.utsname.machine} (${info.name})');
print('System version: ${info.systemVersion}');
deviceName.value =
'Device:${info.utsname.machine} Model:${info.model} version ${info.systemVersion}';
} else {
print('Unsupported platform');
}
}
}