From bac0baf53ca9684b3f2c4d9602a35a1f56b55452 Mon Sep 17 00:00:00 2001 From: mohamedkaif356 Date: Wed, 9 Aug 2023 11:07:58 +0530 Subject: [PATCH] Made some corrections --- .../presentation/hemocube/HemoCubeFragment.kt | 38 ++++++++++++++++--- .../hemocube/HemoCubeViewModel.kt | 1 + .../layout/fragment_hemo_cube_reference.xml | 28 +++++++------- 3 files changed, 49 insertions(+), 18 deletions(-) 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 03f6ad5..20bdc85 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 @@ -33,6 +33,7 @@ class HemoCubeFragment : Fragment() { private var currentDeviceData: DeviceData? = null private var resultData: String = "" private var isUsingExistingBuffer = false + private var isTestOngoing = false override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle? @@ -60,12 +61,33 @@ class HemoCubeFragment : Fragment() { binding.btnSubmit.isEnabled = false binding.btnSubmit.isClickable = false - binding.btnBuffer.setOnClickListener { startBufferProcess() } +// binding.btnBuffer.setOnClickListener { startBufferProcess() } binding.btnKit.setOnClickListener { - resetKitCount() - val intent = Intent(context, KitScanActivity::class.java) - startActivity(intent) + if (isTestOngoing) { + val title = "WARNING" + val message = "There is a on going test, do you want to stop it" + val negativeText = getString(R.string.no) + val positiveText = "Yes" + + UIUtils.createAlertDialog(requireContext(), + title, + message, + negativeText, + positiveText, + object : MyDialogListener { + override fun onClickNegativeButton() { + + } + + override fun onClickPositiveButton() { + resetKitCount() + val intent = Intent(context, KitScanActivity::class.java) + startActivity(intent) + (activity as HemocubeActivity).finish() + } + }) + } } } @@ -96,6 +118,10 @@ class HemoCubeFragment : Fragment() { isOnline = isNetworkAvailable } } + + hemoCubeViewModel.messages.observe(viewLifecycleOwner) { + binding.tvSubtitle4.text = it + } } private fun checkAndStartProcess() { @@ -170,7 +196,8 @@ class HemoCubeFragment : Fragment() { private fun handleUsbData(stringData: String, fullReadOutput: StringBuilder) { if (stringData.contains("#")) { - binding.tvSubtitle4.text = stringData + hemoCubeViewModel.messages.postValue(stringData) + isTestOngoing = true } resultData += fullReadOutput.toString() @@ -378,6 +405,7 @@ class HemoCubeFragment : Fragment() { private fun resetKitCount() { with(sharedPreferences.edit()) { + putString(Constants.KIT_NUMBER, "") putInt(Constants.KIT_COUNT, 0) apply() } diff --git a/app/src/main/java/com/example/hpostesting/presentation/hemocube/HemoCubeViewModel.kt b/app/src/main/java/com/example/hpostesting/presentation/hemocube/HemoCubeViewModel.kt index b984440..a7bf5db 100644 --- a/app/src/main/java/com/example/hpostesting/presentation/hemocube/HemoCubeViewModel.kt +++ b/app/src/main/java/com/example/hpostesting/presentation/hemocube/HemoCubeViewModel.kt @@ -31,6 +31,7 @@ class HemoCubeViewModel @Inject constructor( var isServiceConnected = false val progressBar = MutableLiveData(false) private val testDetails = DataHolder.selectedTest?.toHemoCubeTestData() + val messages = MutableLiveData() private val sharedPreference: SharedPreferences = context.getSharedPreferences("PREFERENCE_NAME", Context.MODE_PRIVATE) // Get the device ID of the device you want to retrieve data for (e.g., the first device in the list) diff --git a/app/src/main/res/layout/fragment_hemo_cube_reference.xml b/app/src/main/res/layout/fragment_hemo_cube_reference.xml index 4d91f35..2cd2a28 100644 --- a/app/src/main/res/layout/fragment_hemo_cube_reference.xml +++ b/app/src/main/res/layout/fragment_hemo_cube_reference.xml @@ -60,7 +60,7 @@