seperate mvr and usd blocked funds in dashboard
Auto Tag on Version Change / check-version (push) Successful in 5s
Auto Tag on Version Change / check-version (push) Successful in 5s
This commit is contained in:
@@ -278,26 +278,23 @@ class DashboardFragment : Fragment() {
|
||||
.groupBy({ it.first }, { it.second })
|
||||
.mapValues { (_, vs) -> vs.sum() }
|
||||
|
||||
val blockedMvr = blockedByCurrency["MVR"] ?: 0.0
|
||||
val blockedUsd = blockedByCurrency["USD"] ?: 0.0
|
||||
val blockedTotal = blockedByCurrency.values.sum()
|
||||
if (blockedTotal > 0.0) {
|
||||
// Primary line: prefer MVR if present, otherwise the first currency.
|
||||
val primaryCcy = if ("MVR" in blockedByCurrency) "MVR" else blockedByCurrency.keys.first()
|
||||
val primaryAmt = blockedByCurrency.getValue(primaryCcy)
|
||||
binding.tvBlockedTotal.text = if (hide) "$primaryCcy ••••••" else "$primaryCcy %,.2f".format(primaryAmt)
|
||||
|
||||
val secondary = blockedByCurrency.filterKeys { it != primaryCcy }
|
||||
if (secondary.isNotEmpty()) {
|
||||
binding.tvBlockedSecondary.text = secondary.entries.joinToString(" · ") { (ccy, amt) ->
|
||||
if (hide) "$ccy ••••••" else "$ccy %,.2f".format(amt)
|
||||
}
|
||||
binding.tvBlockedSecondary.visibility = View.VISIBLE
|
||||
} else {
|
||||
binding.tvBlockedSecondary.visibility = View.GONE
|
||||
}
|
||||
binding.cardBlocked.visibility = View.VISIBLE
|
||||
if (blockedMvr > 0.0) {
|
||||
binding.tvBlockedMvr.text = if (hide) "MVR ••••••" else "MVR %,.2f".format(blockedMvr)
|
||||
binding.cardBlockedMvr.visibility = View.VISIBLE
|
||||
} else {
|
||||
binding.cardBlocked.visibility = View.GONE
|
||||
binding.cardBlockedMvr.visibility = View.GONE
|
||||
}
|
||||
if (blockedUsd > 0.0) {
|
||||
binding.tvBlockedUsd.text = if (hide) "USD ••••••" else "USD %,.2f".format(blockedUsd)
|
||||
binding.cardBlockedUsd.visibility = View.VISIBLE
|
||||
} else {
|
||||
binding.cardBlockedUsd.visibility = View.GONE
|
||||
}
|
||||
binding.rowBlocked.visibility = if (blockedTotal > 0.0) View.VISIBLE else View.GONE
|
||||
|
||||
// Overdue: MIB finance deals + BML loan details (assumed MVR — matches existing Pending Finances).
|
||||
val mibOverdue = (viewModel.financing.value ?: emptyList()).sumOf { it.overdueAmount }
|
||||
@@ -310,8 +307,7 @@ class DashboardFragment : Fragment() {
|
||||
binding.cardOverdue.visibility = View.GONE
|
||||
}
|
||||
|
||||
binding.rowAttention.visibility =
|
||||
if (blockedTotal > 0.0 || overdueTotal > 0.0) View.VISIBLE else View.GONE
|
||||
binding.rowAttention.visibility = if (overdueTotal > 0.0) View.VISIBLE else View.GONE
|
||||
}
|
||||
|
||||
private fun updatePendingFinances() {
|
||||
|
||||
Reference in New Issue
Block a user