diff --git a/lib/blue/reciver_data.dart b/lib/blue/reciver_data.dart index 08fbd978..8f1db2af 100755 --- a/lib/blue/reciver_data.dart +++ b/lib/blue/reciver_data.dart @@ -115,7 +115,7 @@ class CommandReciverManager { break; } parseData(oriDataList).then((Reply? value) async { - EasyLoading.dismiss(); + // EasyLoading.dismiss(); await EventBusManager().eventBusFir(value); }).catchError((Object error) { AppLog.log('APP解析数据时发生错误: ${error.toString()}'); diff --git a/lib/main/lockDetail/lockSet/configuringWifi/configuringWifi/configuringWifi_logic.dart b/lib/main/lockDetail/lockSet/configuringWifi/configuringWifi/configuringWifi_logic.dart index 4eb5b6c6..d5c062c5 100755 --- a/lib/main/lockDetail/lockSet/configuringWifi/configuringWifi/configuringWifi_logic.dart +++ b/lib/main/lockDetail/lockSet/configuringWifi/configuringWifi/configuringWifi_logic.dart @@ -88,11 +88,13 @@ class ConfiguringWifiLogic extends BaseGetXController { Future _replySenderConfiguringWifiResult(Reply reply) async { final int status = reply.data[2]; state.sureBtnState.value = 0; + state.isLoading.value = false; + switch (status) { case 0x00: //成功 cancelBlueConnetctToastTimer(); - dismissEasyLoading(); + final int secretKeyJsonLength = (reply.data[4] << 8) + reply.data[3]; final List secretKeyList = @@ -110,7 +112,8 @@ class ConfiguringWifiLogic extends BaseGetXController { /// 配网成功后,赋值锁的peerId StartChartManage().lockPeerId = peerId ?? ''; - + dismissEasyLoading(); + state.isLoading.value = false; // 保存到缓存 await Storage.saveLockNetWorkInfo(jsonMap); // 上报服务器 @@ -126,6 +129,7 @@ class ConfiguringWifiLogic extends BaseGetXController { dismissEasyLoading(); cancelBlueConnetctToastTimer(); showToast('配网失败'.tr); + state.isLoading.value = false; break; } } @@ -138,6 +142,10 @@ class ConfiguringWifiLogic extends BaseGetXController { // 点击配置wifi Future senderConfiguringWifiAction() async { + if (state.isLoading.isTrue) { + AppLog.log('正在配网中请勿重复点击'); + return; + } if (state.wifiNameController.text.isEmpty) { showToast('请输入wifi名称'.tr); return; @@ -197,11 +205,14 @@ class ConfiguringWifiLogic extends BaseGetXController { password: state.wifiPWDController.text, gatewayConfigurationStr: state.getGatewayConfigurationStr, ); - EasyLoading.show(); } }, isAddEquipment: true, ); + // 显示加载指示器 + showEasyLoading(); + state.isLoading.value = true; + // 模拟异步请求 } // 获取设备状态 diff --git a/lib/main/lockDetail/lockSet/configuringWifi/configuringWifi/configuringWifi_page.dart b/lib/main/lockDetail/lockSet/configuringWifi/configuringWifi/configuringWifi_page.dart index 6bfec6a6..55a6a02c 100755 --- a/lib/main/lockDetail/lockSet/configuringWifi/configuringWifi/configuringWifi_page.dart +++ b/lib/main/lockDetail/lockSet/configuringWifi/configuringWifi/configuringWifi_page.dart @@ -1,4 +1,3 @@ - import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_easyloading/flutter_easyloading.dart'; @@ -21,7 +20,8 @@ class ConfiguringWifiPage extends StatefulWidget { State createState() => _ConfiguringWifiPageState(); } -class _ConfiguringWifiPageState extends State with RouteAware { +class _ConfiguringWifiPageState extends State + with RouteAware { final ConfiguringWifiLogic logic = Get.put(ConfiguringWifiLogic()); final ConfiguringWifiState state = Get.find().state; @@ -30,24 +30,32 @@ class _ConfiguringWifiPageState extends State with RouteAwa return Scaffold( backgroundColor: Colors.white, appBar: TitleAppBar( - barTitle: '配置WiFi'.tr, - haveBack: true, - backgroundColor: AppColors.mainColor), + barTitle: '配置WiFi'.tr, + haveBack: true, + backgroundColor: AppColors.mainColor), body: Column( children: [ - configuringWifiTFWidget('WiFi名称'.tr, '请输入WiFi名字'.tr, state.wifiNameController), - Container(width: 1.sw, height: 1.h,color: AppColors.mainBackgroundColor), - configuringWifiTFWidget('WiFi密码'.tr, '请输入WiFi密码'.tr, state.wifiPWDController), - SizedBox(height: 50.h,), - SubmitBtn(btnName: '确定'.tr, onClick: () { - logic.senderConfiguringWifiAction(); - }), + configuringWifiTFWidget( + 'WiFi名称'.tr, '请输入WiFi名字'.tr, state.wifiNameController), + Container( + width: 1.sw, height: 1.h, color: AppColors.mainBackgroundColor), + configuringWifiTFWidget( + 'WiFi密码'.tr, '请输入WiFi密码'.tr, state.wifiPWDController), + SizedBox( + height: 50.h, + ), + SubmitBtn( + btnName: '确定'.tr, + onClick: () { + logic.senderConfiguringWifiAction(); + }, + ), ], )); } Widget configuringWifiTFWidget( - String titleStr, String rightTitle,TextEditingController controller) { + String titleStr, String rightTitle, TextEditingController controller) { return Column( children: [ Container(height: 10.h), @@ -86,16 +94,16 @@ class _ConfiguringWifiPageState extends State with RouteAwa hintStyle: TextStyle(fontSize: 22.sp), focusedBorder: const OutlineInputBorder( borderSide: - BorderSide(width: 0, color: Colors.transparent)), + BorderSide(width: 0, color: Colors.transparent)), disabledBorder: const OutlineInputBorder( borderSide: - BorderSide(width: 0, color: Colors.transparent)), + BorderSide(width: 0, color: Colors.transparent)), enabledBorder: const OutlineInputBorder( borderSide: - BorderSide(width: 0, color: Colors.transparent)), + BorderSide(width: 0, color: Colors.transparent)), border: const OutlineInputBorder( borderSide: - BorderSide(width: 0, color: Colors.transparent)), + BorderSide(width: 0, color: Colors.transparent)), contentPadding: const EdgeInsets.symmetric(vertical: 0), ), style: TextStyle( diff --git a/lib/main/lockDetail/lockSet/configuringWifi/configuringWifi/configuringWifi_state.dart b/lib/main/lockDetail/lockSet/configuringWifi/configuringWifi/configuringWifi_state.dart index 1fc13548..33707851 100755 --- a/lib/main/lockDetail/lockSet/configuringWifi/configuringWifi/configuringWifi_state.dart +++ b/lib/main/lockDetail/lockSet/configuringWifi/configuringWifi/configuringWifi_state.dart @@ -26,4 +26,6 @@ class ConfiguringWifiState{ TextEditingController wifiNameController = TextEditingController(); TextEditingController wifiPWDController = TextEditingController(); String getGatewayConfigurationStr = ''; + + RxBool isLoading=false.obs; } \ No newline at end of file