From 92bbe383b8b282b98f13e30f919a785df6326813 Mon Sep 17 00:00:00 2001 From: Shihaam Abdul Rahman Date: Sat, 16 May 2026 14:11:42 +0500 Subject: [PATCH] optimize bml and mib recipt to be 1:1 --- .../sh/sar/basedbank/api/bml/BmlLoginFlow.kt | 3 +- .../sh/sar/basedbank/api/bml/BmlModels.kt | 1 + .../sar/basedbank/ui/home/TransferFragment.kt | 3 +- .../basedbank/ui/home/TransferReceiptData.kt | 1 + .../ui/home/TransferReceiptFragment.kt | 8 ++- app/src/main/res/drawable/ic_arrow_right.xml | 14 ++++ .../main/res/layout/fragment_receipt_bml.xml | 56 +++++++-------- .../main/res/layout/fragment_receipt_mib.xml | 69 +++++++++---------- 8 files changed, 83 insertions(+), 72 deletions(-) create mode 100644 app/src/main/res/drawable/ic_arrow_right.xml diff --git a/app/src/main/java/sh/sar/basedbank/api/bml/BmlLoginFlow.kt b/app/src/main/java/sh/sar/basedbank/api/bml/BmlLoginFlow.kt index ff262e2..8b68d49 100644 --- a/app/src/main/java/sh/sar/basedbank/api/bml/BmlLoginFlow.kt +++ b/app/src/main/java/sh/sar/basedbank/api/bml/BmlLoginFlow.kt @@ -416,7 +416,8 @@ class BmlLoginFlow { BmlTransferResult( success = true, reference = payload?.optString("reference") ?: "", - timestamp = payload?.optString("timestamp") ?: "" + timestamp = payload?.optString("timestamp") ?: "", + message = json.optString("message") ) } } catch (_: Exception) { BmlTransferResult(false, errorMessage = "Parse error") } diff --git a/app/src/main/java/sh/sar/basedbank/api/bml/BmlModels.kt b/app/src/main/java/sh/sar/basedbank/api/bml/BmlModels.kt index a8d18ce..72e071c 100644 --- a/app/src/main/java/sh/sar/basedbank/api/bml/BmlModels.kt +++ b/app/src/main/java/sh/sar/basedbank/api/bml/BmlModels.kt @@ -20,6 +20,7 @@ data class BmlTransferResult( val success: Boolean, val reference: String = "", val timestamp: String = "", + val message: String = "", val errorMessage: String = "" ) diff --git a/app/src/main/java/sh/sar/basedbank/ui/home/TransferFragment.kt b/app/src/main/java/sh/sar/basedbank/ui/home/TransferFragment.kt index 1568267..ba58542 100644 --- a/app/src/main/java/sh/sar/basedbank/ui/home/TransferFragment.kt +++ b/app/src/main/java/sh/sar/basedbank/ui/home/TransferFragment.kt @@ -558,7 +558,8 @@ class TransferFragment : Fragment() { remarks = remarks, bmlFromName = src.accountBriefName, bmlReference = result.reference, - bmlTimestamp = result.timestamp + bmlTimestamp = result.timestamp, + bmlMessage = result.message ) val time = result.timestamp.take(19).replace("T", " ") Triple(true, "Reference: ${result.reference}\n$time", receipt) diff --git a/app/src/main/java/sh/sar/basedbank/ui/home/TransferReceiptData.kt b/app/src/main/java/sh/sar/basedbank/ui/home/TransferReceiptData.kt index b7829c6..815739d 100644 --- a/app/src/main/java/sh/sar/basedbank/ui/home/TransferReceiptData.kt +++ b/app/src/main/java/sh/sar/basedbank/ui/home/TransferReceiptData.kt @@ -18,4 +18,5 @@ data class TransferReceiptData( val bmlFromName: String = "", val bmlReference: String = "", val bmlTimestamp: String = "", + val bmlMessage: String = "", ) diff --git a/app/src/main/java/sh/sar/basedbank/ui/home/TransferReceiptFragment.kt b/app/src/main/java/sh/sar/basedbank/ui/home/TransferReceiptFragment.kt index a76d46b..c411e32 100644 --- a/app/src/main/java/sh/sar/basedbank/ui/home/TransferReceiptFragment.kt +++ b/app/src/main/java/sh/sar/basedbank/ui/home/TransferReceiptFragment.kt @@ -61,6 +61,7 @@ class TransferReceiptFragment : Fragment() { private const val ARG_BML_FROM_NAME = "bml_from_name" private const val ARG_BML_REFERENCE = "bml_reference" private const val ARG_BML_TIMESTAMP = "bml_timestamp" + private const val ARG_BML_MESSAGE = "bml_message" // Holds the already-rendered to-avatar bitmap from TransferFragment var pendingToAvatarBitmap: Bitmap? = null @@ -83,6 +84,7 @@ class TransferReceiptFragment : Fragment() { putString(ARG_BML_FROM_NAME, data.bmlFromName) putString(ARG_BML_REFERENCE, data.bmlReference) putString(ARG_BML_TIMESTAMP, data.bmlTimestamp) + putString(ARG_BML_MESSAGE, data.bmlMessage) } } } @@ -147,7 +149,7 @@ class TransferReceiptFragment : Fragment() { binding.tvToBank.text = args.getString(ARG_TO_BANK, "") binding.tvTransactionDate.text = args.getString(ARG_MIB_DATE, "") binding.tvValueDate.text = args.getString(ARG_MIB_DATE, "") - binding.tvPurpose.text = args.getString(ARG_REMARKS, "").ifBlank { "-" } + binding.tvPurpose.text = args.getString(ARG_REMARKS, "") } private fun loadProfileImage(hash: String, isProfile: Boolean, onLoaded: (Bitmap) -> Unit) { @@ -181,7 +183,9 @@ class TransferReceiptFragment : Fragment() { binding.tvAmountValue.text = formattedAmount binding.tvAmountCurrency.text = currency - binding.tvMessageRow.text = "Thank you. Transfer transaction is successful." + val apiMessage = args.getString(ARG_BML_MESSAGE, "") + binding.tvMessage.text = apiMessage + binding.tvMessageRow.text = apiMessage binding.tvReference.text = args.getString(ARG_BML_REFERENCE, "") binding.tvTransactionDate.text = formatBmlTimestamp(args.getString(ARG_BML_TIMESTAMP, "")) binding.tvFrom.text = args.getString(ARG_BML_FROM_NAME, "").ifBlank { diff --git a/app/src/main/res/drawable/ic_arrow_right.xml b/app/src/main/res/drawable/ic_arrow_right.xml new file mode 100644 index 0000000..12388a6 --- /dev/null +++ b/app/src/main/res/drawable/ic_arrow_right.xml @@ -0,0 +1,14 @@ + + + + diff --git a/app/src/main/res/layout/fragment_receipt_bml.xml b/app/src/main/res/layout/fragment_receipt_bml.xml index 8c9b043..d635457 100644 --- a/app/src/main/res/layout/fragment_receipt_bml.xml +++ b/app/src/main/res/layout/fragment_receipt_bml.xml @@ -13,6 +13,7 @@ android:id="@+id/receiptCard" android:layout_width="match_parent" android:layout_height="wrap_content" + android:layout_marginHorizontal="24dp" android:orientation="vertical" android:background="#FFFFFF"> @@ -36,7 +37,6 @@ android:layout_marginTop="14dp" android:layout_marginBottom="20dp" android:id="@+id/tvMessage" - android:text="Thank you. Transfer transaction is successful." android:textSize="14sp" android:textColor="#2D2D2D" android:fontFamily="@font/nunito_sans" @@ -50,7 +50,7 @@ + android:layout_height="70dp"> - - - - - - - - - + android:layout_gravity="center" + android:layout_marginBottom="13dp" + android:textSize="42sp" + android:textColor="#242424" + android:fontFamily="@font/sofia_pro" + android:gravity="center" /> + + + @@ -150,7 +144,7 @@ - + diff --git a/app/src/main/res/layout/fragment_receipt_mib.xml b/app/src/main/res/layout/fragment_receipt_mib.xml index f8a0da1..705ffda 100644 --- a/app/src/main/res/layout/fragment_receipt_mib.xml +++ b/app/src/main/res/layout/fragment_receipt_mib.xml @@ -5,21 +5,20 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" - android:background="#FFFFFF"> + android:background="?attr/colorSurface"> + android:layout_marginBottom="22dp" /> + android:layout_marginTop="18dp" /> @@ -94,19 +92,18 @@ android:layout_height="wrap_content" android:layout_marginTop="6dp" android:textSize="12sp" - android:textColor="#1C1B1F" + android:textColor="#565656" android:gravity="center" android:maxLines="2" /> - + android:src="@drawable/ic_arrow_right" + android:contentDescription="@null" /> @@ -142,8 +139,8 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:text="TOTAL AMOUNT" - android:textSize="11sp" - android:textColor="#49454F" + android:textSize="13sp" + android:textColor="#a0a2a1" android:letterSpacing="0.08" android:gravity="center" android:paddingTop="10dp" @@ -153,9 +150,8 @@ android:id="@+id/tvAmount" android:layout_width="match_parent" android:layout_height="wrap_content" - android:textSize="28sp" - android:textStyle="bold" - android:textColor="#E65100" + android:textSize="34sp" + android:textColor="#f14f0f" android:gravity="center" android:paddingBottom="10dp" /> @@ -163,49 +159,49 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -230,9 +226,8 @@ android:layout_height="wrap_content" android:layout_marginStart="8dp" android:text="MALDIVES ISLAMIC BANK" - android:textSize="11sp" - android:textStyle="bold" - android:textColor="#49454F" + android:textSize="13sp" + android:textColor="#000000" android:letterSpacing="0.05" /> @@ -246,7 +241,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" - android:background="#FFFFFF" + android:background="?attr/colorSurface" android:paddingHorizontal="12dp" android:paddingTop="8dp" android:paddingBottom="12dp">