From 8bc9b1449f1123b7fa83c11a9f3819cb8c710999 Mon Sep 17 00:00:00 2001 From: Mariya Date: Tue, 6 Feb 2024 15:17:46 +0530 Subject: [PATCH] Added code for Device Diagnostics --- .../hpostesting/data/api/MolbioResultApi.kt | 2 + .../data/repository/DatabaseRepository.kt | 4 +- .../hpostesting/data/repository/Repository.kt | 2 + .../diagnostics/DiagnosticsFragment.kt | 71 ++++++++++--------- .../diagnostics/DiagnosticsViewModel.kt | 14 ++-- 5 files changed, 51 insertions(+), 42 deletions(-) diff --git a/app/src/main/java/com/example/hpostesting/data/api/MolbioResultApi.kt b/app/src/main/java/com/example/hpostesting/data/api/MolbioResultApi.kt index 7ecad4a..189ddaf 100644 --- a/app/src/main/java/com/example/hpostesting/data/api/MolbioResultApi.kt +++ b/app/src/main/java/com/example/hpostesting/data/api/MolbioResultApi.kt @@ -1,5 +1,7 @@ package com.example.hpostesting.data.api +import com.example.hpostesting.data.model.devicediagnostics.DeviceDiagnosticsRequest +import com.example.hpostesting.data.model.devicediagnostics.DeviceDiagnosticsResponse import com.example.hpostesting.data.model.log.UploadLogsResponse import com.example.hpostesting.data.model.molbioresult.MolbioV2ResultRequest import com.example.hpostesting.data.model.molbioresult.MolbioV2ResultResponse diff --git a/app/src/main/java/com/example/hpostesting/data/repository/DatabaseRepository.kt b/app/src/main/java/com/example/hpostesting/data/repository/DatabaseRepository.kt index 00556b2..3c85e1a 100644 --- a/app/src/main/java/com/example/hpostesting/data/repository/DatabaseRepository.kt +++ b/app/src/main/java/com/example/hpostesting/data/repository/DatabaseRepository.kt @@ -6,6 +6,8 @@ import com.example.hpostesting.data.api.MolbioAuthApi import com.example.hpostesting.data.api.MolbioResultApi import com.example.hpostesting.data.model.PendingUploads import com.example.hpostesting.data.model.Response +import com.example.hpostesting.data.model.devicediagnostics.DeviceDiagnosticsRequest +import com.example.hpostesting.data.model.devicediagnostics.DeviceDiagnosticsResponse import com.example.hpostesting.data.model.deviceprovision.DeviceProvisionRequest import com.example.hpostesting.data.model.deviceprovision.DeviceProvisionResponse import com.example.hpostesting.data.model.diagnostics.DiagnosticsData @@ -78,7 +80,7 @@ class DatabaseRepository @Inject constructor( } override suspend fun deviceDiagnostics(deviceDiagnosticsRequest: DeviceDiagnosticsRequest): Result { - return safeApiCall { molbioAuthApi.deviceDiagnostics(deviceDiagnosticsRequest) } + return safeApiCall { molbioResultApi.deviceDiagnostics(deviceDiagnosticsRequest) } } override suspend fun uploadLogs(logFile: MultipartBody.Part): Result { diff --git a/app/src/main/java/com/example/hpostesting/data/repository/Repository.kt b/app/src/main/java/com/example/hpostesting/data/repository/Repository.kt index 94c61c0..dfb5d33 100644 --- a/app/src/main/java/com/example/hpostesting/data/repository/Repository.kt +++ b/app/src/main/java/com/example/hpostesting/data/repository/Repository.kt @@ -2,6 +2,8 @@ package com.example.hpostesting.data.repository import com.example.hpostesting.data.Result import com.example.hpostesting.data.model.Response +import com.example.hpostesting.data.model.devicediagnostics.DeviceDiagnosticsRequest +import com.example.hpostesting.data.model.devicediagnostics.DeviceDiagnosticsResponse import com.example.hpostesting.data.model.deviceprovision.DeviceProvisionRequest import com.example.hpostesting.data.model.deviceprovision.DeviceProvisionResponse import com.example.hpostesting.data.model.diagnostics.DiagnosticsData diff --git a/app/src/main/java/com/example/hpostesting/presentation/diagnostics/DiagnosticsFragment.kt b/app/src/main/java/com/example/hpostesting/presentation/diagnostics/DiagnosticsFragment.kt index 874b949..7fb411f 100644 --- a/app/src/main/java/com/example/hpostesting/presentation/diagnostics/DiagnosticsFragment.kt +++ b/app/src/main/java/com/example/hpostesting/presentation/diagnostics/DiagnosticsFragment.kt @@ -11,6 +11,7 @@ import android.widget.Toast import androidx.fragment.app.Fragment import androidx.fragment.app.activityViewModels import androidx.lifecycle.MutableLiveData +import com.example.hpostesting.data.Result import com.example.hpostesting.data.constant.Constants import com.example.hpostesting.data.constant.HemoCubeCommands import com.example.hpostesting.data.model.devicediagnostics.AdditionalDetails1 @@ -101,41 +102,41 @@ class DiagnosticsFragment : Fragment() { } - diagnosticsViewModel.deviceDiagnosticsResponse.observe(viewLifecycleOwner) { response -> - when (response) { - is Result.Success-> { - - val result = response.data?.result - if (result == "Success") { - Toast.makeText( - activity, response.data?.message ?: "Device diagnostics uploaded successfully", Toast.LENGTH_LONG - ).show() - - response.data?.data?.let { diagnosticsData -> - - val batteryLevel = diagnosticsData.additionalDetails.batteryLevel - - } - } else { - Toast.makeText( - activity, - "Received success response but the result is not successful: ${response.data?.message}", - Toast.LENGTH_LONG - ).show() - } - } - is Result.Error -> { - // Handle the error scenario - Toast.makeText( - activity, - "An error occurred: ${response.exception.message}", - Toast.LENGTH_LONG - ).show() - } - is Result.Loading -> { - } - } - } +// diagnosticsViewModel.deviceDiagnosticsResponse.observe(viewLifecycleOwner) { response -> +// when (response) { +// is Result.Success-> { +// +// val result = response.data?.result +// if (result == "Success") { +// Toast.makeText( +// activity, response.data?.message ?: "Device diagnostics uploaded successfully", Toast.LENGTH_LONG +// ).show() +// +// response.data?.data?.let { diagnosticsData -> +// +// val batteryLevel = diagnosticsData.additionalDetails.batteryLevel +// +// } +// } else { +// Toast.makeText( +// activity, +// "Received success response but the result is not successful: ${response.data?.message}", +// Toast.LENGTH_LONG +// ).show() +// } +// } +// is Result.Error -> { +// // Handle the error scenario +// Toast.makeText( +// activity, +// "An error occurred: ${response.exception.message}", +// Toast.LENGTH_LONG +// ).show() +// } +// is Result.Loading -> { +// } +// } +// } } diff --git a/app/src/main/java/com/example/hpostesting/presentation/diagnostics/DiagnosticsViewModel.kt b/app/src/main/java/com/example/hpostesting/presentation/diagnostics/DiagnosticsViewModel.kt index 1ef3899..031324c 100644 --- a/app/src/main/java/com/example/hpostesting/presentation/diagnostics/DiagnosticsViewModel.kt +++ b/app/src/main/java/com/example/hpostesting/presentation/diagnostics/DiagnosticsViewModel.kt @@ -8,6 +8,8 @@ import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope import com.example.hpostesting.data.model.Response +import com.example.hpostesting.data.model.devicediagnostics.DeviceDiagnosticsRequest +import com.example.hpostesting.data.model.devicediagnostics.DeviceDiagnosticsResponse import com.example.hpostesting.data.model.diagnostics.DiagnosticsData import com.example.hpostesting.data.model.patient.DeviceData import com.example.hpostesting.data.repository.Repository @@ -56,12 +58,12 @@ class DiagnosticsViewModel @Inject constructor( - fun deviceDiagnostics(deviceDiagnosticsRequest: DeviceDiagnosticsRequest) = viewModelScope.launch { - deviceDiagnosticsResponse.postValue(Result.Loading()) - repository.deviceDiagnostics(deviceDiagnosticsRequest).let { - deviceDiagnosticsResponse.postValue(it) - } - } +// fun deviceDiagnostics(deviceDiagnosticsRequest: DeviceDiagnosticsRequest) = viewModelScope.launch { +// deviceDiagnosticsResponse.postValue(Result.Loading()) +// repository.deviceDiagnostics(deviceDiagnosticsRequest).let { +// deviceDiagnosticsResponse.postValue(it) +// } +// } fun getBatteryLevel(): Float? {