Added code for Device Diagnostics

This commit is contained in:
Mariya
2024-02-06 15:17:46 +05:30
parent 7e5228bb35
commit 8bc9b1449f
5 changed files with 51 additions and 42 deletions

View File

@@ -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

View File

@@ -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<DeviceDiagnosticsResponse> {
return safeApiCall { molbioAuthApi.deviceDiagnostics(deviceDiagnosticsRequest) }
return safeApiCall { molbioResultApi.deviceDiagnostics(deviceDiagnosticsRequest) }
}
override suspend fun uploadLogs(logFile: MultipartBody.Part): Result<UploadLogsResponse> {

View File

@@ -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

View File

@@ -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 -> {
// }
// }
// }
}

View File

@@ -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? {