From e443f7b452484b9370ebf5057e2a6e796cc8e482 Mon Sep 17 00:00:00 2001 From: ahmeddatexpay Date: Mon, 1 Sep 2025 16:11:14 +0300 Subject: [PATCH] fix passing amount to payment on pinpad --- .../dspread/pos/ui/pinpad/PinpadViewModel.java | 17 ++++++++++------- .../src/main/res/layout/waiting_for_card.xml | 2 +- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/pos_android_app/src/main/java/com/dspread/pos/ui/pinpad/PinpadViewModel.java b/pos_android_app/src/main/java/com/dspread/pos/ui/pinpad/PinpadViewModel.java index 00e3673..e428c37 100644 --- a/pos_android_app/src/main/java/com/dspread/pos/ui/pinpad/PinpadViewModel.java +++ b/pos_android_app/src/main/java/com/dspread/pos/ui/pinpad/PinpadViewModel.java @@ -58,13 +58,14 @@ public class PinpadViewModel extends BaseAppViewModel { // Get the amount from the signal (or use the current amount) String signalAmount = results.optString("amount", null); + Log.d(TAG, "onPaymentRedirected: amount " + signalAmount); if (signalAmount != null) { amount.set(formatAmount(signalAmount)); } // Trigger navigation via the event - String amountToPass = results.optString("rawAmount", getRawAmount()); - paymentStartEvent.postValue(amountToPass); +// String amountToPass = results.optString("rawAmount", getRawAmount()); + paymentStartEvent.postValue(signalAmount); break; default: @@ -77,9 +78,11 @@ public class PinpadViewModel extends BaseAppViewModel { // Helper method to get raw amount (without formatting) private String getRawAmount() { + String formatted = amount.get(); + try { // Convert formatted amount back to raw cents - String formatted = amount.get(); + if (formatted != null) { double amountDouble = Double.parseDouble(formatted); return String.valueOf((int)(amountDouble * 100)); @@ -87,11 +90,11 @@ public class PinpadViewModel extends BaseAppViewModel { } catch (NumberFormatException e) { Log.e(TAG, "Error converting amount back to raw", e); } - return "1000"; // default fallback + return formatted; // default fallback } // Method to manually trigger payment (if needed) - public void triggerPayment() { - paymentStartEvent.postValue(getRawAmount()); - } +// public void triggerPayment() { +// paymentStartEvent.postValue(getRawAmount()); +// } } \ No newline at end of file diff --git a/pos_android_app/src/main/res/layout/waiting_for_card.xml b/pos_android_app/src/main/res/layout/waiting_for_card.xml index ea3f1fd..d30cebe 100644 --- a/pos_android_app/src/main/res/layout/waiting_for_card.xml +++ b/pos_android_app/src/main/res/layout/waiting_for_card.xml @@ -195,7 +195,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" - android:visibility="visible" + android:visibility="gone" android:background="@android:color/black">