From 82360b22c88c0451043f988eae44287bddcbe294 Mon Sep 17 00:00:00 2001 From: Pritimay Sarkar Date: Fri, 15 Dec 2023 14:37:41 +0530 Subject: [PATCH] handle-msg-fragmentation --- .idea/gradle.xml | 3 +-- app/build.gradle | 4 ++-- .../hpostesting/data/constant/Constants.kt | 3 ++- .../example/hpostesting/data/dao/MyDataBase.kt | 2 +- .../hpostesting/presentation/MainActivity.kt | 9 +++++++++ .../presentation/adapter/UserListAdapter.kt | 2 +- .../presentation/hemocube/HemoCubeFragment.kt | 16 +++++----------- 7 files changed, 21 insertions(+), 18 deletions(-) diff --git a/.idea/gradle.xml b/.idea/gradle.xml index ae388c2..cb865f6 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -4,8 +4,6 @@ diff --git a/app/build.gradle b/app/build.gradle index 89ca91f..1943d1d 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -19,8 +19,8 @@ android { applicationId "in.sminnovations.hpostesting" minSdk 21 targetSdk 34 - versionCode 52 - versionName "2.1.52" + versionCode 56 + versionName "2.1.56" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } diff --git a/app/src/main/java/com/example/hpostesting/data/constant/Constants.kt b/app/src/main/java/com/example/hpostesting/data/constant/Constants.kt index b8d8eac..a700d6c 100644 --- a/app/src/main/java/com/example/hpostesting/data/constant/Constants.kt +++ b/app/src/main/java/com/example/hpostesting/data/constant/Constants.kt @@ -29,7 +29,7 @@ object Constants { const val DEVICE_VENDOR_ID = 1027 const val HOMO_CUBE_ID = 29987 const val VENDOR_ID = 6790 - const val HEMO_CUBE_V2_ID = 24577 + const val HEMO_CUBE_V2_PRODUCT_ID = 24577 const val HEMO_CUBE_V2_VENDOR_ID = 1027 const val ERROR_NORMAL = 400 @@ -109,6 +109,7 @@ object Constants { const val INCUBATION_TIME_MIN = 0 const val INCUBATION_TIME_MAX = 1400 + const val BATTERY_LEVEL_MIN = 0 val BUFFER_INTENSITY_THRESHOLDS: Map>> = mapOf>>( "HCV-000-3001" to listOf( diff --git a/app/src/main/java/com/example/hpostesting/data/dao/MyDataBase.kt b/app/src/main/java/com/example/hpostesting/data/dao/MyDataBase.kt index a7832c9..49115b7 100644 --- a/app/src/main/java/com/example/hpostesting/data/dao/MyDataBase.kt +++ b/app/src/main/java/com/example/hpostesting/data/dao/MyDataBase.kt @@ -11,7 +11,7 @@ import com.example.hpostesting.data.model.patient.HemoCubeTestData import com.google.android.datatransport.runtime.dagger.Provides import javax.inject.Singleton -@Database(entities = [UserData::class, HemoCubeTestData::class, DeviceData::class], version = 12, exportSchema = false) +@Database(entities = [UserData::class, HemoCubeTestData::class, DeviceData::class], version = 13, exportSchema = false) @TypeConverters(Converters::class) abstract class MyDatabase : RoomDatabase() { abstract fun userDao(): UserDao diff --git a/app/src/main/java/com/example/hpostesting/presentation/MainActivity.kt b/app/src/main/java/com/example/hpostesting/presentation/MainActivity.kt index 85d5052..91763ae 100644 --- a/app/src/main/java/com/example/hpostesting/presentation/MainActivity.kt +++ b/app/src/main/java/com/example/hpostesting/presentation/MainActivity.kt @@ -114,6 +114,15 @@ class MainActivity : AppCompatActivity() { Constants.DEVICE_TYPE_HOMOCUBE } + device.productId == Constants.HEMO_CUBE_V2_PRODUCT_ID && device.vendorId == Constants.HEMO_CUBE_V2_VENDOR_ID -> { + binding.cvItem1.visibility = View.VISIBLE + binding.cvItem3.visibility = View.VISIBLE + binding.cvItem2.visibility = View.GONE + binding.cvItem4.visibility = View.GONE + DataHolder.deviceType.postValue(Constants.DEVICE_TYPE_HOMOCUBE) + Constants.DEVICE_TYPE_HOMOCUBE + } + device.productId == Constants.DEVICE_PRODUCT_ID && device.vendorId == Constants.DEVICE_VENDOR_ID -> { Log.d( TAG, diff --git a/app/src/main/java/com/example/hpostesting/presentation/adapter/UserListAdapter.kt b/app/src/main/java/com/example/hpostesting/presentation/adapter/UserListAdapter.kt index 694f154..b3b9338 100644 --- a/app/src/main/java/com/example/hpostesting/presentation/adapter/UserListAdapter.kt +++ b/app/src/main/java/com/example/hpostesting/presentation/adapter/UserListAdapter.kt @@ -197,7 +197,7 @@ class UserListAdapter( // } } userCard.setOnClickListener { - if (batLevel < Constants.MINIMUM_BATTERY_LEVEL) { + if (batLevel < Constants.BATTERY_LEVEL_MIN) { Toast.makeText( view.context, context?.getString(R.string.low_battery_warning), diff --git a/app/src/main/java/com/example/hpostesting/presentation/hemocube/HemoCubeFragment.kt b/app/src/main/java/com/example/hpostesting/presentation/hemocube/HemoCubeFragment.kt index c4c8902..7d66889 100644 --- a/app/src/main/java/com/example/hpostesting/presentation/hemocube/HemoCubeFragment.kt +++ b/app/src/main/java/com/example/hpostesting/presentation/hemocube/HemoCubeFragment.kt @@ -292,18 +292,12 @@ class HemoCubeFragment : Fragment() { resultData += stringData when { - stringData.contains("SNS") -> { - val slData = stringData.split(" ") - if (slData.size > 1 && slData[1].trim().length == 12) { - val hardwareId = slData[1].trim() - deviceHardwareId = hardwareId - } - } + resultData.contains("SNE") -> { + val pattern = Regex("HCV-\\d{3}-\\d{4}") + val matchResult = pattern.find(resultData) + val hardwareId = matchResult?.value - stringData.contains("SNE") -> { - val slData = stringData.split(" ") - if (slData.size > 1) { - val hardwareId = slData[0].trim() + if (hardwareId.toString().length == 12) { deviceHardwareId += hardwareId with(sharedPreferences.edit()) { putString(Constants.DEVICE_ID, deviceHardwareId)