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 3b2296e..eeca24e 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 @@ -1565,32 +1565,34 @@ object Constants { ) ) //Hemocube for 10mm - const val positiveBoderLine10mm1 = 1.15 + const val positiveBoderLine10mm1 = 1.3 const val positiveBoderLine10mm2 = 1.66 - const val negativeBoderLine10mm = 2.4 - const val normalMin10mm = 0.11 + const val negativeBoderLine10mm1 = 2.0 + const val negativeBoderLine10mm2 = 2.4 + const val normalMin10mm = 0.1 const val normalMax10mm = 0.23 const val negativeBorderlineMin10mm = 0.23 const val negativeBorderlineMax10mm = 0.25 const val sickleCellTraitMin10mm = 0.25 const val sickleCellTraitMax10mm = 0.31 const val positiveForSickleCellMin10mm = 0.31 - const val positiveForSickleCellMax10mm = 0.39 - const val sickleCellDiseaseMin10mm = 0.39 + const val positiveForSickleCellMax10mm = 0.43 + const val sickleCellDiseaseMin10mm = 0.43 const val sickleCellDiseaseMax10mm = 1.0 //Hemocube for 2mm - const val positiveBoderLine2mm1 = 1.15 - const val positiveBoderLine2mm2 = 1.66 - const val negativeBoderLine2mm = 2.4 - const val normalMin2mm = 0.11 + const val positiveBoderLine2mm1 = 0.8 + const val positiveBoderLine2mm2 = 1.1 + const val negativeBoderLine2mm1 = 1.5 + const val negativeBoderLine2mm2 = 1.9 + const val normalMin2mm = 0.1 const val normalMax2mm = 0.23 const val negativeBorderlineMin2mm = 0.23 const val negativeBorderlineMax2mm = 0.25 const val sickleCellTraitMin2mm = 0.25 const val sickleCellTraitMax2mm = 0.31 const val positiveForSickleCellMin2mm = 0.31 - const val positiveForSickleCellMax2mm = 0.39 - const val sickleCellDiseaseMin2mm = 0.39 + const val positiveForSickleCellMax2mm = 0.45 + const val sickleCellDiseaseMin2mm = 0.45 const val sickleCellDiseaseMax2mm = 1.0 diff --git a/app/src/main/java/com/example/hpostesting/presentation/KitScanActivity.kt b/app/src/main/java/com/example/hpostesting/presentation/KitScanActivity.kt index e48983d..5603a0a 100644 --- a/app/src/main/java/com/example/hpostesting/presentation/KitScanActivity.kt +++ b/app/src/main/java/com/example/hpostesting/presentation/KitScanActivity.kt @@ -192,6 +192,19 @@ class KitScanActivity : AppCompatActivity(), IDcsSdkApiDelegate { binding.btnGo.setOnClickListener { val serialNumber = binding.nameEditText.text.toString().trim() if (serialNumber.isNotEmpty() && isSerialValid(serialNumber)) { + if(serialNumber.contains("SMI/SC/")){ + with(sharedPreference.edit()) { + putString(Constants.CUVETTE_SIZE, "2mm") + apply() + } + Toast.makeText(this, "Selected cuvette size: 2mm", Toast.LENGTH_SHORT).show() + }else if(serialNumber.contains("SC-2-D10/")){ + with(sharedPreference.edit()) { + putString(Constants.CUVETTE_SIZE, "10mm") + apply() + } + Toast.makeText(this, "Selected cuvette size: 10mm", Toast.LENGTH_SHORT).show() + } if (DataHolder.selectedTest == null) { with(sharedPreference.edit()) { putString( 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 6a200b5..334d777 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 @@ -41,7 +41,6 @@ import java.util.Date import java.util.Locale class UserListAdapter( - private val context: Context, private val hemoCubeViewModel: HemoCubeViewModel, options: FirestoreRecyclerOptions, diff --git a/app/src/main/java/com/example/hpostesting/presentation/autodac/AutoDacFragment.kt b/app/src/main/java/com/example/hpostesting/presentation/autodac/AutoDacFragment.kt index f1280b2..4ee7fa1 100644 --- a/app/src/main/java/com/example/hpostesting/presentation/autodac/AutoDacFragment.kt +++ b/app/src/main/java/com/example/hpostesting/presentation/autodac/AutoDacFragment.kt @@ -68,7 +68,7 @@ class AutoDacFragment : Fragment() { getDeviceId() binding.tvSubtitle4.movementMethod = ScrollingMovementMethod() binding.btnSubmit.setOnClickListener { - resultData += "Calibrating the device..." + resultData += "Calibrating the device...\n" autoDacViewModel.messages.postValue(resultData) testStatusCode = 0.5 binding.btnSubmit.visibility = View.GONE @@ -259,7 +259,25 @@ class AutoDacFragment : Fragment() { } if (resultData.contains("#DC") && testStatusCode < 1.2) { testStatusCode = 1.3 - runCCommand() + if(validateDacValues()){ + if (sharedPreferences.getString(Constants.USER_ID, "").toString() == "ADMIN") { + resultData += "Calibrating the device, Please wait...\n" + }else{ + resultData = "Calibrating the device, Please wait...\n" + } + autoDacViewModel.messages.postValue(resultData) + runCCommand() + }else{ + activity?.runOnUiThread { + if (sharedPreferences.getString(Constants.USER_ID, "").toString() == "ADMIN") { + resultData += "Calibration failed!\nContact us for help at support@sminnovations.in" + }else{ + resultData = "Calibration failed!\nContact us for help at support@sminnovations.in" + } + autoDacViewModel.messages.postValue(resultData) + binding.btnReadDac.visibility = View.GONE + } + } } if (resultData.contains("#GC") && testStatusCode < 1.6) { testStatusCode = 1.7 @@ -267,11 +285,11 @@ class AutoDacFragment : Fragment() { } if (resultData.contains("#EC") && testStatusCode < 1.8) { testStatusCode = 1.9 - if(resultData.contains("#CC")){ - val result = extractSubstring(resultData) - resultData = "Data:\n$result" + if (sharedPreferences.getString(Constants.USER_ID, "").toString() == "ADMIN") { + resultData += "Calibration Completed\n" + }else{ + resultData = "Calibration Completed\n" } - resultData += "Calibration Completed\n" autoDacViewModel.messages.postValue(resultData) activity?.runOnUiThread { Toast.makeText(requireActivity(), "Calibration completed", Toast.LENGTH_LONG).show() @@ -284,16 +302,7 @@ class AutoDacFragment : Fragment() { } if (resultData.contains("#CC") && testStatusCode < 1.4) { testStatusCode = 1.5 - if(validateDacValues()){ - setAutoDacValuesCommand() - }else{ - activity?.runOnUiThread { - Toast.makeText(requireActivity(), "use fresh buffer with clean cuvette and restart", Toast.LENGTH_LONG).show() - binding.btnReadDac.visibility = View.GONE - } - } - - + setAutoDacValuesCommand() autoDacViewModel.addAutoDacDataToDb( DiagnosticsData( deviceId = sharedPreferences.getString(Constants.DEVICE_ID, "") @@ -338,7 +347,19 @@ class AutoDacFragment : Fragment() { return matchResult?.groups?.get(1)?.value?.trim() ?: "" } private fun validateDacValues(): Boolean { + val pattern = Regex("(LED:\\d+)__DAC:(\\d+)__ADC:(\\d+)") + val matches = pattern.findAll(resultData) + for (match in matches) { + val ledName = match.groupValues[1] + val xValue = match.groupValues[2].toDouble() + val yValue = match.groupValues[3].toDouble() + if(xValue == 3200.0){ + if(yValue < 500.0){ + return false + } + } + } return true } 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 c83abd4..e1f8aa6 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 @@ -136,10 +136,9 @@ class HemoCubeFragment : Fragment() { // binding.btnPlacebuffer.visibility = View.GONE val cuvetteSize = sharedPreferences.getString(Constants.CUVETTE_SIZE,"10mm") val cuvetteText = "Cuvette Size: $cuvetteSize" - binding.tvName.text = "Name: ${testDetails?.name}\n ID: ${testDetails?._id} \n\n $cuvetteText" + binding.tvName.text = "ID: ${testDetails?._id} \n\n $cuvetteText" binding.tvSubtitle4.text = "Config" - if (isBufferValueAvailable()){ binding.btnPlacebuffer.apply { setBackgroundColor(Color.GREEN) // Set button background color to green @@ -1150,34 +1149,40 @@ class HemoCubeFragment : Fragment() { if (deviceRatio != null && borderlineMetric != null) { if(cuvetteSize == "10mm"){ if (deviceRatioClass == "Negative Borderline") { - return if (borderlineMetric >= Constants.negativeBoderLine10mm) - "Borderline. Normal" - else - "Borderline. Sickle Cell Trait" + if (borderlineMetric < Constants.negativeBoderLine10mm1){//1.34 + return "Sickle Cell Trait" + }else if(borderlineMetric > Constants.negativeBoderLine10mm2){ + return "Normal" + }else if(borderlineMetric > Constants.negativeBoderLine10mm1 && borderlineMetric < Constants.negativeBoderLine10mm2){ + return "Negative borderline. Confirm with HPLC" + } } if (deviceRatioClass == "Positive for Sickle Cell. HPLC for Confirmation") { if (borderlineMetric < Constants.positiveBoderLine10mm1){//1.34 - return "Borderline. Sickle Cell Disease" + return "Sickle Cell Disease" }else if(borderlineMetric > Constants.positiveBoderLine10mm2){ - return "Borderline. Sickle Cell Trait" + return "Sickle Cell Trait" }else if(borderlineMetric > Constants.positiveBoderLine10mm1 && borderlineMetric < Constants.positiveBoderLine10mm2){ - return "Positive for Sickle Cell. HPLC for Confirmation" + return "Positive for Sickle Cell. Confirm with HPLC" } } }else if(cuvetteSize == "2mm"){ if (deviceRatioClass == "Negative Borderline") { - return if (borderlineMetric >= Constants.negativeBoderLine2mm) - "Borderline. Normal" - else - "Borderline. Sickle Cell Trait" + if (borderlineMetric < Constants.negativeBoderLine2mm1){//1.34 + return "Sickle Cell Trait" + }else if(borderlineMetric > Constants.negativeBoderLine2mm2){ + return "Normal" + }else if(borderlineMetric > Constants.negativeBoderLine2mm1 && borderlineMetric < Constants.negativeBoderLine2mm2){ + return "Negative borderline. Confirm with HPLC" + } } if (deviceRatioClass == "Positive for Sickle Cell. HPLC for Confirmation") { if (borderlineMetric < Constants.positiveBoderLine2mm1){//1.34 - return "Borderline. Sickle Cell Disease" + return "Sickle Cell Disease" }else if(borderlineMetric > Constants.positiveBoderLine2mm2){ - return "Borderline. Sickle Cell Trait" + return "Sickle Cell Trait" }else if(borderlineMetric > Constants.positiveBoderLine2mm1 && borderlineMetric < Constants.positiveBoderLine2mm2){ - return "Positive for Sickle Cell. HPLC for Confirmation" + return "Positive for Sickle Cell. Confirm with HPLC" } } } diff --git a/app/src/main/res/layout/fragment_auto_dac.xml b/app/src/main/res/layout/fragment_auto_dac.xml index 1fa3023..400ef27 100644 --- a/app/src/main/res/layout/fragment_auto_dac.xml +++ b/app/src/main/res/layout/fragment_auto_dac.xml @@ -68,7 +68,7 @@ android:scrollbars="vertical" android:text="Start" android:textColor="@color/black" - android:textSize="11sp" + android:textSize="14sp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/tv_subtitle3" /> diff --git a/app/src/main/res/values-kn/strings.xml b/app/src/main/res/values-kn/strings.xml index e8a7c36..051804e 100644 --- a/app/src/main/res/values-kn/strings.xml +++ b/app/src/main/res/values-kn/strings.xml @@ -93,7 +93,7 @@ ಹೆಸರು ಖಾಲಿ ಇರಬಾರದು ವಯಸ್ಸು ಖಾಲಿ ಇರಬಾರದು ಲಿಂಗ ಖಾಲಿ ಇರಬಾರದು - ವಯಸ್ಸು ಯಾವುದೇ ಸಾಧ್ಯವಿಲ್ಲ + ವಯಸ್ಸು ಅರ್ಹವಾಗಿಲ್ಲ ಹುಟ್ಟಿದ ವರ್ಷ ಖಾಲಿ ಇರಬಾರದು ಅಮಾನ್ಯ ಹುಟ್ಟಿದ ವರ್ಷ ಮೊಬೈಲ್ ಸಂಖ್ಯೆ ಖಾಲಿ ಇರಬಾರದು @@ -111,31 +111,31 @@ ಈಗ ಪ್ರಾರಂಭಿಸಿ ಹೆಮೋ ಕ್ಯೂಬ್ ಹೆಮೊಗ್ಲೊಬಿನ್ - ಸಾಮಾನ್ಯ - ಸಿಕ್ಲ್ ಸೆಲ್ ರೋಗ - ಸಿಕ್ಲ್ ಸೆಲ್ ಗುಣ - ಅವ್ಯಾಖ್ಯಾತ\ \ - ಸಿಕ್ಲ್‌ಸೆಲ್\nದೃಢೀಕರಣ + ನಾರ್ಮಲ್ + ಸಿಕಲ್ ಸೆಲ್ ಡಿಸೀಸ್ + ಸಿಕಲ್ ಸೆಲ್ ಟ್ರೈಟ್ + ನಿಕೃಷ್ಟವಾಗಿ ಹೇಳದಿರುವ\ \ + ಕುಡಗೋಲು ಕಣ ರಕ್ತಹೀನತೆ ದೃಢೀಕರಣ ಸಿಕ್ಲ್ ಸೆಲ್ ಸ್ಕ್ರೀನಿಂಗ್ ಥ್ಯಾಲಸೀಮಿಯಾ USB ಕನೆಕ್ಷನ್ - ಹೈ ಪರಫಾರ್ಮೆನ್ಸ್\nಆಪ್ಟಿಕಲ್ ಸ್ಪೆಕ್ಟ್ರೋಸ್ಕೊಪಿ - ಸಿಕ್ಲ್ ಸರ್ಟಿಫಿಕೇಟ್ - ಸಿಕ್ಲ್ ಹುಡುಕಿ + ಹೈ ಪರ್ಫಾರ್ಮೆನ್ಸ್ ಆಪ್ಟಿಕಲ್ ಸ್ಪೆಕ್ಟ್ರೋಸ್ಕೋಪಿ + ಸಿಕಲ್ ಸರ್ಟ್ + ಸಿಕಲ್ ಫೈಂಡ್ ಸಲ್ಲಿಸಿ - ಡೆವೈಸ್ ಟೆಸ್ಟ್ + ಡಯಗ್ನೊಸ್ಟಿಕ್ Auto DAC Quality Controls Calibration - Device Provision - ಪ್ರಾರಂಭಿಸಿ + ಡಿವೈಸ್ ಪೂರ್ವಸಿದ್ಧತೆ + ಬಫರ್ ಪ್ರಾರಂಭಿಸಿ ನಮೂನೆ ಪ್ರಾರಂಭಿಸಿ ಹೊಸ ಕಿಟ್ ಹೊಸ ಬಫರ್ ಅಮಾನ್ಯ ಅಕ್ಷರ, ಅನುಮತವಾದ ಅಕ್ಷರಗಳು ಅಕ್ಷರಗಳು, ಸಂಖ್ಯೆಗಳು ಮತ್ತು ( ) _ - , . ಮಾತ್ರ \*ಫಲಿತಾಂಶವನ್ನು ಪ್ರಯೋಗಶಾಲೆಯ ಪರೀಕ್ಷಾದಿಂದ ದೃಢೀಕರಿಸಬೇಕು \*ಫಲಿತಾಂಶವನ್ನು ಪ್ರಯೋಗಶಾಲೆಯ ಪರೀಕ್ಷಾದಿಂದ ದೃಢೀಕರಿಸಬೇಕು ಏಕೆಂದರೆ ರೋಗಿಯ ವಯಸ್ಸು 5 ವರ್ಷಗಳಿಗಿಂತ ಕಡಿಮೆ - ಧನಸ್ಪರ್ಶ + ಪಾಸಿಟಿವ್ ಬಾರ್ಡರ್‌ಲೈನ್ ನೆಗೆಟಿವ್ ಬಾರ್ಡರ್‌ಲೈನ್ ರೋಗಿ ಯಾವುದೇ ಔಷಧಿ ಅಥವಾ ಚಿಕಿತ್ಸೆಯಲ್ಲಿದ್ದಾನೆಯೇ? ರೋಗಿಗೆ ರಕ್ತ ಪ್ರವಾಹನೆ ನಡೆಯುತ್ತಿದೆಯೇ? @@ -182,128 +182,128 @@ ... ABHA ಐಡಿ ಕಾರ್ಡ್ ರಚಿಸಿ ಆಧಿಕಾರಿ ABHA ಆಪ್ - ರೋಗಿ ಆಧಾರ್ ಕಾರ್ಡ್ ಸ್ಕ್ಯಾನ್ ಮಾಡಿ + ವ್ಯಕ್ತಿಯ ಆಧಾರ್ ಕಾರ್ಡ್ ಸ್ಕ್ಯಾನ್ ಮಾಡಿ ಆಧಾರ್ ಸಂಖ್ಯೆಯನ್ನು ಕೈಯಿಂದ ನಮೂದಿಸಿ ಆಧಾರ್ ಸಂಖ್ಯೆ ಆಧಾರ್ ಸಂಖ್ಯೆ - ದಯವಿಟ್ಟು "ಆಧಿಕಾರಿ ABHA ಆಪ್" ಅನ್ನು ಬಳಸಿ ABHA ಐಡಿ ರಚಿಸಿ ಮತ್ತು ಹಿಂತಿರುಗಿ ಬನ್ನಿ. + ದಯವಿಟ್ಟು ಅಧಿಕೃತ ABHA ಆಪ್ ಅನ್ನು ಬಳಸಿ ABHA ಐಡಿ ರಚಿಸಿ ಮತ್ತೆ ಹಿಂತಿರುಗಿ ಬನ್ನಿ. ಮುಂದುವರಿಸಲು ದಯವಿಟ್ಟು ಆಧಾರ್ ಸಂಖ್ಯೆಯನ್ನು ನಮೂದಿಸಿ ಕಿಟ್‌ನ ಕ್ಯೂಆರ್ ಕೋಡ್ ಅನ್ನು ಸ್ಕ್ಯಾನ್ ಮಾಡಿ ಕಿಟ್ ಸೀರಿಯಲ್ ಸಂಖ್ಯೆಯನ್ನು ಕೈಯಿಂದ ನಮೂದಿಸಿ ಸೀರಿಯಲ್ ಸಂಖ್ಯೆ - ಬೇಸ್ಲೈನ್/ಸಂದರ್ಭ ಹೊಂದಿಸಿರಾ? + ಬೇಸ್‌ಲೈನ್ ಉಲ್ಲೇಖವನ್ನು ಮತ್ತೆ ಸೆಟ್ ಮಾಡಿ ಬೇಸ್ಲೈನ್ ನಿರ್ದೇಶನ ಮುಂದಿನ ಆಪ್ ಆವೃತ್ತಿಯಲ್ಲಿ ಪ್ರಕಟಿಸಲಾಗಿದೆ - ಅಮಾನ್ಯ ಕಿಟ್ ಸೀರಿಯಲ್ ಸಂಖ್ಯೆ, ಶರಿಯಾದ ಉದಾಹರಣೆ, SMI/SC/019/01/001 + ಅಮಾನ್ಯ ಕಿಟ್ ಸೀರಿಯಲ್ ಸಂಖ್ಯೆ, ಸರಿಯಾದ ಉದಾಹರಣೆ, SMI/SC/019/01/001 ಬಳಕೆದಾರ ಪಟ್ಟಿ ಬಳಕೆದಾರ ಐಡಿ ಆಧಾರ್ ಐಡಿ - ಇಂಟರ್ನೆಟ್ ಇಲ್ಲದೆ, ದಯವಿಟ್ಟು ಬಳಕೆದಾರ ಐಡಿ ಮತ್ತು ರಕ್ತ ಗುಂಪುವನ್ನು ಕೈಯಿಂದ ನಮೂದಿಸಿ + ಇಂಟರ್ನೆಟ್ ಇಲ್ಲ. ದಯವಿಟ್ಟು ಬಳಕೆದಾರ ಐಡಿ ಮತ್ತು ರಕ್ತ ಗುಂಪುವನ್ನು ಕೈಯಿಂದ ನಮೂದಿಸಿ ಬಳಕೆದಾರ ಐಡಿ 18 ಅಂಕಗಳಿರಬೇಕು ಮತ್ತು ದಯವಿಟ್ಟು ರಕ್ತ ಗುಂಪುವನ್ನು ಆಯ್ಕೆ ಮಾಡಿ - ಸ್ಥಾನಿಕ DB ಪರೀಕ್ಷೆಗಳನ್ನು ಅಪ್ಲೋಡ್ ಮಾಡಿ - ನೀವು ಸ್ಥಾನಿಕ DB ಪರೀಕ್ಷೆಗಳನ್ನು ಕ್ಲೌಡ್‌ಗೆ ಅಪ್ಲೋಡ್ ಮಾಡಲು ಬಯಸುತ್ತೀರಾ? + ನೀವು ಸ್ಥಳೀಯ ಡೇಟಾ ಬೇಸ್ ಅನ್ನು ಟೆಸ್ಟ್ ಗಳನ್ನು ಅಪ್ಲೋಡ್ ಮಾಡಿ + ನೀವು ಪರೀಕ್ಷೆಗಳನ್ನು ಕ್ಲೌಡ್‌ಗೆ ಅಪ್ಲೋಡ್ ಮಾಡಲು ಬಯಸುತ್ತೀರಾ? ಡೌನ್ಲೋಡ್ ಡಿಬಿ ಟೆಸ್ಟ್‌ಗಳು - ನೀವು ಲೋಕಲ್ ಡಿಬಿ ಟೆಸ್ಟ್‌ಗಳನ್ನು CSV ಆಕರದಲ್ಲಿ ಡೌನ್ಲೋಡ್ ಮಾಡಲು ಬಯಸುತ್ತೀರಾ? + ನೀವು ಸ್ಥಳೀಯ ಡೇಟಾ ಬೇಸ್ ಅನ್ನು ಟೆಸ್ಟ್ ಗಳನ್ನು ಕ್ಲೌಡ್‌ಗೆ ಅಪ್ಲೋಡ್ ಮಾಡಲು ಬಯಸುತ್ತೀರಾ? ಅಪ್ಲೋಡ್ ಮಾಡಿ ರದ್ದು ಮಾಡಿ ಯಶಸ್ವಿಯಾಗಿ ಅಪ್ಲೋಡ್ ಮಾಡಲಾಗಿದೆ ಪರೀಕ್ಷೆ ಮುಗಿಯಿತು ರಕ್ತ ಗುಂಪು ಆಯ್ಕೆಮಾಡಿ ಎಲ್ಲಾ ನೋಂದಣಿಗೆ ಬಂದ ಬಳಕೆದಾರರನ್ನು ಯಶಸ್ವಿಯಾಗಿ ಪರೀಕ್ಷಿಸಲಾಗಿದೆ - ಇನ್ಕ್ಯೂಬೇಶನ್ ಆರಂಭ + ಇನ್ಕ್ಯುಬೇಷನ್ ಪ್ರಾರಂಭಿಸಿ ಬಫರ್ ಚೆಕ್ ಮಾಡಿ - ಬ್ಯಾಟರಿ ಸ್ತರ 40% ಕ್ಕಿಂತ ಕಡಿಮೆಯಾಗಿದೆ, ದಯವಿಟ್ಟು ಸಾಧನವನ್ನು ಮುಂದುವರಿಸಲು ಸಾಧನವನ್ನು ಚಾರ್ಜ್ ಮಾಡಿ - ಈ ಬಳಕೆದಾರನ ಮೇಲೆ ಪರೀಕ್ಷೆ ಇನ್ನು ಮುಗಿದಿದೆ - ಇನ್ಕ್ಯೂಬೇಷನ್ ಹತ್ತಿಲ್ಲ 15 ನಿಮಿಷಗಳ ಪೂರ್ತಿ ಆಗಿಲ್ಲ + ಬ್ಯಾಟರಿ ಸ್ತರ 40% ಕ್ಕಿಂತ ಕಡಿಮೆಯಾಗಿದೆ, ಟೆಸ್ಟ್ ಮುಂದುವರಿಸಲು ದಯವಿಟ್ಟು ಡಿವೈಸ ಚಾರ್ಜ್ ಮಾಡಿ + ಈ ಬಳಕೆದಾರನ ಮೇಲೆ ಟೆಸ್ಟ್ ಮುಗಿದಿದೆ + 15 ನಿಮಿಷಗಳ ಇನ್ಕ್ಯೂಬೇಷನ್ ಇನ್ನು ಪೂರ್ತಿ ಆಗಿಲ್ಲ್ಲ ಇನ್ಕ್ಯೂಬೇಷನ್ 30 ನಿಮಿಷಗಳನ್ನು ದಾಟಿದೆ, ಇನ್ನೊಮ್ಮೆ ಇನ್ಕ್ಯೂಬೇಷನ್ ಮಾಡಬೇಕಾಗಿದೆ - ಈ ಬಳಕೆದಾರನ ಮೇಲೆ ಇನ್ಕ್ಯೂಬೇಷನ್ ಆರಂಭವಾಗಿಲ್ಲ - ಪರೀಕ್ಷೆ ಮುಗಿಯಿತು - ಪರೀಕ್ಷೆ ಬಾಕಿ ಇದೆ - ದಯವಿಟ್ಟು ನಿಮ್ಮ ರಕ್ತ ಗುಂಡಾರವನ್ನು ನಮೂದಿಸಿ - ದಯವಿಟ್ಟು ನಿಮ್ಮ ರಕ್ತ ಗುಂಡಾರವನ್ನು ನಮೂದಿಸಿ - ರಕ್ತ ಗುಂಡಾರ ಯಶಸ್ವಿಯಾಗಿ ನವೀಕರಿಸಲಾಗಿದೆ - ರಕ್ತ ಗುಂಡಾರ ನವೀಕರಿಸಲು ವಿಫಲವಾಗಿದೆ: %1$s - ನೀರು ನಿರ್ದಿಷ್ಟ ಐಡಿಗೆ ಯಾವುದೇ ಬಳಕೆದಾರ ಡೇಟಾ ಕಂಡುಬಂದಿಲ್ಲ - ಸಾಧನ ಹಂಚಿಹೋಯಿತು - ಯಾವುದೇ ಸಾಧನ ಕಂಡುಬಂದಿಲ್ಲ - ಅಮಾನ್ಯವಾದ ಕಿಟ್ ಸಂಖ್ಯೆ + ಈ ಟೆಸ್ಟ್ ಸ್ಯಾಂಪಲ್ ಇನ್ಕ್ಯುಬೇಷನ್ ಇನ್ನು ಆರಂಭವಾಗಿಲ್ಲ + ಟೆಸ್ಟ್ ಮುಕ್ತಯವಾಗಿದೆ + ಟೆಸ್ಟ್ ಇನ್ನು ಮುಗಿದಿಲ್ಲ + ರಕ್ತದ ಗುಂಪನ್ನುತಪ್ಪಾಗಿ ನಮೂದಿಸಿದ್ಧೀರಿ + ದಯವಿಟ್ಟು ನಿಮ್ಮ ರಕ್ತ ಗುಂಪನ್ನು ನಮೂದಿಸಿ + ರಕ್ತದ ಗುಂಪನ್ನು ಯಶಸ್ವಿಯಾಗಿ ನವೀಕರಿಸಲಾಗಿದೆ + ರಕ್ತದ ಗುಂಪನ್ನು ನವೀಕರಿಸಲು ವಿಫಲವಾಗಿದೆ + ಈ ನಿರ್ದಿಷ್ಟ ಬಳಕೆದಾರರ ಐಡಿಗೆ ಯಾವುದೇ ಡೇಟಾ ಕಂಡುಬಂದಿಲ್ಲ + ಡಿವೈಸ್ ಸಂಪರ್ಕ ಕಡಿತಗೊಂಡಿದೆ + ಯಾವುದೇ ಡಿವೈಸ್ ಕಂಡುಬಂದಿಲ್ಲ + ಕಿಟ್ ಸಂಖ್ಯೆ ತಪ್ಪಾಗಿದೆ ಇಂಟರ್ನೆಟ್ ಲಭ್ಯವಿಲ್ಲ - ಇಂಟರ್ನೆಟ್ ಲಭ್ಯವಿಲ್ಲ, ಪರೀಕ್ಷೆ ವಿವರಗಳನ್ನು ಸ್ಥಾನಿಕವಾಗಿ ಉಳಿಸಲಾಗಿದೆ + ಇಂಟರ್ನೆಟ್ ಲಭ್ಯವಿಲ್ಲ, ಪರೀಕ್ಷೆ ವಿವರಗಳನ್ನು ಸ್ಥಳೀಯ ಜಾಗದಲ್ಲಿ ಉಳಿಸಲಾಗಿದೆ ಡೇಟಾ ಅಪ್ಲೋಡ್ ಮಾಡುವಾಗ ತಪ್ಪಾಗಿದೆ, ಪರೀಕ್ಷೆ ವಿವರಗಳನ್ನು ಸ್ಥಾನಿಕವಾಗಿ ಉಳಿಸಲಾಗಿದೆ ಇನ್ನೊಂದು ಬಫರ್ ಪಡೆಯುವಾಗ ತಪ್ಪಾಗಿದೆ ನೀವು ಇನ್ನೊಂದು ಬಫರ್ ಜಾರಿಗೆ ಹೋಗಲು ಇಚ್ಛಿಸುತ್ತಾರಾ? - ಪರೀಕ್ಷೆ ಜರುಗುತ್ತಿದೆ, ಹಿಂತಿರುಗಲು ಸಾಧ್ಯವಿಲ್ಲ - ಕಿಟ್ ಪರಿಣಾಮ ಯಶಸ್ವಿಯಾಗಿ ಅಪ್ಲೋಡ್ ಆಗಿದೆ - ಕಿಟ್ ಪರಿಣಾಮ ಅಪ್ಲೋಡ್ ಆಗಲಿಲ್ಲ, ಅದನ್ನು ಕೈಯಾರೆ ಹೊಸದಾಗಿ ಬರೆಯಿರಿ - ಪರೀಕ್ಷೆ ಜರುಗುತ್ತಿದೆ + ಟೆಸ್ಟ್ ಪ್ರಗತಿಯಲ್ಲಿದೆ. ಹಿಂತಿರುಗಲು ಸಾಧ್ಯವಿಲ್ಲ + ಕಿಟ್ ಯಶಸ್ವಿಯಾಗಿ ಅಪ್ಲೋಡ್ ಆಗಿದೆ + ಕಿಟ್ ಅಪ್ಲೋಡ್ ವಿಫಲವಾಗಿದೆ. ಅದನ್ನು ಕೈಯಾರೆ ಹೊಸದಾಗಿ ಬರೆಯಿರಿ + ಟೆಸ್ಟ್ ಪ್ರಗತಿಯಲ್ಲಿದೆ ವರ್ಗೀಕರಣ ನಡೆಸುವಾಗ ತಪ್ಪಾಗಿದೆ - ಪರೀಕ್ಷೆ ಫಲಿತಾಂಶ ಯಶಸ್ವಿಯಾಗಿ ಅಪ್ಲೋಡ್ ಆಗಿದೆ - ಪರೀಕ್ಷೆ ಫಲಿತಾಂಶ ಅಪ್ಲೋಡ್ ಆಗಲಿಲ್ಲ + ಟೆಸ್ಟ್ ಫಲಿತಾಂಶ ಯಶಸ್ವಿಯಾಗಿ ಅಪ್ಲೋಡ್ ಆಗಿದೆ + ಟೆಸ್ಟ್ ಫಲಿತಾಂಶ ಅಪ್ಲೋಡ್ ಆಗಲಿಲ್ಲ ಲಾಗೌಟ್ ಮಾಡಿ ನೀವು ಅಪ್ಲಿಕೇಶನ್ ನಿಂದ ಲಾಗೌಟ್ ಮಾಡಲು ಬಯಸುತ್ತಿದ್ದೀರಾ? ರದ್ದು ಮಾಡಲಾಗಿದೆ: ಸ್ಕ್ಯಾನ್ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ, ಮತ್ತೊಮ್ಮೆ ಪ್ರಯಾಸಿಸಿ!! ಕಿಟ್ ಸಂಖ್ಯೆ ನವೀಕರಿಸಲಾಗಿದೆ, ದಯವಿಟ್ಟು ಟೆಸ್ಟ್ ಆರಂಭಿಸುವ ಮೊದಲು ಬಳಸುವವನನ್ನು ಆಯ್ಕೆಮಾಡಿ - ದಯವಿಟ್ಟು ಟೆಸ್ಟ್ ಆರಂಭಿಸುವ ಮೊದಲು ರೋಗಿಯನ್ನು ಆಯ್ಕೆಮಾಡಿ + ದಯವಿಟ್ಟು ಟೆಸ್ಟ್ ಆರಂಭಿಸುವ ಮೊದಲು ರೋಗಿಯನ್ನು ಹೆಸರನ್ನು ಆಯ್ಕೆಮಾಡಿ ದಯವಿಟ್ಟು ಸ್ಥಾನ ಸೇವೆಗಳನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ ಸರಿಯಾದ ಸ್ಥಾನ ಅನುಮತಿ ನಿರಾಕರಿಸಲಾಗಿದೆ - ಅಲ್ಪ ಸರಿಯಾದ ಸ್ಥಾನ ಅನುಮತಿ ನಿರಾಕರಿಸಲಾಗಿದೆ + ಕೋರ್ಸ್ ಸ್ಥಾನ್ನಕ್ಕೆ ಅನುಮತಿ ನಿರಾಕರಿಸಲಾಗಿದೆ ನೀವು ಈ ಅಪ್ಲಿಕೇಶನ್ ಬಳಸಲು ಎಲ್ಲಾ ಫೈಲ್‌ಗಳಿಗೆ ಪ್ರವೇಶ ಅನುಮತಿ ನೀಡಬೇಕು ಈ ಅಪ್ಲಿಕೇಶನ್ ಬಳಸಲು ಎಲ್ಲಾ ಅನುಮತಿಗಳು ಅಗತ್ಯವಿವೆ. ಡೆವೈಸ್ ಸಂಪರ್ಕಿಸಲಾಗಿಲ್ಲ. - Device is Connected. + ಡಿವೈಸ್ ಕನೆಕ್ಟ್ ಆಗಿದೆ ದಯವಿಟ್ಟು ಸರಿಯಾದ ಲಾಗಿನ್ ಐಡಿ ನಮೂದಿಸಿ ದಯವಿಟ್ಟು ಸರಿಯಾದ ಪಾಸ್‌ವರ್ಡ್ ನಮೂದಿಸಿ - ತಪ್ಪಾದ ಪಾಸ್‌ವರ್ಡ್ - ತಪ್ಪಾದ ಬಳಕೆದಾರ ಐಡಿ - ಅಮಾನ್ಯ ಟೆಸ್ಟ್. ಡಿ-ಆಕ್ಸಿಜನೇಷನ್ ಸಮಸ್ಯೆ - ದೋಷ: ನೆಗೆಟಿವ್ ಆಬ್ಸ್. ಬ್ಲ್ಯಾಂಕ್ ರೀಡಿಂಗ್ ಪುನಃ ತೆಗೆದುಕೊಳ್ಳಿ + ಪಾಸ್ವರ್ಡ್ ತಪ್ಪಾಗಿ ನಮೂದಿಸಿದ್ದೀರಿ + ಬಳಕೆದಾರ ಐಡಿ ತಪ್ಪಾಗಿ ನಮೂದಿಸಿದ್ದೀರಿ + ದೋಷ. ಟೆಸ್ಟ್ ಅಮಾನ್ಯವಾಗಿದೆ + ದೋಷ: ನೆಗೆಟಿವ್ ಆ ಬಿ ಸ್ ದೋಷ: ಅಮಾನ್ಯ ಟೆಸ್ಟ್. ಬಫರ್ ರೀಡಿಂಗ್ ಅಸರವಿಲ್ಲ (ಹೈ) ದೋಷ: ಅಮಾನ್ಯ ಟೆಸ್ಟ್. ಬಫರ್ ರೀಡಿಂಗ್ ಅಸರವಿಲ್ಲ (ಲೋ) - ಡೇಟಾ ಪ್ರಕ್ರಿಯಿಸುವಾಗ ದೋಷ - ಅಮಾನ್ಯ. ರೇಟ್ ಹೆಚ್ಚುವ ಹೊರತು ಪುನಃ ಟೆಸ್ಟ್ ಮಾಡಿ - ಅಮಾನ್ಯ. ಅತ್ಯಂತ ಕಡಿಮೆ ಅಭ್ಸರ್ಬೆನ್ಸ್ - ಹೆಚ್ಚು ಹೊರತು ಪುನಃ ಟೆಸ್ಟ್ - ಸಿಕ್ಲ್ ಸೆಲ್ ಸಾಕಾರಿ. HPLC ದೃಢೀಕರಣಕ್ಕಾಗಿ - ಸಾಧನದಲ್ಲಿ ಏನಾದರೂ ತಪ್ಪಾಗಿದೆ, ದಯವಿಟ್ಟು ಸಾಧನವನ್ನು ಹತ್ತಿರಕ್ಕೆ ತರಿಸಿ ಮತ್ತೆ ಬಳಸಿ ಬಳಸಿ ಬಳಸಿ ಪರೀಕ್ಷಿಸಿ - ಪ್ರಕ್ರಿಯಿಸುತ್ತಿದೆ ಫಲಿತ - ಸಮಿತಿ ಸೇರಿಸಿದ ಡೇಟಾ, ಡೇಟಾ ಪ್ರಕ್ರಿಯಿಸುತ್ತಿದೆ - ನಮೂನೆ ಪೂರ್ಣಗೊಂಡಿದೆ + ದೋಷ. ಸಾಧನ ಡಾಟಾವನ್ನುಸಂಸ್ಕರಿಸಲಾಗುತ್ತಿದೆ + ದೋಷ. ಕಡಿಮೆ ಸ್ಯಾಂಪಲ್ ಬಳಸಿ ಪರೀಕ್ಷೆಯನ್ನು ಪುನರಾವರ್ತಿಸಿ + ದೋಷ. ಹೆಚ್ಚಿನ ಸ್ಯಾಂಪಲ್ ಬಳಸಿ ಪರೀಕ್ಷೆಯನ್ನು ಪುನರಾವರ್ತಿಸಿ + ಕುಡಗೋಲು ಕಣ ರಕ್ತಹೀನತೆ "ಪಾಸಿಟಿವ್" ಫಲಿತಂಶ ಬಂದಿರುತ್ತೇವೆ + ಡಿವೈಸ್ ನಲ್ಲಿ ಏನೋ ತಪ್ಪಾಗಿದೆ + ಫಲಿತಂಶವನ್ನು ಸಂಸ್ಕರಿಸುತ್ತುದೆ + ಸಂಗ್ರಹಿಸಿದ ಡೇಟಾವನ್ನು ಸಂಸ್ಕರಿಸಲಾಗುತ್ತಿದೆ + ಸ್ಯಾಂಪಲ್ ಪರೀಕ್ಷೆಪೂರ್ಣಗೊಂಡಿದೆ ಡೇಟಾ ಸಂಗ್ರಹಿಸುತ್ತಿದೆ - ನಮೂನೆ ಪ್ರಾರಂಭವಾಗಿದೆ - ಬಫರ್ ಪೂರ್ಣಗೊಂಡಿದೆ - ಬಫರ್ ಪ್ರಾರಂಭವಾಗಿದೆ + ಸ್ಯಾಂಪಲ್ ಪರೀಕ್ಷೆ ಪ್ರಾರಂಭವಾಗಿದೆ + ಬಫರ್ ಪರೀಕ್ಷೆ ಪೂರ್ಣಗೊಂಡಿದೆ + ಬಫರ್ ಪರೀಕ್ಷೆ ಪ್ರಾರಂಭವಾಗಿದೆ Connect with Power Bank - ಆರಂಭ - ನಮೂನೆ ಇಟ್ಟುಕೊಳ್ಳಿ - ಅಮಾನ್ಯ + ಪ್ರಾರಂಭಿಸಿ + ಸ್ಯಾಂಪಲ್ ಅನ್ನು ಒಳಗೆ ಇರಿಸಿ + ಅಮಾನ್ಯವಾಗಿದೆ ಸಾಧನ ಮಾಹಿತಿ ದೋಷ - ಭಾಷೆ ಯಶಸ್ವಿಯಾಗಿ ನವೀಕರಿಸಲಾಗಿದೆ + ಭಾಷೆಯನ್ನುಯಶಸ್ವಿಯಾಗಿ ನವೀಕರಿಸಲಾಗಿದೆ ನಿಮ್ಮ ಆದರಿತ ಭಾಷೆಯನ್ನು ಆಯ್ಕೆ ಮಾಡಿ ಅಪ್ಲಿಕೇಶನ್ ಭಾಷೆ ರಕ್ತ ಗುಂಡನ್ನು ಸೇರಿಸಿ ಸರಿ CSV ಡೌನ್ಲೋಡ್ ಮಾಡಿ - Activities - Checking cuvette presence - Cuvette present - Cuvette absent - Retry - Firefox - Files - Usb Terminal - About - About - Lab Name - SMI - ShanMukha Innovations is a spin-off from Indian Institute of Science, Bangalore. Incorporated in 2016, the company has been delivering innovative Made in India first of its kind deep technology-based products in healthcare.\\n\\nNotable solutions include Mobile Infection Testing and Reporting Labs (MITR Labs), portable thermal cycler (PolyCube).\\n\\nThe company launched Sicklecert ®, India’s first CDSCO approved indigenous diagnostic test for sickle-cell anemia.\\n\\nOur customers include government, non-profit and private sector companies. Leading research institutes such as IISc, IIT Tirupati have engaged us for unique projects. We take pride in supporting Indian and global customers with world-class products. - Visit to learn more: sminnovations.in - Commands - Select Cuvette Size + ಚಟುವಟಿಕೆಗಳು + ಕುವೆಟ್ ಇರುವಿಕೆಯನ್ನು ಪರಿಶೀಲಿಸಲಾಗುತ್ತಿದೆ + ಕುವೆಟ್ಟೆ ಇರುತ್ತದೆ + ಕುವೆಟ್ಟೆ ಇರುವುದಿಲ್ಲ + ಮರುಪ್ರಯತ್ನಿಸಿ + ಫೈರ್‌ಫಾಕ್ಸ್ + ಫೈಲ್ + ಯುಎಸ್ಬಿ ಟರ್ಮಿನಲ್ + ಬಗ್ಗೆ + ಬಗ್ಗೆ + ಲ್ಯಾಬ್ ಹೆಸರು + ಎಸ್ಎಂಐ + ಷಣ್ಮುಖ ಇನ್ನೋವೇಶನ್ಸ್ ಬೆಂಗಳೂರಿನ ಇಂಡಿಯನ್ ಇನ್‌ಸ್ಟಿಟ್ಯೂಟ್ ಆಫ್ ಸೈನ್ಸ್‌ನಿಂದ ಸ್ಪಿನ್-ಆಫ್ ಆಗಿದೆ.2016 ರಲ್ಲಿ ಸ್ಥಾಪನೆಯಾಗಿದ್ದು, ಕಂಪನಿಯು ಆರೋಗ್ಯ ರಕ್ಷಣೆಯಲ್ಲಿ ತನ್ನ ರೀತಿಯ ಆಳವಾದ ತಂತ್ರಜ್ಞಾನ ಆಧಾರಿತ ಉತ್ಪನ್ನಗಳಲ್ಲಿ ಮೊದಲ ಬಾರಿಗೆ ನವೀನ ಮೇಡ್ ಇನ್ ಇಂಡಿಯಾವನ್ನು ತಲುಪಿಸುತ್ತಿದೆ. ಗಮನಾರ್ಹ ಪರಿಹಾರಗಳಲ್ಲಿ ಮೊಬೈಲ್ ಸೋಂಕು ಪರೀಕ್ಷೆ ಮತ್ತು ವರದಿ ಮಾಡುವ ಲ್ಯಾಬ್‌ಗಳು (MITR ಲ್ಯಾಬ್ಸ್), ಪೋರ್ಟಬಲ್ ಥರ್ಮಲ್ ಸೈಕ್ಲರ್ (ಪಾಲಿಕ್ಯೂಬ್) ಸೇರಿವೆ. ಕಂಪನಿಯು ಸಿಕ್ಲೆಸರ್ಟ್ ® ಅನ್ನು ಪ್ರಾರಂಭಿಸಿತು, ಇದು ಭಾರತದ ಮೊದಲ CDSCO ಅಂಗೀಕರಿಸಿದ ಕುಡಗೋಲು-ಕಣ ರಕ್ತಹೀನತೆಗಾಗಿ ಸ್ಥಳೀಯ ರೋಗನಿರ್ಣಯ ಪರೀಕ್ಷೆಯನ್ನು ಅನುಮೋದಿಸಿದೆ. ನಮ್ಮ ಗ್ರಾಹಕರು ಸರ್ಕಾರಿ, ಲಾಭರಹಿತ ಮತ್ತು ಖಾಸಗಿ ವಲಯದ ಕಂಪನಿಗಳನ್ನು ಒಳಗೊಂಡಿರುತ್ತಾರೆ. ಐಐಎಸ್‌ಸಿ, ಐಐಟಿ ತಿರುಪತಿಯಂತಹ ಪ್ರಮುಖ ಸಂಶೋಧನಾ ಸಂಸ್ಥೆಗಳು ವಿಶಿಷ್ಟ ಯೋಜನೆಗಳಿಗೆ ನಮ್ಮನ್ನು ತೊಡಗಿಸಿಕೊಂಡಿವೆ. ವಿಶ್ವ ದರ್ಜೆಯ ಉತ್ಪನ್ನಗಳೊಂದಿಗೆ ಭಾರತೀಯ ಮತ್ತು ಜಾಗತಿಕ ಗ್ರಾಹಕರನ್ನು ಬೆಂಬಲಿಸುವಲ್ಲಿ ನಾವು ಹೆಮ್ಮೆಪಡುತ್ತೇವೆ + ಹೆಚ್ಚಿನ ವಿವರಗಳಿಗೆ ಸಂಪರ್ಕಿಸಿ: sminnovations.in + ಆಜ್ಞೆಗಳು + Cuvette ಗಾತ್ರವನ್ನು ಆಯ್ಕೆಮಾಡಿ Sample Id - Quick Capture - Reset password for this device - Calibrate the device + ತ್ವರಿತ ಕ್ಯಾಪ್ಚರ್ + ಈ ಸಾಧನಕ್ಕಾಗಿ ಪಾಸ್‌ವರ್ಡ್ ಅನ್ನು ಮರುಹೊಂದಿಸಿ + ಸಾಧನವನ್ನು ಮಾಪನಾಂಕ ಮಾಡಿ \ No newline at end of file