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 3cfdc04..0d8613e 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 @@ -1,8 +1,6 @@ package com.example.hpostesting.data.constant object Constants { - const val PQ_MODE = true - const val ACTION_USB_PERMISSION = "shanmukha.in.sickle_cell.USB_PERMISSION" const val HOMOCUBE_USB_PERMISSION = "shanmukha.in.sickle_cell_homocube.USB_PERMISSION" @@ -10,6 +8,7 @@ object Constants { const val ABHA_APP_PACKAGE = "in.ndhm.phr" + const val MOLBIO_INTERGATION = false const val deviceProvisionEmail = "HPOS_provisioner@bigtec.co.in" const val deviceProvisionPassword = "f2ab0e7f9d69" const val DEVICE_ID_API = "deviceIDAPI" @@ -191,7 +190,7 @@ object Constants { ) val DEVICE_HB_PARAMETERS: Map>> = mapOf>>( - "HPP1-0124-0001" to listOf( + "HCV-000-3001" to listOf( listOf(1.0, 0.0), // LED1, 435nm listOf(1.0, 0.0), // LED2, 415nm listOf(42.241, -24.105), // LED3, 555nm @@ -676,7 +675,9 @@ object Constants { const val INCUBATION_TIME_MIN = 0 const val INCUBATION_TIME_MAX = 1400 const val BATTERY_LEVEL_MIN = Int.MIN_VALUE - const val READINGS_PER_SAMPLE = 3 + + const val PQ_MODE = true + const val READINGS_PER_SAMPLE = 2 const val MINIMUM_BATTERY_LEVEL = 0 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 ed29f8e..677dc27 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 @@ -87,6 +87,7 @@ class HemoCubeFragment : Fragment() { binding.btnSubmit.setOnClickListener { activity?.runOnUiThread { binding.progressBar.visibility = View.VISIBLE + binding.btnSubmit.visibility = View.GONE } hemoCubeViewModel.uploadHemoCubeResultToDatabase( isOnline, true, sharedPreferences.getString(Constants.KIT_NUMBER, "") @@ -143,20 +144,17 @@ class HemoCubeFragment : Fragment() { hemoCubeViewModel.resultUpload.observe(viewLifecycleOwner) { when (it) { is Result.Success -> { - it.data.data?.get(0)?.rawData?.let { it1 -> - hemoCubeViewModel.updateMolbioFlag( - it1._id) - activity?.runOnUiThread { - binding.btnSubmit.visibility = View.GONE - val i = Intent( - requireContext().applicationContext, - DashboardActivity::class.java + if (Constants.MOLBIO_INTERGATION) { + it.data.data?.get(0)?.rawData?.let { it1 -> + hemoCubeViewModel.updateMolbioFlag( + it1._id ) - startActivity(i) } } + handleReadingFinish() } is Result.Error -> { + binding.btnSubmit.visibility = View.VISIBLE //Remove this line of code while deploying to IOCL it.exception.let { message -> Toast.makeText(activity, "An error occurred: $message", Toast.LENGTH_LONG) @@ -446,8 +444,8 @@ class HemoCubeFragment : Fragment() { hemoCubeViewModel.messages.postValue("7.6X Gain Started") } - currentResultData.contains("#SC5") && this.testStatusCode < TestStatus.CONFIG_COMPLETED.code -> { - this.testStatusCode = TestStatus.CONFIG_COMPLETED.code + currentResultData.contains("#SC5") && this.testStatusCode < TestStatus.FORTH_GAIN_COMPLETED.code -> { + this.testStatusCode = TestStatus.FORTH_GAIN_COMPLETED.code hemoCubeViewModel.messages.postValue("7.6X Gain Completed") fetchResult() } @@ -506,25 +504,29 @@ class HemoCubeFragment : Fragment() { led4Gain4 = resultLines[8].split(' ')[1].split('\r')[0].trim().toDoubleOrNull()!! } - repeatReadingCount += 1 - - if (readingsPerSample == 1) { - activity?.runOnUiThread { - binding.btnSubmit.visibility = View.VISIBLE - binding.btnSubmit.isEnabled = true - binding.btnSubmit.isClickable = true -// binding.clParent.setBackgroundColor(Color.parseColor("#edfffd")) - binding.ivCheck.visibility = View.VISIBLE - } - } else { - hemoCubeViewModel.uploadHemoCubeResultToDatabase( - isOnline, true, sharedPreferences.getString(Constants.KIT_NUMBER, "") - ) - } + finishReading() } } } + fun finishReading() { + repeatReadingCount += 1 + + if (readingsPerSample == 1) { + activity?.runOnUiThread { + binding.btnSubmit.visibility = View.VISIBLE + binding.btnSubmit.isEnabled = true + binding.btnSubmit.isClickable = true +// binding.clParent.setBackgroundColor(Color.parseColor("#edfffd")) + binding.ivCheck.visibility = View.VISIBLE + } + } else { + hemoCubeViewModel.uploadHemoCubeResultToDatabase( + isOnline, true, sharedPreferences.getString(Constants.KIT_NUMBER, "") + ) + } + } + fun handleSampleCompleted() { this.testStatusCode = TestStatus.SAMPLE_PRINT_COMPLETED.code @@ -564,7 +566,11 @@ class HemoCubeFragment : Fragment() { led4SampleForDevice = resultLines[8].split(' ')[1].split('\r')[0].trim().toDoubleOrNull()!! processResult() - sendFirstGainCommand() + if (Constants.PQ_MODE) { + finishReading() + } else { + sendFirstGainCommand() + } currentResultData = "" }