52 lines
1.2 KiB
Dart
52 lines
1.2 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:get/get.dart';
|
|
import 'package:appwrite/models.dart' as user_models;
|
|
import '../controllers/login_controller.dart';
|
|
import '../controllers/geolocation_controller.dart';
|
|
import '../models/ptv_logistic_model.dart';
|
|
import '../routes/app_routes.dart';
|
|
|
|
class InputController extends GetxController {
|
|
final GeolocationController geoCtrl = Get.put(GeolocationController());
|
|
final LoginController loginCtrl = Get.put(LoginController());
|
|
final _ptvModel = Rxn<PTVModel>();
|
|
final _user = (Get.arguments as user_models.User).obs;
|
|
final formKey = GlobalKey<FormState>();
|
|
|
|
PTVModel? get ptvModel => _ptvModel.value;
|
|
user_models.User? get currentUser => _user.value;
|
|
|
|
@override
|
|
void onInit() {
|
|
_getLocation();
|
|
super.onInit();
|
|
}
|
|
|
|
@override
|
|
void onReady() {}
|
|
|
|
@override
|
|
void onClose() {
|
|
geoCtrl.onClose();
|
|
loginCtrl.onClose();
|
|
super.onClose();
|
|
}
|
|
|
|
void _getLocation() async {
|
|
await geoCtrl.getCurrentPosition().then(
|
|
(_) => {_ptvModel.value = geoCtrl.ptvModel},
|
|
);
|
|
update();
|
|
}
|
|
|
|
void goToListPage() {
|
|
//AppNavigation.goToListPage
|
|
}
|
|
|
|
void logout() {
|
|
loginCtrl.logout();
|
|
//AppNavigation.toLogin();
|
|
AppNavigation.offAllToLogin();
|
|
}
|
|
}
|