|
|
|
|
@ -3,6 +3,7 @@ import 'package:flutter_screenutil/flutter_screenutil.dart';
|
|
|
|
|
import 'package:get/get.dart'; |
|
|
|
|
import 'package:problem_check_system/app/core/routes/app_routes.dart'; |
|
|
|
|
import 'package:problem_check_system/app/core/services/network_status_service.dart'; |
|
|
|
|
import 'package:problem_check_system/app/features/enterprise/presentation/controllers/enterprise_list_controller.dart'; |
|
|
|
|
import 'package:problem_check_system/app/features/enterprise/presentation/pages/enterprise_list_page.dart'; |
|
|
|
|
import 'package:problem_check_system/app/features/home/pages/home_page.dart'; |
|
|
|
|
import 'package:problem_check_system/app/features/my/views/my_page.dart'; |
|
|
|
|
@ -17,7 +18,11 @@ class NavigationController extends GetxController {
|
|
|
|
|
final double _edgePaddingY = 111.0.h; |
|
|
|
|
final fabUploadPosition = Offset(0, 0).obs; |
|
|
|
|
final NetworkStatusService networkStatusService; |
|
|
|
|
NavigationController({required this.networkStatusService}); |
|
|
|
|
final EnterpriseListController enterpriseListController; |
|
|
|
|
NavigationController({ |
|
|
|
|
required this.networkStatusService, |
|
|
|
|
required this.enterpriseListController, |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
/// get 选中的 |
|
|
|
|
RxBool get isOnline => networkStatusService.isOnline; |
|
|
|
|
@ -93,14 +98,15 @@ class NavigationController extends GetxController {
|
|
|
|
|
fabUploadPosition.value = Offset(newDx, fabUploadPosition.value.dy); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void handleFabUploadTap() { |
|
|
|
|
Future<void> handleFabUploadTap() async { |
|
|
|
|
// 使用 switch 语句判断当前选中的页面索引 |
|
|
|
|
switch (selectedIndex.value) { |
|
|
|
|
case 1: // 企业列表页面 |
|
|
|
|
Get.log("当前在企业页面,准备跳转到企业数据上传页..."); |
|
|
|
|
// 使用命名路由进行跳转,这是最佳实践 |
|
|
|
|
// todo 这里应该调用 enterpriseListController 的导航方法,方便返回刷新 |
|
|
|
|
Get.toNamed(AppRoutes.enterpriseUpload); |
|
|
|
|
final result = await Get.toNamed(AppRoutes.enterpriseUpload); |
|
|
|
|
if (result == true) { |
|
|
|
|
enterpriseListController.search(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
break; |
|
|
|
|
case 2: // 问题列表页面 |
|
|
|
|
Get.log("当前在问题页面,准备跳转到问题上传页..."); |
|
|
|
|
|