diff --git a/lib/apm/umeng/umeng_helper.dart b/lib/apm/umeng/umeng_helper.dart index bc1e3c04..882ad4b6 100644 --- a/lib/apm/umeng/umeng_helper.dart +++ b/lib/apm/umeng/umeng_helper.dart @@ -1,5 +1,5 @@ // -import 'package:umeng_common_sdk/umeng_common_sdk.dart'; +// import 'package:umeng_common_sdk/umeng_common_sdk.dart'; import '../../flavors.dart'; class UmengHelper { @@ -15,27 +15,24 @@ class UmengHelper { return _instance!; } - Future initApp() async { - - } + Future initApp() async {} Future initSdk() async { - UmengCommonSdk.initCommon( - F.umengKey.androidKey, F.umengKey.iosKey, F.umengKey.channel); - UmengCommonSdk.setPageCollectionModeManual(); + // UmengCommonSdk.initCommon( + // F.umengKey.androidKey, F.umengKey.iosKey, F.umengKey.channel); + // UmengCommonSdk.setPageCollectionModeManual(); } Future login(String userId) async { - UmengCommonSdk.onProfileSignIn(userId); + // UmengCommonSdk.onProfileSignIn(userId); } - Future trackEvent( - String eventName, Map parameters) async { - UmengCommonSdk.onEvent(eventName, parameters); + Future trackEvent(String eventName, Map parameters) async { + // UmengCommonSdk.onEvent(eventName, parameters); } Future logout() async { - UmengCommonSdk.onProfileSignOff(); + // UmengCommonSdk.onProfileSignOff(); } } // diff --git a/lib/main/lockDetail/face/faceList/faceList_logic.dart b/lib/main/lockDetail/face/faceList/faceList_logic.dart index 2f6e8a18..2e5d787b 100755 --- a/lib/main/lockDetail/face/faceList/faceList_logic.dart +++ b/lib/main/lockDetail/face/faceList/faceList_logic.dart @@ -316,6 +316,7 @@ class FaceListLogic extends BaseGetXController { {required bool isRefresh}) async { if (isRefresh) { state.faceItemListData.clear(); + state.faceItemListData.refresh(); pageNo = 1; } final FingerprintListDataEntity entity = diff --git a/lib/main/lockDetail/fingerprint/fingerprintList/fingerprintList_logic.dart b/lib/main/lockDetail/fingerprint/fingerprintList/fingerprintList_logic.dart index ab32de1f..a0fb33f2 100755 --- a/lib/main/lockDetail/fingerprint/fingerprintList/fingerprintList_logic.dart +++ b/lib/main/lockDetail/fingerprint/fingerprintList/fingerprintList_logic.dart @@ -25,11 +25,9 @@ class FingerprintListLogic extends BaseGetXController { late StreamSubscription _replySubscription; void _initReplySubscription() { - _replySubscription = - EventBusManager().eventBus!.on().listen((Reply reply) { + _replySubscription = EventBusManager().eventBus!.on().listen((Reply reply) { // 添加指纹开始(此处用作删除指纹) - if ((reply is SenderAddFingerprintWithTimeCycleCoercionReply) && - (state.ifCurrentScreen.value == true)) { + if ((reply is SenderAddFingerprintWithTimeCycleCoercionReply) && (state.ifCurrentScreen.value == true)) { _replyAddFingerprintBegin(reply); } @@ -57,13 +55,10 @@ class FingerprintListLogic extends BaseGetXController { break; case 0x06: //无权限 - final List? privateKey = - await Storage.getStringList(saveBluePrivateKey); - final List getPrivateKeyList = - changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - final List? signKey = - await Storage.getStringList(saveBlueSignKey); + final List? signKey = await Storage.getStringList(saveBlueSignKey); final List signKeyDataList = changeStringListToIntList(signKey!); final List token = reply.data.sublist(5, 9); @@ -257,20 +252,16 @@ class FingerprintListLogic extends BaseGetXController { showBlueConnetctToastTimer(action: () { dismissEasyLoading(); }); - BlueManage().blueSendData(BlueManage().connectDeviceName, - (BluetoothConnectionState deviceConnectionState) async { + BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState deviceConnectionState) async { if (deviceConnectionState == BluetoothConnectionState.connected) { // var publicKey = await Storage.getStringList(saveBluePublicKey); // List publicKeyDataList = changeStringListToIntList(publicKey!); - final List? signKey = - await Storage.getStringList(saveBlueSignKey); + final List? signKey = await Storage.getStringList(saveBlueSignKey); final List signKeyDataList = changeStringListToIntList(signKey!); - final List? privateKey = - await Storage.getStringList(saveBluePrivateKey); - final List getPrivateKeyList = - changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); final List? token = await Storage.getStringList(saveBlueToken); final List getTokenList = changeStringListToIntList(token!); @@ -298,8 +289,7 @@ class FingerprintListLogic extends BaseGetXController { privateKey: getPrivateKeyList, token: getTokenList, isBeforeAddUser: false); - } else if (deviceConnectionState == - BluetoothConnectionState.disconnected) { + } else if (deviceConnectionState == BluetoothConnectionState.disconnected) { dismissEasyLoading(); cancelBlueConnetctToastTimer(); if (state.ifCurrentScreen.value == true) { @@ -337,15 +327,15 @@ class FingerprintListLogic extends BaseGetXController { */ // 获取指纹列表 - Future getFingerprintsListData( - {required bool isRefresh}) async { + Future getFingerprintsListData({required bool isRefresh}) async { // 如果是下拉刷新,清空已有数据 - // if (isRefresh) { - state.fingerprintItemListData.clear(); + if (isRefresh) { pageNo = 1; + state.fingerprintItemListData.clear(); + state.fingerprintItemListData.refresh(); + } - final FingerprintListDataEntity entity = - await ApiRepository.to.getFingerprintsListData( + final FingerprintListDataEntity entity = await ApiRepository.to.getFingerprintsListData( lockId: state.lockId.value.toString(), pageNo: pageNo.toString(), pageSize: pageSize.toString(), @@ -381,10 +371,7 @@ class FingerprintListLogic extends BaseGetXController { type = '0'; } final LoginEntity entity = await ApiRepository.to.deletFingerprintsData( - fingerprintId: fingerprintId, - lockId: state.lockId.value.toString(), - type: type, - deleteType: '1'); + fingerprintId: fingerprintId, lockId: state.lockId.value.toString(), type: type, deleteType: '1'); if (entity.errorCode!.codeIsSuccessful) { if (state.isDeletAll == false) { showToast('删除成功'.tr, something: () { @@ -402,9 +389,7 @@ class FingerprintListLogic extends BaseGetXController { late StreamSubscription _teamEvent; void _initRefreshAction() { - _teamEvent = eventBus - .on() - .listen((OtherTypeRefreshListEvent event) async { + _teamEvent = eventBus.on().listen((OtherTypeRefreshListEvent event) async { // 立即刷新数据 await getFingerprintsListData(isRefresh: true); }); @@ -415,8 +400,7 @@ class FingerprintListLogic extends BaseGetXController { String keyTypeStr = ''; // // (fingerprintItemData.fingerprintType! != 1) ? (fingerprintItemData.endDate! < DateTime.now().millisecondsSinceEpoch ? "已失效" : "") : "" if (fingerprintItemData.fingerprintStatus == 1) { - if (fingerprintItemData.startDate! > - DateTime.now().millisecondsSinceEpoch) { + if (fingerprintItemData.startDate! > DateTime.now().millisecondsSinceEpoch) { keyTypeStr = '未生效'.tr; } } else if (fingerprintItemData.fingerprintStatus == 2) { @@ -428,8 +412,7 @@ class FingerprintListLogic extends BaseGetXController { String getKeyDateType(FingerprintItemData fingerprintItemData) { String keyDateTypeStr = ''; // 永久:1;限时2,单次3,循环:4 if (fingerprintItemData.fingerprintType! == 1) { - keyDateTypeStr = - "${DateTool().dateToYMDHNString(fingerprintItemData.createDate.toString())} ${"永久".tr}"; + keyDateTypeStr = "${DateTool().dateToYMDHNString(fingerprintItemData.createDate.toString())} ${"永久".tr}"; } else if (fingerprintItemData.fingerprintType! == 2) { keyDateTypeStr = '${DateTool().dateToYMDHNString(fingerprintItemData.startDate.toString())} - ${DateTool().dateToYMDHNString(fingerprintItemData.endDate.toString())} ${'限时'.tr}'; @@ -442,11 +425,10 @@ class FingerprintListLogic extends BaseGetXController { //刷新单条信息 Future refreshIndividualKeys({required int fingerprintId}) async { - final FingerprintEntity entity = - await ApiRepository.to.getFingerprintsData(fingerprintId); + final FingerprintEntity entity = await ApiRepository.to.getFingerprintsData(fingerprintId); if (entity.errorCode!.codeIsSuccessful) { - final int index = state.fingerprintItemListData.indexWhere( - (FingerprintItemData item) => item.fingerprintId == fingerprintId); + final int index = + state.fingerprintItemListData.indexWhere((FingerprintItemData item) => item.fingerprintId == fingerprintId); state.fingerprintItemListData.removeAt(index); state.fingerprintItemListData.insert(index, entity.data!); } diff --git a/lib/main/lockDetail/lockSet/lockTime/lockTime_logic.dart b/lib/main/lockDetail/lockSet/lockTime/lockTime_logic.dart index bb2e9962..5e97450c 100755 --- a/lib/main/lockDetail/lockSet/lockTime/lockTime_logic.dart +++ b/lib/main/lockDetail/lockSet/lockTime/lockTime_logic.dart @@ -26,8 +26,7 @@ class LockTimeLogic extends BaseGetXController { late StreamSubscription _replySubscription; void _initReplySubscription() { - _replySubscription = - EventBusManager().eventBus!.on().listen((Reply reply) { + _replySubscription = EventBusManager().eventBus!.on().listen((Reply reply) { if (reply is TimingReply) { _replyTiming(reply); } @@ -50,10 +49,8 @@ class LockTimeLogic extends BaseGetXController { // 有效时间 final List indate = reply.data.sublist(150, 154); - int indateValue = (0xff & indate[0]) << 24 | - (0xff & indate[1]) << 16 | - (0xff & indate[2]) << 8 | - (0xFF & indate[3]); + int indateValue = + (0xff & indate[0]) << 24 | (0xff & indate[1]) << 16 | (0xff & indate[2]) << 8 | (0xFF & indate[3]); // 检查时间戳是否无效或超出范围 if (indateValue == 0xffffffff || indateValue <= 0) { // 使用当前系统时间戳(秒) @@ -62,23 +59,19 @@ class LockTimeLogic extends BaseGetXController { } // 验证时间戳是否在合理范围内(例如:2000年到2100年之间) - final DateTime dateTime = - DateTime.fromMillisecondsSinceEpoch(indateValue * 1000); + final DateTime dateTime = DateTime.fromMillisecondsSinceEpoch(indateValue * 1000); if (dateTime.year < 2000 || dateTime.year > 2100) { AppLog.log('时间戳超出合理范围: $indateValue'); indateValue = DateTime.now().millisecondsSinceEpoch ~/ 1000; } - AppLog.log( - '====================indate:$indate indateValue:$indateValue'); + AppLog.log('====================indate:$indate indateValue:$indateValue'); state.dateTime.value = DateTool().dateToYMDHNString('$indateValue'); break; case 0x06: //需要鉴权 - final List? privateKey = - await Storage.getStringList(saveBluePrivateKey); - final List getPrivateKeyList = - changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); IoSenderManage.senderGetStarLockStatuInfo( lockID: BlueManage().connectDeviceName, @@ -101,8 +94,7 @@ class LockTimeLogic extends BaseGetXController { switch (status) { case 0x00: //成功 - final String dataEime = - DateTool().dateToYMDHNString('${state.serverTime}'); + final String dataEime = DateTool().dateToYMDHNString('${state.serverTime}'); state.dateTime.value = dataEime; @@ -149,19 +141,15 @@ class LockTimeLogic extends BaseGetXController { dismissEasyLoading(); state.sureBtnState.value = 0; }); - BlueManage().blueSendData(BlueManage().connectDeviceName, - (BluetoothConnectionState connectionState) async { + BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState connectionState) async { if (connectionState == BluetoothConnectionState.connected) { - final List? privateKey = - await Storage.getStringList(saveBluePrivateKey); - final List getPrivateKeyList = - changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); final List? token = await Storage.getStringList(saveBlueToken); final List getTokenList = changeStringListToIntList(token!); - final List? signKey = - await Storage.getStringList(saveBlueSignKey); + final List? signKey = await Storage.getStringList(saveBlueSignKey); final List getSignKeyList = changeStringListToIntList(signKey!); IoSenderManage.senderTimingCommand( @@ -190,13 +178,10 @@ class LockTimeLogic extends BaseGetXController { showBlueConnetctToastTimer(action: () { dismissEasyLoading(); }); - BlueManage().blueSendData(BlueManage().connectDeviceName, - (BluetoothConnectionState deviceConnectionState) async { + BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState deviceConnectionState) async { if (deviceConnectionState == BluetoothConnectionState.connected) { - final List? privateKey = - await Storage.getStringList(saveBluePrivateKey); - final List getPrivateKeyList = - changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); IoSenderManage.senderGetStarLockStatuInfo( lockID: BlueManage().connectDeviceName, @@ -206,8 +191,7 @@ class LockTimeLogic extends BaseGetXController { isBeforeAddUser: false, privateKey: getPrivateKeyList, ); - } else if (deviceConnectionState == - BluetoothConnectionState.disconnected) { + } else if (deviceConnectionState == BluetoothConnectionState.disconnected) { dismissEasyLoading(); cancelBlueConnetctToastTimer(); // if (state.ifCurrentScreen.value == true) { @@ -219,8 +203,7 @@ class LockTimeLogic extends BaseGetXController { // 从网关获取时间 Future getLockTimeFromGateway() async { - final GetServerDatetimeEntity entity = - await ApiRepository.to.getLockTimeFromGateway( + final GetServerDatetimeEntity entity = await ApiRepository.to.getLockTimeFromGateway( lockId: state.lockSetInfoData.value.lockId.toString(), ); if (entity.errorCode!.codeIsSuccessful) {} @@ -228,10 +211,10 @@ class LockTimeLogic extends BaseGetXController { // 从服务器获取锁的时间 开锁时传入 Future getServerDatetime(bool isSendTime) async { - final GetServerDatetimeEntity entity = - await ApiRepository.to.getServerDatetimeData(isUnShowLoading: false); + final GetServerDatetimeEntity entity = await ApiRepository.to.getServerDatetimeData(isUnShowLoading: false); if (entity.errorCode!.codeIsSuccessful) { state.serverTime = entity.data!.date! ~/ 1000; + AppLog.log('msg:${state.serverTime}'); // AppLog.log("entity.data!.date! ~/ 1000:${entity.data!.date! ~/ 1000} DateTime.now().millisecondsSinceEpoch ~/ 1000:${DateTime.now().millisecondsSinceEpoch ~/ 1000} 服务器时间差:${state.differentialTime}"); if (isSendTime == false) { getStarLockStatus(); diff --git a/lib/main/lockDetail/lockSet/speechLanguageSettings/speech_language_settings_logic.dart b/lib/main/lockDetail/lockSet/speechLanguageSettings/speech_language_settings_logic.dart index f76a2fff..35372724 100644 --- a/lib/main/lockDetail/lockSet/speechLanguageSettings/speech_language_settings_logic.dart +++ b/lib/main/lockDetail/lockSet/speechLanguageSettings/speech_language_settings_logic.dart @@ -257,7 +257,7 @@ class SpeechLanguageSettingsLogic extends BaseGetXController { } break; default: - showToast('获取设备型号失败'.tr); + // showToast('获取设备型号失败'.tr); break; } } diff --git a/lib/main/lockDetail/lockSet/uploadData/uploadData_logic.dart b/lib/main/lockDetail/lockSet/uploadData/uploadData_logic.dart index 826547cf..4e730f60 100644 --- a/lib/main/lockDetail/lockSet/uploadData/uploadData_logic.dart +++ b/lib/main/lockDetail/lockSet/uploadData/uploadData_logic.dart @@ -79,7 +79,7 @@ class UploadDataLogic extends BaseGetXController { final int dataLength = reply.data[8]; state.uploadPasswordDataList.addAll(reply.data.sublist(9, reply.data.length)); - if (dataLength == 10) { + if (dataLength == 10 || dataLength == 9) { // 当数据是10的时候继续请求 state.uploadPasswordPage = state.uploadPasswordPage + 1; @@ -128,7 +128,7 @@ class UploadDataLogic extends BaseGetXController { final int dataLength = reply.data[8]; state.uploadCardDataList.addAll(reply.data.sublist(9, reply.data.length)); - if (dataLength == 10) { + if (dataLength == 10 || dataLength == 9) { // 当数据是10的时候继续请求 state.uploadCardPage = state.uploadCardPage + 1; @@ -175,7 +175,7 @@ class UploadDataLogic extends BaseGetXController { final int dataLength = reply.data[8]; state.uploadFingerprintDataList.addAll(reply.data.sublist(9, reply.data.length)); - if (dataLength == 10) { + if (dataLength == 10 || dataLength == 9) { // 当数据是10的时候继续请求 state.uploadFingerprintPage = state.uploadFingerprintPage + 1; @@ -222,7 +222,7 @@ class UploadDataLogic extends BaseGetXController { final int dataLength = reply.data[8]; state.uploadFaceDataList.addAll(reply.data.sublist(9, reply.data.length)); - if (dataLength == 10) { + if (dataLength == 10 || dataLength == 9) { // 当数据是10的时候继续请求 state.uploadFacePage = state.uploadFacePage + 1; @@ -269,7 +269,7 @@ class UploadDataLogic extends BaseGetXController { final int dataLength = reply.data[8]; state.uploadPalmVeinDataList.addAll(reply.data.sublist(9, reply.data.length)); - if (dataLength == 10) { + if (dataLength == 10 || dataLength == 9) { // 当数据是10的时候继续请求 state.uploadPalmVeinPage = state.uploadPalmVeinPage + 1; @@ -316,7 +316,7 @@ class UploadDataLogic extends BaseGetXController { final int dataLength = reply.data[8]; state.uploadRemoteControlDataList.addAll(reply.data.sublist(9, reply.data.length)); - if (dataLength == 10) { + if (dataLength == 10 || dataLength == 9) { // 当数据是10的时候继续请求 state.uploadRemoteControlPage = state.uploadRemoteControlPage + 1; diff --git a/lib/mine/gateway/addGateway/gatewayConfigurationWifi/gatewayConfigurationWifi_logic.dart b/lib/mine/gateway/addGateway/gatewayConfigurationWifi/gatewayConfigurationWifi_logic.dart index 6cd60292..bf3a61e9 100644 --- a/lib/mine/gateway/addGateway/gatewayConfigurationWifi/gatewayConfigurationWifi_logic.dart +++ b/lib/mine/gateway/addGateway/gatewayConfigurationWifi/gatewayConfigurationWifi_logic.dart @@ -43,10 +43,26 @@ class GatewayConfigurationWifiLogic extends BaseGetXController { Future getGatewayConfiguration() async { final GetGatewayConfigurationEntity entity = - await ApiRepository.to.getGatewayConfiguration(timeout: 60); + await ApiRepository.to.getGatewayConfiguration(timeout: 60); if (entity.errorCode!.codeIsSuccessful) { - state.getGatewayConfigurationStr = entity.data ?? ''; - // AppLog.log('state.getGatewayConfigurationStr:${state.getGatewayConfigurationStr}'); + String configStr = entity.data ?? ''; + + // 解析并添加时区偏移量 + if (configStr.isNotEmpty) { + try { + Map config = jsonDecode(configStr); + config['timeZoneOffset'] = DateTime.now().timeZoneOffset.inSeconds; + state.getGatewayConfigurationStr = jsonEncode(config); + } catch (e) { + AppLog.log('处理网关配置时区信息失败: $e'); + // 如果解析失败,仍然使用原始配置 + state.getGatewayConfigurationStr = configStr; + } + } else { + state.getGatewayConfigurationStr = configStr; + } + + AppLog.log('state.getGatewayConfigurationStr:${state.getGatewayConfigurationStr}'); } } diff --git a/lib/talk/starChart/views/guide/permission_guidance_page.dart b/lib/talk/starChart/views/guide/permission_guidance_page.dart index 08850eab..0e805a42 100644 --- a/lib/talk/starChart/views/guide/permission_guidance_page.dart +++ b/lib/talk/starChart/views/guide/permission_guidance_page.dart @@ -18,7 +18,7 @@ class _PermissionGuidancePageState extends State { final List> _stepsData = [ { - 'image': 'images/guide/1.png', + 'image': 'images/guide/matter.png', 'text': '步骤1:打开应用信息,点击通知管理选项', }, { @@ -26,7 +26,7 @@ class _PermissionGuidancePageState extends State { 'text': '步骤2:下滑点击呼叫提醒的通知选项', }, { - 'image': 'images/guide/3.png', + 'image': 'images/guide/tuya.png', 'text': '步骤3:选择在锁定屏幕上的选项设置', }, {