diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 14ded17c..6bd4a731 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -18,6 +18,9 @@ 7606E6682B68D823004B0F1D /* VTProLib.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7606E6672B68D823004B0F1D /* VTProLib.xcframework */; }; 762D738E274E42650063CE73 /* ring_30Sec.caf in Resources */ = {isa = PBXBuildFile; fileRef = 762D738C274E42650063CE73 /* ring_30Sec.caf */; }; 762D738F274E42650063CE73 /* ring_30Sec.mp3 in Resources */ = {isa = PBXBuildFile; fileRef = 762D738D274E42650063CE73 /* ring_30Sec.mp3 */; }; + 7647AD572BFB4D4C006D6FBF /* CheckMeUsersListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7647AD562BFB4D4C006D6FBF /* CheckMeUsersListModel.swift */; }; + 7647AD592BFB7904006D6FBF /* CheckMeTemperatureModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7647AD582BFB7904006D6FBF /* CheckMeTemperatureModel.swift */; }; + 7647AD5B2BFC92B7006D6FBF /* CheckMeOxymeterModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7647AD5A2BFC92B7006D6FBF /* CheckMeOxymeterModel.swift */; }; 765948192B4E72A100D96E03 /* TupleToArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = 765948182B4E72A100D96E03 /* TupleToArray.swift */; }; 7659481B2B4E899200D96E03 /* VTECGParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7659481A2B4E899200D96E03 /* VTECGParser.swift */; }; 7659481E2B4EBEB600D96E03 /* VTBLEUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 7659481D2B4EBEB600D96E03 /* VTBLEUtils.m */; }; @@ -71,6 +74,9 @@ 7606E6672B68D823004B0F1D /* VTProLib.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = VTProLib.xcframework; path = Runner/BLE_SDKs/VTProLib.xcframework; sourceTree = ""; }; 762D738C274E42650063CE73 /* ring_30Sec.caf */ = {isa = PBXFileReference; lastKnownFileType = file; name = ring_30Sec.caf; path = ../../assets/sounds/ring_30Sec.caf; sourceTree = ""; }; 762D738D274E42650063CE73 /* ring_30Sec.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; name = ring_30Sec.mp3; path = ../../assets/sounds/ring_30Sec.mp3; sourceTree = ""; }; + 7647AD562BFB4D4C006D6FBF /* CheckMeUsersListModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CheckMeUsersListModel.swift; sourceTree = ""; }; + 7647AD582BFB7904006D6FBF /* CheckMeTemperatureModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CheckMeTemperatureModel.swift; sourceTree = ""; }; + 7647AD5A2BFC92B7006D6FBF /* CheckMeOxymeterModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CheckMeOxymeterModel.swift; sourceTree = ""; }; 765948182B4E72A100D96E03 /* TupleToArray.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TupleToArray.swift; sourceTree = ""; }; 7659481A2B4E899200D96E03 /* VTECGParser.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = VTECGParser.swift; sourceTree = ""; }; 7659481C2B4EBEB600D96E03 /* VTBLEUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VTBLEUtils.h; sourceTree = ""; }; @@ -202,6 +208,9 @@ 765948252B566F2000D96E03 /* BpRtDataResultModel.swift */, 765948272B56783900D96E03 /* BpRtDataMeasuringModel.swift */, 765948292B57FE5D00D96E03 /* BleDeviceModel.swift */, + 7647AD562BFB4D4C006D6FBF /* CheckMeUsersListModel.swift */, + 7647AD582BFB7904006D6FBF /* CheckMeTemperatureModel.swift */, + 7647AD5A2BFC92B7006D6FBF /* CheckMeOxymeterModel.swift */, ); path = Utils; sourceTree = ""; @@ -474,9 +483,12 @@ 306FE6C8271D790C002D6EFC /* OpenTokPlatformBridge.swift in Sources */, E923EFD225863FDF00E3E751 /* GeoZoneModel.swift in Sources */, E91B539A256AAA6500E96549 /* MainFlutterVC.swift in Sources */, + 7647AD5B2BFC92B7006D6FBF /* CheckMeOxymeterModel.swift in Sources */, E91B539C256AAA6500E96549 /* HMG_GUEST_bkp.swift in Sources */, E91B5396256AAA6500E96549 /* GlobalHelper.swift in Sources */, 765948282B56783900D96E03 /* BpRtDataMeasuringModel.swift in Sources */, + 7647AD572BFB4D4C006D6FBF /* CheckMeUsersListModel.swift in Sources */, + 7647AD592BFB7904006D6FBF /* CheckMeTemperatureModel.swift in Sources */, 7659481E2B4EBEB600D96E03 /* VTBLEUtils.m in Sources */, E923EFD4258645C100E3E751 /* HMG_Geofence.swift in Sources */, E923EFD62587443800E3E751 /* HMGPlatformBridge.swift in Sources */, diff --git a/lib/pages/medical/my_trackers/ble_device_type_screens/checkme_all_in_one_info_screen.dart b/lib/pages/medical/my_trackers/ble_device_type_screens/checkme_all_in_one_info_screen.dart index e4a32d58..53b220d0 100644 --- a/lib/pages/medical/my_trackers/ble_device_type_screens/checkme_all_in_one_info_screen.dart +++ b/lib/pages/medical/my_trackers/ble_device_type_screens/checkme_all_in_one_info_screen.dart @@ -289,12 +289,14 @@ class CheckMeAllInOneInfoScreen extends StatelessWidget { isShowDecPage: false, showNewAppBarTitle: true, backgroundColor: Color(0xffF8F8F8), - body: Padding( - padding: const EdgeInsets.all(24.0), - child: Consumer( - builder: (BuildContext context, MyTrackersViewModel myTrackersVm, Widget child) { - return getAllInOneOperationWidgets(myTrackersVm, allInOneTrackerTypeEnum, context); - }, + body: SingleChildScrollView( + child: Padding( + padding: const EdgeInsets.all(24.0), + child: Consumer( + builder: (BuildContext context, MyTrackersViewModel myTrackersVm, Widget child) { + return getAllInOneOperationWidgets(myTrackersVm, allInOneTrackerTypeEnum, context); + }, + ), ), ), ); diff --git a/lib/pages/medical/my_trackers/ble_models/checkmepro_all_in_one_models/checkme_oxi_model.dart b/lib/pages/medical/my_trackers/ble_models/checkmepro_all_in_one_models/checkme_oxi_model.dart index 00a83c82..5167e7ae 100644 --- a/lib/pages/medical/my_trackers/ble_models/checkmepro_all_in_one_models/checkme_oxi_model.dart +++ b/lib/pages/medical/my_trackers/ble_models/checkmepro_all_in_one_models/checkme_oxi_model.dart @@ -2,7 +2,7 @@ class CheckMeOxiModel { String date; int face; int oxy; - int pi; + num pi; int pr; String timeString; int way; diff --git a/lib/pages/medical/my_trackers/my_trackers_view_model/my_trackers_view_model.dart b/lib/pages/medical/my_trackers/my_trackers_view_model/my_trackers_view_model.dart index 29908955..ce4d2c5b 100644 --- a/lib/pages/medical/my_trackers/my_trackers_view_model/my_trackers_view_model.dart +++ b/lib/pages/medical/my_trackers/my_trackers_view_model/my_trackers_view_model.dart @@ -1,6 +1,7 @@ import 'dart:async'; import 'dart:convert'; import 'dart:developer'; +import 'dart:io'; import 'package:diplomaticquarterapp/config/size_config.dart'; import 'package:diplomaticquarterapp/pages/medical/my_trackers/ble_device_type_screens/checkme_all_in_one_info_screen.dart'; import 'package:diplomaticquarterapp/pages/medical/my_trackers/ble_models/andesfit_devices/weight_data_model.dart'; @@ -1144,11 +1145,19 @@ class MyTrackersViewModel extends ChangeNotifier { print('Received event---: $event'); print(event['type']); if (event['type'] == kDevicesListCheckMe) { - List list = [json.decode(event['data'])]; - parsesDevicesList(list); + if (Platform.isAndroid) { + List list = [json.decode(event['data'])]; + parsesDevicesList(list); + } else { + parsesDevicesList(json.decode(event['data'])); + } } if (event['type'] == kCheckMeUsersList) { - updateCheckMeUserInfoModel(event['data']); + if (Platform.isIOS) { + updateCheckMeUserInfoModel(json.decode(event['data'])); + } else { + updateCheckMeUserInfoModel(event['data']); + } } if (event['type'] == kTemperatureCheckMePro) { updateCheckMeTemperatureInfoModel(json.decode(event['data'])); @@ -1179,7 +1188,11 @@ class MyTrackersViewModel extends ChangeNotifier { if (checkMeProUsersList != null) { checkMeProUsersList.clear(); } - checkMeProUsersList = List.generate(returnData.length, (index) => CheckMeUserInfoModel.fromJson(jsonDecode(returnData[index]))); + if (Platform.isIOS) { + checkMeProUsersList = List.generate(returnData.length, (index) => CheckMeUserInfoModel.fromJson(returnData[index])); + } else { + checkMeProUsersList = List.generate(returnData.length, (index) => CheckMeUserInfoModel.fromJson(jsonDecode(returnData[index]))); + } notifyListeners(); }