From e873606e4c394e6a6b8729411ed0501895c719b1 Mon Sep 17 00:00:00 2001 From: MooN Date: Sun, 8 Feb 2026 21:28:53 +0630 Subject: [PATCH] combine MPU and internation hosts --- .../main/java/com/utsmm/kbz/MainActivity.java | 8 +- .../kbz/ui/core_ui/InputTraceNoFragment.java | 15 +- .../ui/management/DetailReportFragment.java | 23 +-- .../ManagementFunctionFragment.java | 1 + .../ReprintAnyTransactionFragment.java | 6 +- .../kbz/ui/management/SelectHostFragment.java | 20 +- .../TransactionSummaryFragment.java | 58 ++---- .../ui/qr_pay/RefundCertificateManager.java | 4 +- app/src/main/res/drawable/ic_bank_card.png | Bin 0 -> 5026 bytes .../layout/fragment_select_host_screen.xml | 187 ++++++------------ .../utsmyanmar/baselib/di/NetworkModule.java | 4 +- .../core_utils/SystemParamsSettings.java | 8 +- 12 files changed, 112 insertions(+), 222 deletions(-) create mode 100644 app/src/main/res/drawable/ic_bank_card.png diff --git a/app/src/main/java/com/utsmm/kbz/MainActivity.java b/app/src/main/java/com/utsmm/kbz/MainActivity.java index 5a0d356..6d23398 100644 --- a/app/src/main/java/com/utsmm/kbz/MainActivity.java +++ b/app/src/main/java/com/utsmm/kbz/MainActivity.java @@ -158,10 +158,10 @@ public class MainActivity extends AppCompatActivity implements } private void initKey(){ -// SystemParamsOperation.getInstance().setTmsAddress("https://api-tms-uat.kbzbank.com:8443/sirius"); - SystemParamsOperation.getInstance().setTmsAddress("https://sirius-nest.utsmyanmar.com"); -// SystemParamsOperation.getInstance().setEReceiptAddress("https://api-tms-uat.kbzbank.com:8443/receipt"); - SystemParamsOperation.getInstance().setEReceiptAddress("https://receipt-nest.utsmyanmar.com"); + SystemParamsOperation.getInstance().setTmsAddress("https://api-tms-uat.kbzbank.com:8443/sirius"); +// SystemParamsOperation.getInstance().setTmsAddress("https://sirius-nest.utsmyanmar.com"); + SystemParamsOperation.getInstance().setEReceiptAddress("https://api-tms-uat.kbzbank.com:8443/receipt"); +// SystemParamsOperation.getInstance().setEReceiptAddress("https://receipt-nest.utsmyanmar.com"); PinPad pinPad = MyApplication.getInstance().deviceEngine.getPinPad(); byte[] encryptedPIK = SystemParamsOperation.getInstance().getPIK(); diff --git a/app/src/main/java/com/utsmm/kbz/ui/core_ui/InputTraceNoFragment.java b/app/src/main/java/com/utsmm/kbz/ui/core_ui/InputTraceNoFragment.java index 0bdb261..6fee0b4 100644 --- a/app/src/main/java/com/utsmm/kbz/ui/core_ui/InputTraceNoFragment.java +++ b/app/src/main/java/com/utsmm/kbz/ui/core_ui/InputTraceNoFragment.java @@ -175,10 +175,17 @@ public class InputTraceNoFragment extends DataBindingFragment { sharedViewModel.payDetail.setValue(payDetail); if(sharedViewModel.hostType.getValue() == HostType.MPU) { - sharedViewModel.isEmv.setValue(false); - transProcessViewModel.transType.setValue(sharedViewModel.transactionsType.getValue()); - transProcessViewModel.setOldTransPayDetail(payDetail); - transProcessViewModel.setPayDetail(payDetail); + boolean isMpu = "MPU".equals(payDetail.getAccountType()); + if (isMpu) { + sharedViewModel.isEmv.setValue(false); + transProcessViewModel.transType.setValue(sharedViewModel.transactionsType.getValue()); + transProcessViewModel.setOldTransPayDetail(payDetail); + transProcessViewModel.setPayDetail(payDetail); + } else { + sharedViewModel.isEmv.setValue(true); + emvTransactionProcessViewModel.transType.setValue(sharedViewModel.transactionsType.getValue()); + emvTransactionProcessViewModel.setPayDetail(payDetail); + } } else { sharedViewModel.isEmv.setValue(true); emvTransactionProcessViewModel.transType.setValue(sharedViewModel.transactionsType.getValue()); diff --git a/app/src/main/java/com/utsmm/kbz/ui/management/DetailReportFragment.java b/app/src/main/java/com/utsmm/kbz/ui/management/DetailReportFragment.java index d91a37d..f11a727 100644 --- a/app/src/main/java/com/utsmm/kbz/ui/management/DetailReportFragment.java +++ b/app/src/main/java/com/utsmm/kbz/ui/management/DetailReportFragment.java @@ -94,12 +94,8 @@ public class DetailReportFragment extends DataBindingFragment { managementViewModel.hostTypeDR.setValue("PAYMENT"); managementViewModel.cardTypeDR.setValue("QR PAY"); } else if(sharedViewModel.hostType.getValue() == HostType.MPU) { - managementViewModel.hostTypeDR.setValue("MPU"); - managementViewModel.cardTypeDR.setValue("MPU"); - } else if(sharedViewModel.hostType.getValue() == HostType.VISA_MASTER) { - managementViewModel.hostTypeDR.setValue("VISA/MASTER"); - managementViewModel.cardTypeDR.setValue("VISA/MASTER"); - + managementViewModel.hostTypeDR.setValue("CARD"); + managementViewModel.cardTypeDR.setValue("CARD"); } } @@ -153,7 +149,7 @@ public class DetailReportFragment extends DataBindingFragment { if(sharedViewModel.hostType.getValue() == HostType.MPU) { - if(payDetail.getAccountType().equals("MPU") && payDetail.getTransactionType() != TransactionsType.MMQR_REFUND.value && payDetail.getTransactionType() != TransactionsType.MMQR.value && payDetail.getTransactionType() != TransactionsType.REVERSAL.value && payDetail.getTransactionType() != TransactionsType.SETTLEMENT.value && POSUtil.getInstance().getYesterdayDate().compareTo(POSUtil.getInstance().getDateByString(payDetail.transDate)) < 1) { + if(payDetail.getTransactionType() != TransactionsType.MMQR_REFUND.value && payDetail.getTransactionType() != TransactionsType.MMQR.value && payDetail.getTransactionType() != TransactionsType.REVERSAL.value && payDetail.getTransactionType() != TransactionsType.SETTLEMENT.value && POSUtil.getInstance().getYesterdayDate().compareTo(POSUtil.getInstance().getDateByString(payDetail.transDate)) < 1) { boolean isNeedMinusSign = payDetail.getTransactionType() == TransactionsType.VOID.value || payDetail.getTransactionType() == TransactionsType.REFUND.value; lists.add(payDetail); count++; @@ -175,19 +171,6 @@ public class DetailReportFragment extends DataBindingFragment { totalAmount += payDetail.getAmount(); } } - } if(sharedViewModel.hostType.getValue() == HostType.VISA_MASTER) { - - if(!payDetail.getAccountType().equals("MPU") && payDetail.getTransactionType() != TransactionsType.MMQR_REFUND.value && payDetail.getTransactionType() != TransactionsType.MMQR.value && payDetail.getTransactionType() != TransactionsType.REVERSAL.value && payDetail.getTransactionType() != TransactionsType.SETTLEMENT.value && POSUtil.getInstance().getYesterdayDate().compareTo(POSUtil.getInstance().getDateByString(payDetail.transDate)) < 1) { - boolean isNeedMinusSign = payDetail.getTransactionType() == TransactionsType.VOID.value || payDetail.getTransactionType() == TransactionsType.REFUND.value; - lists.add(payDetail); - count++; - if(isNeedMinusSign) { - totalAmount -= payDetail.getAmount(); - } else { - totalAmount += payDetail.getAmount(); - } - } - } } diff --git a/app/src/main/java/com/utsmm/kbz/ui/management/ManagementFunctionFragment.java b/app/src/main/java/com/utsmm/kbz/ui/management/ManagementFunctionFragment.java index 4a86eca..d6e4eaf 100644 --- a/app/src/main/java/com/utsmm/kbz/ui/management/ManagementFunctionFragment.java +++ b/app/src/main/java/com/utsmm/kbz/ui/management/ManagementFunctionFragment.java @@ -122,6 +122,7 @@ public class ManagementFunctionFragment extends DataBindingFragment { public void onClickReprintLastTrans() { sharedViewModel.setTransMenu(TransMenu.REPRINT); + sharedViewModel.suppressReprintButtons.setValue(false); observeLastTransaction(); } diff --git a/app/src/main/java/com/utsmm/kbz/ui/management/ReprintAnyTransactionFragment.java b/app/src/main/java/com/utsmm/kbz/ui/management/ReprintAnyTransactionFragment.java index d1168a9..6b14fe7 100644 --- a/app/src/main/java/com/utsmm/kbz/ui/management/ReprintAnyTransactionFragment.java +++ b/app/src/main/java/com/utsmm/kbz/ui/management/ReprintAnyTransactionFragment.java @@ -308,7 +308,7 @@ public class ReprintAnyTransactionFragment extends DataBindingFragment { // April 2, 2024 client requested to add QR host at host selection type if(sharedViewModel.hostType.getValue() == HostType.MPU) { - if(pay.getAccountType().equals("MPU") && pay.getTransactionType() != TransactionsType.MMQR.value && pay.getTransactionType() != TransactionsType.MMQR_REFUND.value) { + if(pay.getTransactionType() != TransactionsType.MMQR.value && pay.getTransactionType() != TransactionsType.MMQR_REFUND.value) { filteredLists.add(pay); } @@ -318,10 +318,6 @@ public class ReprintAnyTransactionFragment extends DataBindingFragment { filteredLists.add(pay); } } - } else if(sharedViewModel.hostType.getValue() == HostType.VISA_MASTER) { - if(!pay.getAccountType().equals("MPU") && pay.getTransactionType() != TransactionsType.MMQR.value && pay.getTransactionType() != TransactionsType.MMQR_REFUND.value) { - filteredLists.add(pay); - } } } diff --git a/app/src/main/java/com/utsmm/kbz/ui/management/SelectHostFragment.java b/app/src/main/java/com/utsmm/kbz/ui/management/SelectHostFragment.java index 6ee3b32..733be93 100644 --- a/app/src/main/java/com/utsmm/kbz/ui/management/SelectHostFragment.java +++ b/app/src/main/java/com/utsmm/kbz/ui/management/SelectHostFragment.java @@ -354,13 +354,11 @@ public class SelectHostFragment extends DataBindingFragment implements DataBindi } break; case TIP_ADJUSTMENT: - if(sharedViewModel.hostType.getValue() == HostType.VISA_MASTER) { + if(sharedViewModel.hostType.getValue() != HostType.QR) { routeId = R.id.action_selectHostFragment_to_inputTraceFragment; - } else { routeId = R.id.action_selectHostFragment_to_errorFragment; sharedViewModel.set_errorFragmentMsg(getResourceString(R.string.txt_tip_adjust_not_allowed)); - } safeNavigateToRouteId(); break; @@ -411,23 +409,9 @@ public class SelectHostFragment extends DataBindingFragment implements DataBindi public class ClickEvent { - public void onClickVisaMaster() { - sharedViewModel.hostType.setValue(HostType.VISA_MASTER); - - if(SystemParamsOperation.getInstance().isEmvEnabled()) { - observeRoute(); - } else { - showSingleInfoDialog("Currently this menu is unavailable!"); - } - - } - - public void onClickMPU() { - + public void onClickCards() { sharedViewModel.hostType.setValue(HostType.MPU); - observeRoute(); - } public void onClickQR() { diff --git a/app/src/main/java/com/utsmm/kbz/ui/management/TransactionSummaryFragment.java b/app/src/main/java/com/utsmm/kbz/ui/management/TransactionSummaryFragment.java index a3d62e7..b63ea16 100644 --- a/app/src/main/java/com/utsmm/kbz/ui/management/TransactionSummaryFragment.java +++ b/app/src/main/java/com/utsmm/kbz/ui/management/TransactionSummaryFragment.java @@ -282,44 +282,22 @@ public class TransactionSummaryFragment extends DataBindingFragment { waveRefund.inc(pay.amount); } } else if (sharedViewModel.hostType.getValue() == HostType.MPU) { - if ("MPU".equals(pay.getAccountType())) { - if (pay.getTransactionType() == TransactionsType.VOID.value) { - voidTran.inc(pay.amount); - } else if (pay.getTransactionType() == TransactionsType.SALE.value) { - sale.inc(pay.amount); - } else if (pay.getTransactionType() == TransactionsType.CASH_OUT.value) { - ca.inc(pay.amount); - } else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_SALE.value) { - preAuth.inc(pay.amount); - } else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_VOID.value) { - preAuthVoid.inc(pay.amount); - } else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_COMPLETE.value) { - preAuthComp.inc(pay.amount); - } else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_COMPLETE_VOID.value) { - preAuthCompVoid.inc(pay.amount); - } else if (pay.getTransactionType() == TransactionsType.REFUND.value) { - refund.inc(pay.amount); - } - } - } else if (sharedViewModel.hostType.getValue() == HostType.VISA_MASTER) { - if (!"MPU".equals(pay.getAccountType())) { - if (pay.getTransactionType() == TransactionsType.VOID.value) { - voidTran.inc(pay.amount); - } else if (pay.getTransactionType() == TransactionsType.SALE.value) { - sale.inc(pay.amount); - } else if (pay.getTransactionType() == TransactionsType.CASH_OUT.value) { - ca.inc(pay.amount); - } else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_SALE.value) { - preAuth.inc(pay.amount); - } else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_VOID.value) { - preAuthVoid.inc(pay.amount); - } else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_COMPLETE.value) { - preAuthComp.inc(pay.amount); - } else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_COMPLETE_VOID.value) { - preAuthCompVoid.inc(pay.amount); - } else if (pay.getTransactionType() == TransactionsType.REFUND.value) { - refund.inc(pay.amount); - } + if (pay.getTransactionType() == TransactionsType.VOID.value) { + voidTran.inc(pay.amount); + } else if (pay.getTransactionType() == TransactionsType.SALE.value) { + sale.inc(pay.amount); + } else if (pay.getTransactionType() == TransactionsType.CASH_OUT.value) { + ca.inc(pay.amount); + } else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_SALE.value) { + preAuth.inc(pay.amount); + } else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_VOID.value) { + preAuthVoid.inc(pay.amount); + } else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_COMPLETE.value) { + preAuthComp.inc(pay.amount); + } else if (pay.getTransactionType() == TransactionsType.PRE_AUTH_COMPLETE_VOID.value) { + preAuthCompVoid.inc(pay.amount); + } else if (pay.getTransactionType() == TransactionsType.REFUND.value) { + refund.inc(pay.amount); } } } @@ -350,9 +328,7 @@ public class TransactionSummaryFragment extends DataBindingFragment { if (sharedViewModel.hostType.getValue() == HostType.QR) { return "WALLET"; } else if (sharedViewModel.hostType.getValue() == HostType.MPU) { - return "MPU"; - } else if (sharedViewModel.hostType.getValue() == HostType.VISA_MASTER) { - return "Visa/Master"; + return "CARD"; } return ""; } diff --git a/app/src/main/java/com/utsmm/kbz/ui/qr_pay/RefundCertificateManager.java b/app/src/main/java/com/utsmm/kbz/ui/qr_pay/RefundCertificateManager.java index ec51cd8..136ab3f 100644 --- a/app/src/main/java/com/utsmm/kbz/ui/qr_pay/RefundCertificateManager.java +++ b/app/src/main/java/com/utsmm/kbz/ui/qr_pay/RefundCertificateManager.java @@ -42,8 +42,8 @@ public class RefundCertificateManager { return; }; - String downloadBase = tmsAddress.trim() + "/api/v1/file/download?filePath="; //local -// String downloadBase = tmsAddress.trim() + "/file/download?filePath="; // uat and prod +// String downloadBase = tmsAddress.trim() + "/api/v1/file/download?filePath="; //local + String downloadBase = tmsAddress.trim() + "/file/download?filePath="; // uat and prod String certUrl = SystemParamsOperation.getInstance().getCertificateUrl(); String clientCertUrl = SystemParamsOperation.getInstance().getCertificateClientUrl(); diff --git a/app/src/main/res/drawable/ic_bank_card.png b/app/src/main/res/drawable/ic_bank_card.png new file mode 100644 index 0000000000000000000000000000000000000000..f71da732b7b90e6ba609e12d4d3c518b4008215e GIT binary patch literal 5026 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/layout/fragment_select_host_screen.xml b/app/src/main/res/layout/fragment_select_host_screen.xml index d793f85..c612f3f 100644 --- a/app/src/main/res/layout/fragment_select_host_screen.xml +++ b/app/src/main/res/layout/fragment_select_host_screen.xml @@ -86,9 +86,9 @@ android:layout_height="wrap_content" android:orientation="vertical"> - + + android:onClick="@{()->click.onClickCards()}"> - + + + + + + - - + + + + + + + - + + + + + + - + + + + + + - + + + + + - - + - + + + + + + - + + + + + + - + + + + + - + + + + - - - - - - - - - - - - - - - - - - - - - - - - -