diff --git a/lib/talk/starChart/views/talkView/talk_view_logic.dart b/lib/talk/starChart/views/talkView/talk_view_logic.dart index 5dd7108b..1e64c803 100644 --- a/lib/talk/starChart/views/talkView/talk_view_logic.dart +++ b/lib/talk/starChart/views/talkView/talk_view_logic.dart @@ -25,6 +25,7 @@ import 'package:star_lock/login/login/entity/LoginEntity.dart'; import 'package:star_lock/main/lockDetail/lockDetail/lockDetail_logic.dart'; import 'package:star_lock/main/lockDetail/lockDetail/lockDetail_state.dart'; import 'package:star_lock/main/lockDetail/lockDetail/lockNetToken_entity.dart'; +import 'package:star_lock/main/lockDetail/lockSet/lockSet/lockSetInfo_entity.dart'; import 'package:star_lock/main/lockDetail/lockSet/lockSet/lockSet_logic.dart'; import 'package:star_lock/main/lockDetail/lockSet/lockSet/lockSet_state.dart'; import 'package:star_lock/main/lockMian/entity/lockListInfo_entity.dart'; @@ -505,12 +506,6 @@ class TalkViewLogic extends BaseGetXController { // 远程开锁 Future remoteOpenLock() async { - final remoteUnlock = - CommonDataManage().currentKeyInfo.lockSetting!.remoteUnlock; - if (remoteUnlock == 0) { - showToast('该锁的远程开锁功能未启用'.tr); - } - final lockPeerId = StartChartManage().lockPeerId; final lockListPeerId = StartChartManage().lockListPeerId; int lockId = 0; @@ -528,12 +523,22 @@ class TalkViewLogic extends BaseGetXController { ?.lockId ?? 0; } - if (lockPeerId.isNotEmpty) {} - final LoginEntity entity = await ApiRepository.to - .remoteOpenLock(lockId: lockId.toString(), timeOut: 60); - if (entity.errorCode!.codeIsSuccessful) { - showToast('已开锁'.tr); - StartChartManage().lockListPeerId = []; + final LockSetInfoEntity lockSetInfoEntity = + await ApiRepository.to.getLockSettingInfoData( + lockId: lockId.toString(), + ); + if (lockSetInfoEntity.errorCode!.codeIsSuccessful) { + if (lockSetInfoEntity.data?.lockFeature?.remoteUnlock == 1 && + lockSetInfoEntity.data?.lockSettingInfo?.remoteUnlock == 1) { + final LoginEntity entity = await ApiRepository.to + .remoteOpenLock(lockId: lockId.toString(), timeOut: 60); + if (entity.errorCode!.codeIsSuccessful) { + showToast('已开锁'.tr); + StartChartManage().lockListPeerId = []; + } + } else { + showToast('该锁的远程开锁功能未启用'.tr); + } } }