HemoCube new Changes
This commit is contained in:
@@ -24,7 +24,6 @@ object DataHolder {
|
||||
var selectedTest: UserData? = null
|
||||
var SelectTestType: HemoCubeTestData? = null
|
||||
var location: UserData.Location? = null
|
||||
var locationhemocube: HemoCubeTestData.Location? = null
|
||||
var testExp: Boolean = true
|
||||
var hemocubeResult: Double? = null
|
||||
}
|
||||
@@ -4,10 +4,11 @@ import androidx.room.Database
|
||||
import androidx.room.RoomDatabase
|
||||
import androidx.room.TypeConverters
|
||||
import com.example.hpostesting.data.model.patient.UserData
|
||||
import com.example.hpostesting.data.model.patient.HemoCubeTestData
|
||||
|
||||
@Database(entities = [UserData::class], version = 1, exportSchema = false)
|
||||
@Database(entities = [UserData::class, HemoCubeTestData::class], version = 1, exportSchema = false)
|
||||
@TypeConverters(Converters::class)
|
||||
abstract class MyDatabase : RoomDatabase() {
|
||||
abstract fun userDao(): UserDao
|
||||
abstract fun hemoCubeDb(): HemoCubeDb
|
||||
}
|
||||
abstract fun hemoCubeDao(): HemoCubeDao
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@ import android.net.Uri
|
||||
import com.example.hpostesting.data.model.PendingUploads
|
||||
import com.example.hpostesting.data.model.Response
|
||||
import com.example.hpostesting.data.model.patient.HemoCubeTestData
|
||||
import com.example.hpostesting.data.model.patient.UserData
|
||||
import com.google.firebase.firestore.FirebaseFirestore
|
||||
import com.google.firebase.firestore.ktx.firestore
|
||||
import com.google.firebase.ktx.Firebase
|
||||
@@ -18,19 +19,39 @@ class DatabaseRepository : Repository {
|
||||
|
||||
suspend fun addTestToDatabase(data: HemoCubeTestData?): Response<String> {
|
||||
return try {
|
||||
val userdata = db.collection("patientData").whereEqualTo("_id", data._id).get().await()
|
||||
val userdata = db.collection("patientData").whereEqualTo("_id", data!!._id).get().await()
|
||||
if (userdata.documents.isNotEmpty()) {
|
||||
userdata.documents.forEach {
|
||||
db.collection("patientData").document(it.id).update("testStatus", true)
|
||||
}
|
||||
}
|
||||
db.collection("testData").add(data).await()
|
||||
Response.Success(data._id)
|
||||
db.collection("testData").add(data!!).await()
|
||||
Response.Success(data!!._id)
|
||||
} catch (e: Exception) {
|
||||
Response.Error(e)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
suspend fun addTestToDatabase(data: UserData?): Response<String> {
|
||||
return try {
|
||||
val userdata = db.collection("patientData").whereEqualTo("_id", data!!._id).get().await()
|
||||
if (userdata.documents.isNotEmpty()) {
|
||||
userdata.documents.forEach {
|
||||
db.collection("patientData").document(it.id).update("testStatus", true)
|
||||
}
|
||||
}
|
||||
db.collection("testData").add(data!!).await()
|
||||
Response.Success(data!!._id)
|
||||
} catch (e: Exception) {
|
||||
Response.Error(e)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
suspend fun uploadFileToStorage(patientID: String, filePath: String): Response<Boolean> {
|
||||
try {
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ package com.example.hpostesting.domain.di
|
||||
import android.app.Application
|
||||
import android.content.Context
|
||||
import androidx.room.Room
|
||||
import com.example.hpostesting.data.dao.HemoCubeDb
|
||||
import com.example.hpostesting.data.dao.HemoCubeDao
|
||||
import com.example.hpostesting.data.dao.MyDatabase
|
||||
import com.example.hpostesting.data.dao.UserDao
|
||||
import com.example.hpostesting.data.datasource.LocalFileDataSource
|
||||
@@ -38,8 +38,8 @@ object AppModule {
|
||||
|
||||
@Provides
|
||||
@Singleton
|
||||
fun provideMyHemo(myDatabase: MyDatabase): HemoCubeDb {
|
||||
return myDatabase.hemoCubeDb()
|
||||
fun provideMyHemo(myDatabase: MyDatabase): HemoCubeDao {
|
||||
return myDatabase.hemoCubeDao()
|
||||
}
|
||||
|
||||
@Provides
|
||||
|
||||
@@ -25,6 +25,7 @@ class HemoCubeViewModel@Inject constructor(
|
||||
var isServiceConnected = false
|
||||
val progressBar = MutableLiveData(false)
|
||||
val testDetails = DataHolder.SelectTestType
|
||||
val testDetailst = DataHolder.selectedTest
|
||||
private val _networkStatusLiveData = NetworkStatusLiveData(context)
|
||||
val networkStatusLiveData: LiveData<Boolean>
|
||||
get() = _networkStatusLiveData
|
||||
@@ -53,7 +54,7 @@ class HemoCubeViewModel@Inject constructor(
|
||||
}
|
||||
private fun addResultTestToDb() {
|
||||
testDetails?.resultRatio = DataHolder.hemocubeResult
|
||||
testDetails?.locationhemo = DataHolder.locationhemocube
|
||||
testDetailst?.location = DataHolder.location
|
||||
testDetails?.testTime = SimpleDateFormat(
|
||||
"yyyy-MM-dd HH:mm:ss", Locale.getDefault()
|
||||
).format(Calendar.getInstance().time)
|
||||
|
||||
Reference in New Issue
Block a user