From 28d4672878a408584066c0dd065cf70812c13a42 Mon Sep 17 00:00:00 2001 From: kizzy Date: Thu, 13 Nov 2025 01:01:01 +0700 Subject: [PATCH] fixed password for refund --- .../utsmm/kbz/ui/core_ui/InputPasswordFragment.java | 5 +---- .../utsmm/kbz/ui/core_viewmodel/SharedViewModel.java | 4 ++++ .../java/com/utsmm/kbz/ui/qr_pay/QRPayFragment.java | 8 ++++++-- app/src/main/res/layout/fragment_qr_pay.xml | 3 +++ app/src/main/res/navigation/mobile_navigation.xml | 12 ++++++++++++ gradle.properties | 4 ++-- 6 files changed, 28 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/utsmm/kbz/ui/core_ui/InputPasswordFragment.java b/app/src/main/java/com/utsmm/kbz/ui/core_ui/InputPasswordFragment.java index 2644abf..45496fe 100644 --- a/app/src/main/java/com/utsmm/kbz/ui/core_ui/InputPasswordFragment.java +++ b/app/src/main/java/com/utsmm/kbz/ui/core_ui/InputPasswordFragment.java @@ -144,6 +144,7 @@ public class InputPasswordFragment extends DataBindingFragment implements DataBi switch (Objects.requireNonNull(sharedViewModel.transactionsType.getValue())) { case MMQR_REFUND: inputPasswordViewModel.passwordType.setValue(InputPasswordType.SYSTEM); + routeId = R.id.action_inputPasswordFragment_to_qrRefundList; break; case PRE_AUTH_COMPLETE_VOID: inputPasswordViewModel.passwordType.setValue(InputPasswordType.SYSTEM); @@ -245,10 +246,6 @@ public class InputPasswordFragment extends DataBindingFragment implements DataBi if(inputPasswordViewModel.onClickEnter()) { clearLiveData(); - if(sharedViewModel.transactionsType.getValue() == TransactionsType.MMQR_REFUND){ - safePopBackStack(); - return; - } if(sharedViewModel.transactionsType.getValue() == TransactionsType.SETTING) { mListener.onSuccess(); diff --git a/app/src/main/java/com/utsmm/kbz/ui/core_viewmodel/SharedViewModel.java b/app/src/main/java/com/utsmm/kbz/ui/core_viewmodel/SharedViewModel.java index 2837d45..8616f60 100644 --- a/app/src/main/java/com/utsmm/kbz/ui/core_viewmodel/SharedViewModel.java +++ b/app/src/main/java/com/utsmm/kbz/ui/core_viewmodel/SharedViewModel.java @@ -18,6 +18,7 @@ import com.utsmyanmar.paylibs.print.printx.PrintXStatus; import com.utsmyanmar.paylibs.system.SingleLiveEvent; import com.utsmyanmar.paylibs.utils.PrintStatus; import com.utsmyanmar.paylibs.utils.core_utils.SystemParamsOperation; +import com.utsmyanmar.paylibs.utils.iso_utils.TransactionType; import com.utsmyanmar.paylibs.utils.iso_utils.TransactionsType; import com.utsmm.kbz.util.enums.AccountType; import com.utsmm.kbz.util.enums.SettlementType; @@ -167,6 +168,9 @@ public class SharedViewModel extends ViewModel { } + public void setTransactionsType(TransactionsType transactionType) { + this.transactionsType.postValue(transactionType); + } public void setEmvTrans(boolean status) { isEmv.setValue(status); } diff --git a/app/src/main/java/com/utsmm/kbz/ui/qr_pay/QRPayFragment.java b/app/src/main/java/com/utsmm/kbz/ui/qr_pay/QRPayFragment.java index fdbc787..c4b697b 100644 --- a/app/src/main/java/com/utsmm/kbz/ui/qr_pay/QRPayFragment.java +++ b/app/src/main/java/com/utsmm/kbz/ui/qr_pay/QRPayFragment.java @@ -48,7 +48,8 @@ public class QRPayFragment extends DataBindingFragment { @Override protected void initViewModel() { mainViewModel = new ViewModelProvider(requireActivity()).get(MainViewModel.class); - sharedViewModel = new ViewModelProvider(requireActivity()).get(SharedViewModel.class); +// sharedViewModel = new ViewModelProvider(requireActivity()).get(SharedViewModel.class); + sharedViewModel = getFragmentScopeViewModel(SharedViewModel.class); } @Override @@ -76,6 +77,7 @@ public class QRPayFragment extends DataBindingFragment { }); DataBindingConfig config = new DataBindingConfig(R.layout.fragment_qr_pay, BR.mainViewModel, mainViewModel); + config.addBindingParam(BR.sharedViewModel,sharedViewModel); config.addBindingParam(BR.adapter, adapter); return config; } @@ -133,7 +135,9 @@ public class QRPayFragment extends DataBindingFragment { } private void onClickRefund(){ - routeId = R.id.action_qrFragment_to_qr_refund_list; + sharedViewModel.setTransactionsType(TransactionsType.MMQR_REFUND); +// routeId = R.id.action_qrFragment_to_qr_refund_list; + routeId = R.id.action_qrFragment_to_inputPasswordFragment; safeNavigateToRouteId(); } diff --git a/app/src/main/res/layout/fragment_qr_pay.xml b/app/src/main/res/layout/fragment_qr_pay.xml index ab3f5c5..47caf15 100644 --- a/app/src/main/res/layout/fragment_qr_pay.xml +++ b/app/src/main/res/layout/fragment_qr_pay.xml @@ -9,6 +9,9 @@ + + @@ -1090,6 +1096,12 @@ android:id="@+id/action_qrFragment_to_qr_refund_list" app:destination="@id/qrRefundList" /> + diff --git a/gradle.properties b/gradle.properties index c69a442..d0056b9 100644 --- a/gradle.properties +++ b/gradle.properties @@ -8,8 +8,8 @@ # The setting is particularly useful for tweaking memory settings. org.gradle.jvmargs=-Xmx4096m -XX:MaxMetaspaceSize=1024m -Dfile.encoding=UTF-8 # Force Gradle to use system Java instead of Android Studio's JBR -#org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home -org.gradle.java.home=C:\\Program Files\\Microsoft\\jdk-17.0.16.8-hotspot +org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home +#org.gradle.java.home=C:\\Program Files\\Microsoft\\jdk-17.0.16.8-hotspot # Enable parallel builds and configure cache org.gradle.parallel=true