import 'package:flutter/material.dart'; import 'package:flutter_easyloading/flutter_easyloading.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:star_lock/main/lockDetail/lockSet/uploadData/uploadData_state.dart'; import '../../../../app_settings/app_colors.dart'; import '../../../../tools/appRouteObserver.dart'; import '../../../../tools/submitBtn.dart'; import '../../../../tools/titleAppBar.dart'; import 'uploadData_logic.dart'; class UploadDataPage extends StatefulWidget { const UploadDataPage({Key? key}) : super(key: key); @override State createState() => _UploadDataPageState(); } class _UploadDataPageState extends State with RouteAware{ final UploadDataLogic logic = Get.put(UploadDataLogic()); final UploadDataState state = Get.find().state; @override Widget build(BuildContext context) { return Scaffold( backgroundColor: Colors.white, appBar: TitleAppBar( barTitle: '上传数据'.tr, haveBack:true, backgroundColor: AppColors.mainColor ), body:Container( padding: EdgeInsets.all(30.w), child: Column( children: [ Row( mainAxisAlignment: MainAxisAlignment.start, children: [ Expanded(child: Text('本操作将上传锁内数据到服务器,过程可能需要几分钟,请耐心等待'.tr, style: TextStyle(fontSize: 22.sp, color: AppColors.darkGrayTextColor),)), ], ), SizedBox(height: 30.h,), Obx(() => SubmitBtn(btnName: state.indexCount.value == 0 ? '开始'.tr : '${'开始'.tr}(${state.indexCount.value}/7)', borderRadius: 20.w, fontSize: 24.sp, // margin: EdgeInsets.only(left: 03.w, right: 30.w, top: 20.w), padding: EdgeInsets.only(top: 20.w, bottom: 20.w), onClick: () { state.ifSeletUpdataBtnState = true; state.uploadPasswordPage = 0; state.uploadPasswordDataList.clear(); state.uploadCardPage = 0; state.uploadCardDataList.clear(); state.uploadFingerprintPage = 0; state.uploadFingerprintDataList.clear(); state.uploadFacePage = 0; state.uploadFaceDataList.clear(); state.uploadPalmVeinPage = 0; state.uploadPalmVeinDataList.clear(); state.uploadLockSetDataList.clear(); logic.getUpdataLockPasswordList(); } )), ], ), ) ); } @override void didChangeDependencies() { super.didChangeDependencies(); /// 路由订阅 AppRouteObserver().routeObserver.subscribe(this, ModalRoute.of(context)!); } @override void dispose() { /// 取消路由订阅 AppRouteObserver().routeObserver.unsubscribe(this); super.dispose(); } /// 从上级界面进入 当前界面即将出现 @override void didPush() { super.didPush(); state.ifCurrentScreen.value = true; } /// 返回上一个界面 当前界面即将消失 @override void didPop() { super.didPop(); logic.cancelBlueConnetctToastTimer(); if (EasyLoading.isShow) { EasyLoading.dismiss(animation: true); } state.ifCurrentScreen.value = false; } /// 从下级返回 当前界面即将出现 @override void didPopNext() { super.didPopNext(); state.ifCurrentScreen.value = true; } /// 进入下级界面 当前界面即将消失 @override void didPushNext() { super.didPushNext(); logic.cancelBlueConnetctToastTimer(); if (EasyLoading.isShow) { EasyLoading.dismiss(animation: true); } state.ifCurrentScreen.value = false; } }