From f3598c96996762af2e7f2dafd411e78f866a7408 Mon Sep 17 00:00:00 2001 From: Mariya Date: Tue, 26 Sep 2023 14:27:49 +0530 Subject: [PATCH] set the card color into green if the incubation time equals to 15. and it turns red if the incubation time equals 25, --- .../presentation/adapter/UserListAdapter.kt | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) 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 77e285c..3ee0492 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 @@ -1,6 +1,7 @@ package com.example.hpostesting.presentation.adapter import android.annotation.SuppressLint +import android.graphics.Color import android.view.LayoutInflater import android.view.View import android.view.ViewGroup @@ -45,6 +46,14 @@ class UserListAdapter( userId.text = "User ID:${model._id} \n Time: ${isBetween15And30Minutes(model.incubationTime)}" btnStartIncubation.visibility = View.GONE } + + if (isTimeEqualTo(model.incubationTime, 15)) { + userCard.setCardBackgroundColor(Color.GREEN) + } else if (isTimeEqualTo(model.incubationTime, 25)) { + userCard.setCardBackgroundColor(Color.RED) + } + + Glide.with(view).load(model.userImageURL).into(userImage) if (model.testStatus!!) { teststatus.text = "Test concluded" @@ -123,4 +132,23 @@ class UserListAdapter( return diffMillis / (60 * 1000) } + + + + private fun isTimeEqualTo(createdAt: String, targetMinutes: Int): Boolean { + val formatter = SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.getDefault()) + val createdAtDate: Date = formatter.parse(createdAt) ?: return false // Return false if parsing fails + + val currentTime = Calendar.getInstance().time + + val diffMillis = currentTime.time - createdAtDate.time + val diffMinutes = diffMillis / (60 * 1000) + + // Check if the difference in minutes is equal to the targetMinutes + return diffMinutes.toInt() == targetMinutes + } + + + + } \ No newline at end of file