add diaggnostics run in diag fragment
This commit is contained in:
@@ -14,6 +14,7 @@ import androidx.lifecycle.MutableLiveData
|
||||
import com.example.hpostesting.data.DataHolder
|
||||
import com.example.hpostesting.data.constant.Constants
|
||||
import com.example.hpostesting.data.constant.HemoCubeCommands
|
||||
import com.example.hpostesting.data.model.diagnostics.DiagnosticsData
|
||||
import com.example.hpostesting.data.model.patient.DeviceData
|
||||
import com.example.hpostesting.data.model.patient.toHemoCubeTestData
|
||||
import com.example.hpostesting.presentation.UsbServiceListener
|
||||
@@ -25,6 +26,9 @@ import com.google.firebase.crashlytics.ktx.crashlytics
|
||||
import com.google.firebase.ktx.Firebase
|
||||
import `in`.sminnovations.hpostesting.R
|
||||
import `in`.sminnovations.hpostesting.databinding.FragmentDiagnosticsBinding
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Calendar
|
||||
import java.util.Locale
|
||||
|
||||
class DiagnosticsFragment : Fragment() {
|
||||
|
||||
@@ -54,10 +58,9 @@ class DiagnosticsFragment : Fragment() {
|
||||
|
||||
|
||||
private fun initViews() {
|
||||
binding.btnKit.visibility = View.GONE
|
||||
listenToHemoCube()
|
||||
binding.btnSubmit.setOnClickListener {
|
||||
listenToHemoCube()
|
||||
binding.btnSubmit.visibility = View.GONE
|
||||
getBufferdiagnostics()
|
||||
}
|
||||
}
|
||||
@@ -71,12 +74,12 @@ class DiagnosticsFragment : Fragment() {
|
||||
|
||||
diagnosticsViewModel.networkStatusLiveData.observe(viewLifecycleOwner) { isNetworkAvailable ->
|
||||
if (isNetworkAvailable) {
|
||||
diagnosticsViewModel.getDeviceData(
|
||||
sharedPreferences.getString(
|
||||
Constants.USER_ID,
|
||||
""
|
||||
)
|
||||
)
|
||||
// diagnosticsViewModel.getDeviceData(
|
||||
// sharedPreferences.getString(
|
||||
// Constants.USER_ID,
|
||||
// ""
|
||||
// )
|
||||
// )
|
||||
} else {
|
||||
Toast.makeText(
|
||||
requireContext(),
|
||||
@@ -120,18 +123,31 @@ class DiagnosticsFragment : Fragment() {
|
||||
override fun onUsbRead(data: ByteArray?) {
|
||||
data?.let {
|
||||
val stringData = String(it)
|
||||
diagnosticsViewModel.messages.postValue(stringData)
|
||||
fullReadOutput.append(stringData)
|
||||
}
|
||||
val inputData = mutableListOf<String>()
|
||||
while (true) {
|
||||
if (fullReadOutput.toString().lowercase() == "end") {
|
||||
break
|
||||
}
|
||||
inputData.add(fullReadOutput.toString())
|
||||
resultData += stringData
|
||||
binding.tvSubtitle4.text = resultData
|
||||
}
|
||||
|
||||
val parsedData = parseData(inputData)
|
||||
Log.i("D-Data", parsedData.toString())
|
||||
if (resultData.contains("END") || fullReadOutput.contains("END")) {
|
||||
diagnosticsViewModel.addDiagnosticsDataToDb(DiagnosticsData(
|
||||
deviceId = sharedPreferences.getString("DEVICE_ID", "").toString(),
|
||||
deviceData = resultData,
|
||||
runTime = SimpleDateFormat(
|
||||
"yyyy-MM-dd HH:mm:ss", Locale.getDefault()
|
||||
).format(Calendar.getInstance().time)
|
||||
))
|
||||
}
|
||||
// val inputData = mutableListOf<String>()
|
||||
// while (true) {
|
||||
// if (fullReadOutput.toString().lowercase() == "end") {
|
||||
// break
|
||||
// }
|
||||
// inputData.add(fullReadOutput.toString())
|
||||
// }
|
||||
//
|
||||
// val parsedData = parseData(inputData)
|
||||
// Log.i("D-Data", parsedData.toString())
|
||||
}
|
||||
|
||||
override fun onUsbError(e: Exception?) {
|
||||
|
||||
Reference in New Issue
Block a user