From 9029cea991fee5621625e5e5eea24975988abd55 Mon Sep 17 00:00:00 2001 From: anfe <448468458@qq.com> Date: Wed, 15 May 2024 16:29:39 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E4=BF=AE=E5=A4=8D=E5=BC=80=E9=94=81?= =?UTF-8?q?=E5=92=8C=E9=97=AD=E9=94=81=E6=97=B6=E7=9A=84=E5=8F=8D=E9=A6=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- star_lock/images/lan/lan_en.json | 3 +- star_lock/images/lan/lan_keys.json | 3 +- star_lock/images/lan/lan_zh.json | 3 +- star_lock/lib/blue/io_reply.dart | 4 +-- .../lockDetail/lockDetail_logic.dart | 29 +++++++++---------- .../lockDetail/lockDetail_page.dart | 3 ++ 6 files changed, 25 insertions(+), 20 deletions(-) diff --git a/star_lock/images/lan/lan_en.json b/star_lock/images/lan/lan_en.json index d836f4c6..840c6a2d 100644 --- a/star_lock/images/lan/lan_en.json +++ b/star_lock/images/lan/lan_en.json @@ -842,5 +842,6 @@ "未避免异常情况,请在门打开时升级": "Unavoidable exceptions, please upgrade when the door is open", "钥匙无效": "The key is invalid", "操作失败,请确认锁是否在附近,或重启手机蓝牙后再试。": "The operation failed. Please confirm whether the lock is nearby, or restart your phone's Bluetooth and try again.", - "如果是全自动锁,请使屏幕变亮": "If it is a fully automatic lock, please make the screen brighter" + "如果是全自动锁,请使屏幕变亮": "If it is a fully automatic lock, please make the screen brighter", + "正在尝试闭锁……": "Attempting to lock..." } diff --git a/star_lock/images/lan/lan_keys.json b/star_lock/images/lan/lan_keys.json index c668e374..df127de2 100644 --- a/star_lock/images/lan/lan_keys.json +++ b/star_lock/images/lan/lan_keys.json @@ -870,5 +870,6 @@ "未避免异常情况,请在门打开时升级": "未避免异常情况,请在门打开时升级", "钥匙无效": "钥匙无效", "操作失败,请确认锁是否在附近,或重启手机蓝牙后再试。": "操作失败,请确认锁是否在附近,或重启手机蓝牙后再试。", - "如果是全自动锁,请使屏幕变亮": "如果是全自动锁,请使屏幕变亮" + "如果是全自动锁,请使屏幕变亮": "如果是全自动锁,请使屏幕变亮", + "正在尝试闭锁……": "正在尝试闭锁……" } diff --git a/star_lock/images/lan/lan_zh.json b/star_lock/images/lan/lan_zh.json index d4c3121d..774ad043 100644 --- a/star_lock/images/lan/lan_zh.json +++ b/star_lock/images/lan/lan_zh.json @@ -840,5 +840,6 @@ "未避免异常情况,请在门打开时升级": "未避免异常情况,请在门打开时升级", "钥匙无效": "钥匙无效", "操作失败,请确认锁是否在附近,或重启手机蓝牙后再试。": "操作失败,请确认锁是否在附近,或重启手机蓝牙后再试。", - "如果是全自动锁,请使屏幕变亮": "如果是全自动锁,请使屏幕变亮" + "如果是全自动锁,请使屏幕变亮": "如果是全自动锁,请使屏幕变亮", + "正在尝试闭锁……": "正在尝试闭锁……" } diff --git a/star_lock/lib/blue/io_reply.dart b/star_lock/lib/blue/io_reply.dart index 29265b10..42f2ab3f 100644 --- a/star_lock/lib/blue/io_reply.dart +++ b/star_lock/lib/blue/io_reply.dart @@ -119,7 +119,7 @@ abstract class Reply{ break; case 0x16: // 正在开锁中... - AppLog.log("$logTag ${commandType!.typeName}正在开锁中..."); + AppLog.log("$logTag ${commandType!.typeName} $status 正在开锁中..."); showErrorMessage("正在开锁中..."); break; case 0xff: @@ -129,7 +129,7 @@ abstract class Reply{ break; default: //失败 - AppLog.log("$logTag ${commandType!.typeName} 蓝牙返回其他错误问题"); + AppLog.log("$logTag ${commandType!.typeName} $status 蓝牙返回其他错误问题"); break; } } diff --git a/star_lock/lib/main/lockDetail/lockDetail/lockDetail_logic.dart b/star_lock/lib/main/lockDetail/lockDetail/lockDetail_logic.dart index cff7ebb3..3e763dfa 100644 --- a/star_lock/lib/main/lockDetail/lockDetail/lockDetail_logic.dart +++ b/star_lock/lib/main/lockDetail/lockDetail/lockDetail_logic.dart @@ -5,6 +5,7 @@ import 'package:flutter_blue_plus/flutter_blue_plus.dart'; import 'package:get/get.dart'; import 'package:intl/intl.dart'; import 'package:permission_handler/permission_handler.dart'; +import 'package:star_lock/blue/io_protocol/io_getStarLockStatusInfo.dart'; import 'package:star_lock/common/XSConstantMacro/XSConstantMacro.dart'; import 'package:star_lock/widget/permission/permission_dialog.dart'; @@ -46,7 +47,8 @@ class LockDetailLogic extends BaseGetXController { // } // 获取星锁状态信息 - // if (reply is GetStarLockStatuInfoReply && state.ifCurrentScreen.value == true) { + // if (reply is GetStarLockStatuInfoReply && + // state.ifCurrentScreen.value == true) { // _replyGetStarLockStatusInfo(reply); // } @@ -62,7 +64,6 @@ class LockDetailLogic extends BaseGetXController { // } }); } - // 开门数据解析 Future _replyOpenLock(Reply reply) async { int status = reply.data[6]; @@ -74,10 +75,7 @@ class LockDetailLogic extends BaseGetXController { cancelBlueConnetctToastTimer(); state.iSClosedUnlockSuccessfulPopup.value = true; - if (state.closedUnlockSuccessfulTimer != null) { - state.closedUnlockSuccessfulTimer!.cancel(); - state.closedUnlockSuccessfulTimer = null; - } + state.closedUnlockSuccessfulTimer?.cancel(); // 如果没有点击关闭弹窗,3秒后自动关闭 state.closedUnlockSuccessfulTimer = Timer.periodic(3.seconds, (timer) { state.iSClosedUnlockSuccessfulPopup.value = false; @@ -136,22 +134,23 @@ class LockDetailLogic extends BaseGetXController { break; case 0x0d: // 正在开锁中... - showToast('钥匙无效'.tr); - state.openLockBtnState.value = 0; - state.openDoorBtnisUneable.value = false; - state.animationController!.stop(); - cancelBlueConnetctToastTimer(); + closeLuckStatus(); break; default: //失败 - state.openLockBtnState.value = 0; - state.openDoorBtnisUneable.value = false; - state.animationController!.stop(); - cancelBlueConnetctToastTimer(); + closeLuckStatus(); break; } } + //清除开锁动画以及状态 + void closeLuckStatus() { + state.openLockBtnState.value = 0; + state.openDoorBtnisUneable.value = false; + state.animationController!.stop(canceled: true); + cancelBlueConnetctToastTimer(); + } + // 获取锁状态数据解析 // Future _replyGetStarLockStatusInfo(Reply reply) async { // int status = reply.data[2]; diff --git a/star_lock/lib/main/lockDetail/lockDetail/lockDetail_page.dart b/star_lock/lib/main/lockDetail/lockDetail/lockDetail_page.dart index 8e6cde2a..89b47646 100644 --- a/star_lock/lib/main/lockDetail/lockDetail/lockDetail_page.dart +++ b/star_lock/lib/main/lockDetail/lockDetail/lockDetail_page.dart @@ -1,6 +1,7 @@ import 'dart:async'; 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:intl/intl.dart'; @@ -1290,6 +1291,7 @@ class _LockDetailPageState extends State left: 155.w, child: GestureDetector( onTap: () { + state.closedUnlockSuccessfulTimer?.cancel(); setState(() { state.iSClosedUnlockSuccessfulPopup.value = false; }); @@ -1370,6 +1372,7 @@ class _LockDetailPageState extends State state.openLockBtnState.value = 1; state.animationController!.forward(); + EasyLoading.showToast("正在尝试闭锁……".tr, duration: 2000.milliseconds); AppLog.log("长按闭锁"); if (state.isOpenLockNeedOnline.value == 0) { // 不需要联网