feat : new injection logic
test : some file :) chore : upgrade android gradle
This commit is contained in:
@@ -27,11 +27,10 @@ class CustomNavigationObserver extends NavigatorObserver {
|
||||
await setupInspectionDI();
|
||||
} else if (!_isWorkDone &&
|
||||
(routeName == LiveStockRoutes.init || routeName == LiveStockRoutes.auth)) {
|
||||
_isWorkDone = true;
|
||||
await setupLiveStockDI();
|
||||
|
||||
}
|
||||
super.didPush(route, previousRoute);
|
||||
tLog('CustomNavigationObserver: didPush - $routeName');
|
||||
// tLog('CustomNavigationObserver: didPush - $routeName');
|
||||
}
|
||||
|
||||
@override
|
||||
@@ -43,12 +42,12 @@ class CustomNavigationObserver extends NavigatorObserver {
|
||||
@override
|
||||
void didPop(Route route, Route? previousRoute) {
|
||||
super.didPop(route, previousRoute);
|
||||
tLog('CustomNavigationObserver: didPop - ${route.settings.name}');
|
||||
// tLog('CustomNavigationObserver: didPop - ${route.settings.name}');
|
||||
}
|
||||
|
||||
@override
|
||||
void didRemove(Route route, Route? previousRoute) {
|
||||
super.didRemove(route, previousRoute);
|
||||
tLog('CustomNavigationObserver: didRemove - ${route.settings.name}');
|
||||
// tLog('CustomNavigationObserver: didRemove - ${route.settings.name}');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
import 'package:rasadyar_chicken/presentation/routes/routes.dart';
|
||||
import 'package:rasadyar_app/presentation/routes/app_pages.dart';
|
||||
import 'package:rasadyar_core/core.dart';
|
||||
import 'package:rasadyar_inspection/inspection.dart';
|
||||
import 'package:rasadyar_livestock/injection/live_stock_di.dart';
|
||||
import 'package:rasadyar_livestock/presentation/routes/app_pages.dart';
|
||||
|
||||
class ModulesLogic extends GetxController {
|
||||
TokenStorageService tokenService = Get.find<TokenStorageService>();
|
||||
@@ -32,21 +29,20 @@ class ModulesLogic extends GetxController {
|
||||
}
|
||||
|
||||
Future<void> navigateToModule(Module module) async {
|
||||
if (module == Module.inspection) {
|
||||
Get.offAllNamed(InspectionRoutes.init);
|
||||
} else if (module == Module.liveStocks) {
|
||||
await setupLiveStockDI();
|
||||
Get.offAllNamed(LiveStockRoutes.init);
|
||||
} else if (module == Module.chicken) {
|
||||
Get.offAllNamed(ChickenRoutes.init);
|
||||
var target = getTargetPage(module).entries.first;
|
||||
|
||||
if (target.value != null) {
|
||||
await target.value;
|
||||
}
|
||||
|
||||
Get.offAllNamed(target.key);
|
||||
}
|
||||
|
||||
void onTapCard(Module module, int index) async {
|
||||
isLoading.value = true;
|
||||
selectedIndex.value = index;
|
||||
saveModule(module);
|
||||
await Future.delayed(Duration(milliseconds: 800)); // Simulate loading delay
|
||||
await Future.delayed(Duration(milliseconds: 500)); // Simulate loading delay
|
||||
navigateToModule(module);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -155,7 +155,10 @@ class SplashLogic extends GetxController with GetTickerProviderStateMixin {
|
||||
tokenService.getModule();
|
||||
final module = tokenService.appModule.value;
|
||||
final target = getTargetPage(module);
|
||||
Get.offAndToNamed(target);
|
||||
if (target.values.first != null) {
|
||||
await target.values.first;
|
||||
}
|
||||
Get.offAndToNamed(target.keys.first);
|
||||
} catch (e, st) {
|
||||
debugPrint("onReady error: $e\n$st");
|
||||
}
|
||||
|
||||
@@ -4,8 +4,10 @@ import 'package:rasadyar_app/presentation/pages/splash/logic.dart';
|
||||
import 'package:rasadyar_app/presentation/pages/splash/view.dart';
|
||||
import 'package:rasadyar_app/presentation/pages/system_design/system_design.dart';
|
||||
import 'package:rasadyar_chicken/chicken.dart';
|
||||
import 'package:rasadyar_chicken/data/di/chicken_di.dart';
|
||||
import 'package:rasadyar_core/core.dart';
|
||||
import 'package:rasadyar_inspection/inspection.dart';
|
||||
import 'package:rasadyar_livestock/injection/live_stock_di.dart';
|
||||
import 'package:rasadyar_livestock/presentation/routes/app_pages.dart';
|
||||
|
||||
part 'app_paths.dart';
|
||||
@@ -38,15 +40,15 @@ sealed class AppPages {
|
||||
];
|
||||
}
|
||||
|
||||
String getTargetPage(Module? value) {
|
||||
Map<String, Future<void>?> getTargetPage(Module? value) {
|
||||
switch (value) {
|
||||
case Module.inspection:
|
||||
return InspectionRoutes.init;
|
||||
return {InspectionRoutes.init:null};
|
||||
case Module.liveStocks:
|
||||
return LiveStockRoutes.init;
|
||||
return {LiveStockRoutes.init: setupLiveStockDI()};
|
||||
case Module.chicken:
|
||||
return ChickenRoutes.init;
|
||||
return {ChickenRoutes.init : null};
|
||||
default:
|
||||
return AppPaths.moduleList;
|
||||
return {AppPaths.moduleList : null};
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user