From 49c3cc5b8dcd2c20dd4b5d2d995159b089935d90 Mon Sep 17 00:00:00 2001 From: "Serik.Uvaissov" Date: Fri, 17 Jul 2020 20:28:43 +0600 Subject: [PATCH] up dependencies version --- android/app/build.gradle | 9 + .../bank/ActivationCallbackHandlerImpl.java | 65 --- .../AlipayPaymentCallbackHandlerImpl.java | 175 ------- .../AuthorizationCallbackHandlerImpl.java | 42 -- .../bank/CardPaymentCallbackHandlerImpl.java | 465 ------------------ .../bank/CardReadingCallbackHandlerImpl.java | 217 -------- .../bank/CardRefundCallbackHandlerImpl.java | 336 ------------- .../bank/CashPaymentCallbackHandlerImpl.java | 187 ------- .../CheckConnectionCallbackHandlerImpl.java | 25 - .../bank/CloseDayCallbackHandlerImpl.java | 52 -- .../aman/kassa/bank/CustomApplication.java | 21 - .../kassa/bank/CustomSSLSocketFactory.java | 81 --- .../aman/kassa/bank/CustomTrustManager.java | 40 -- .../com/aman/kassa/bank/DataCreatorUtils.java | 144 ------ .../EasyAlipayRefundCallbackHandlerImpl.java | 152 ------ .../EasyCardReversalCallbackHandlerImpl.java | 363 -------------- .../EasyCashRefundCallbackHandlerImpl.java | 153 ------ .../EasyEcomRefundCallbackHandlerImpl.java | 157 ------ .../bank/EasyReversalCallbackHandlerImpl.java | 177 ------- .../bank/EcomPaymentCallbackHandlerImpl.java | 174 ------- .../bank/GetLicenseCallbackHandlerImpl.java | 34 -- .../GetMerchantUsersCallbackHandlerImpl.java | 38 -- .../GetSerialNumberCallbackHandlerImpl.java | 103 ---- ...TransactionDetailsCallbackHandlerImpl.java | 84 ---- ...ctionListForRefundCallbackHandlerImpl.java | 62 --- .../LoadTerminalKeysCallbackHandlerImpl.java | 133 ----- .../kassa/bank/LogOutCallbackHandlerImpl.java | 29 -- .../com/aman/kassa/bank/M4BankActivity.java | 146 +++--- .../bank/PrintingCallbackHandlerImpl.java | 77 --- .../ReconciliationPrinterDataBuilder.java | 73 --- .../ResendReceiptCallbackHandlerImpl.java | 64 --- .../bank/ReversalCallbackHandlerImpl.java | 154 ------ ...rtCurrentOperationCallbackHandlerImpl.java | 309 ------------ .../bank/ScanBarCodeCallbackHandlerImpl.java | 72 --- ...endRegisterRequestCallbackHandlerImpl.java | 24 - .../SessionExpiringCallbackHandlerImpl.java | 11 - .../aman/kassa/bank/TerminalKeyTypeMpos.java | 5 - .../bank/XReportCallbackHandlerImpl.java | 72 --- .../builders/SslConfigurationBuilder.java | 50 -- .../kassa/bank/gui/CustomKeyBoardDilalog.java | 129 ----- .../kassa/bank/gui/SelectDialogCallback.java | 10 - .../kassa/bank/gui/SelectElementDialog.java | 64 --- .../bank/managing/PreferencesManager.java | 37 -- .../bank/permissions/PermissionsManager.java | 11 - .../permissions/PermissionsManagerImpl.java | 65 --- .../app/src/main/res/layout/activity_main.xml | 200 ++++---- android/app/src/main/res/values/strings.xml | 5 +- android/build.gradle | 36 +- 48 files changed, 229 insertions(+), 4903 deletions(-) delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/ActivationCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/AlipayPaymentCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/AuthorizationCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/CardPaymentCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/CardReadingCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/CardRefundCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/CashPaymentCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/CheckConnectionCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/CloseDayCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/CustomApplication.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/CustomSSLSocketFactory.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/CustomTrustManager.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/DataCreatorUtils.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/EasyAlipayRefundCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/EasyCardReversalCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/EasyCashRefundCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/EasyEcomRefundCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/EasyReversalCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/EcomPaymentCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/GetLicenseCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/GetMerchantUsersCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/GetSerialNumberCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/GetTransactionDetailsCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/GetTransactionListForRefundCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/LoadTerminalKeysCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/LogOutCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/PrintingCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/ReconciliationPrinterDataBuilder.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/ResendReceiptCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/ReversalCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/RevertCurrentOperationCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/ScanBarCodeCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/SendRegisterRequestCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/SessionExpiringCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/TerminalKeyTypeMpos.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/XReportCallbackHandlerImpl.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/builders/SslConfigurationBuilder.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/gui/CustomKeyBoardDilalog.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/gui/SelectDialogCallback.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/gui/SelectElementDialog.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/managing/PreferencesManager.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/permissions/PermissionsManager.java delete mode 100644 android/app/src/main/java/kz/com/aman/kassa/bank/permissions/PermissionsManagerImpl.java diff --git a/android/app/build.gradle b/android/app/build.gradle index 962e39c..c8bcc2f 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -62,6 +62,9 @@ android { } } buildTypes { + all { + buildConfigField ("String[]", "SUPPORTED_DEVICES", collectSupportedDevicesToArray()) + } release { signingConfig signingConfigs.release } @@ -123,3 +126,9 @@ dependencies { implementation deps.websockets // Only for useWebsockets parameter } + +def collectSupportedDevicesToArray() { + return '{' + rootProject.ext."supportedDevices${getProject().name}".collect { + "\"${it}\"" + }.join(",") + '}' +} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/ActivationCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/ActivationCallbackHandlerImpl.java deleted file mode 100644 index f28a468..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/ActivationCallbackHandlerImpl.java +++ /dev/null @@ -1,65 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.app.AlertDialog; -import android.widget.EditText; -import android.widget.Toast; - -import ru.m4bank.mpos.service.result.Result; -import ru.m4bank.mpos.library.external.authorization.ActivationCallbackHandler; -import ru.m4bank.mpos.service.data.dynamic.objects.ActivationType; -import timber.log.Timber; - -public class ActivationCallbackHandlerImpl implements ActivationCallbackHandler { - private final M4BankActivity activity; - - public ActivationCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onActivationTypeAndInfoRequested() { - Timber.i("FIRST STEP STARTED"); - activity.getClientInterface().getAuthorizationManager().sendActivationFirstStepData(ActivationType.EMAIL, "dm@centercorptech.net"); - } - - @Override - public void onActivationCodeRequested(Integer codeLifetime) { - Timber.i("FIRST STEP COMPLETED"); - Timber.i("SECOND STEP STARTED"); - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("ADD activation code:"); - - EditText editext = new EditText(activity); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface().getAuthorizationManager().sendActivationCode(editext.getText().toString()); - dialog.dismiss(); - }); - - builder.setView(editext); - activity.runOnUiThread(() -> builder.create().show()); - } - - @Override - public void onActivationConfirmRequested() { - Timber.i("SECOND STEP COMPLETED"); - Timber.i("LAST STEP STARTED"); - activity.getClientInterface().getAuthorizationManager().confirmActivation("1234", null); - } - - - @Override - public void onCompleted(Result result) { - Timber.i("COMPLETED WITH RESULT - " + result.getResultType()); - } - - @Override - public void onWrongApiCalled() { - Timber.i("WRONG API CALLED"); - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/AlipayPaymentCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/AlipayPaymentCallbackHandlerImpl.java deleted file mode 100644 index 91443b7..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/AlipayPaymentCallbackHandlerImpl.java +++ /dev/null @@ -1,175 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.app.AlertDialog; -import android.widget.EditText; -import android.widget.Toast; - -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.AlipayPaymentCallbackHandler; -import ru.m4bank.mpos.service.data.FiscalStatusData; -import ru.m4bank.mpos.service.data.dynamic.objects.AdditionalTransactionData; -import ru.m4bank.mpos.service.data.dynamic.objects.AlipayCodeType; -import ru.m4bank.mpos.service.data.dynamic.objects.IdentityCodeType; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.hardware.error.ErrorHandler; -import ru.m4bank.mpos.service.result.PrinterResult; -import ru.m4bank.mpos.service.result.Result; -import ru.m4bank.mpos.service.transactions.data.TransactionData; -import ru.m4bank.mpos.service.transactions.data.TransactionExecutionStatus; -import ru.m4bank.mpos.service.transactions.data.error.TransactionErrorData; -import timber.log.Timber; - -public class AlipayPaymentCallbackHandlerImpl implements AlipayPaymentCallbackHandler { - - private final M4BankActivity activity; - - public AlipayPaymentCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onWorkFlowDataRequested() { - Timber.d("WorkFlow requested"); - } - - @Override - public void onTransactionAmountRequested() { - activity.getClientInterface().getTransactionManager().setTransactionAmount(activity.getAmount()); - } - - @Override - public void onTransactionDataRequested() { - activity.getClientInterface().getTransactionManager().setAdditionalTransactionData(new AdditionalTransactionData.Builder(null).build()); - } - - @Override - public void onTransactionBarCodeRequested() { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("ADD QRCODE:"); - - EditText editext = new EditText(activity); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface().getTransactionManager().setTransactionBarCode(new IdentityCodeType(AlipayCodeType.QRCODE, editext.getText().toString())); - dialog.dismiss(); - }); - - builder.setView(editext); - activity.runOnUiThread(() -> builder.create().show()); - } - - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), - Toast.LENGTH_SHORT).show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onTransactionInit() { - activity.getClientInterface().getTransactionManager().processOnlineTransaction(false); - } - - - @Override - public void onTransactionExecutionStatusChanged(TransactionExecutionStatus newStatus) { - - } - - @Override - public void onError(ErrorHandler errorHandler, TransactionErrorData transactionErrorData) { - - } - - @Override - public void onErrorWithPossibilityToRetry(ErrorHandler errorHandler) { - activity.runOnUiThread(() -> Toast.makeText(activity, errorHandler.getFinalDescription() == null ? "" : errorHandler.getFinalDescription(), Toast.LENGTH_LONG).show()); - activity.getClientInterface().getTransactionManager().tryToRepeatExecuteLastRequestInTransaction(); - } - - @Override - public void onTransactionDataReceivedError(TransactionData data) { - - } - - @Override - public void onUserInformationRequested(boolean signNeeded) { - activity.getClientInterface() - .getTransactionManager() - .sendTransactionUserData("signature", "phone", "email"); - } - - @Override - public void onTransactionDataReceived(TransactionData data) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction data has been received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onTransactionCompleted() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Operation has been successfully completed", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void notAuthorized() { - - } - - @Override - public void onTransactionDetailsReceived(Transaction transaction) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction details received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onSuccessStatusTransaction(Transaction transaction) { - - } - - @Override - public void onErrorStatusTransaction() { - - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRequestedReportZ() { - - } - - @Override - public void onCompletedPrinting(PrinterResult printerResult) { - - } - - @Override - public void onStatusFiscalModule(FiscalStatusData fiscalStatusData) { - - } - - @Override - public void onPrinterForRegistrationGettingCompleted() { - - } - - @Override - public void onNoBoundedPrinterFound() { - - } - - @Override - public void onPrinterToUseSelectionRequested(List printerList) { - - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/AuthorizationCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/AuthorizationCallbackHandlerImpl.java deleted file mode 100644 index 1d7cfd7..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/AuthorizationCallbackHandlerImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.widget.Toast; -import ru.m4bank.mpos.library.external.authorization.AuthorizationCallbackHandler; -import ru.m4bank.mpos.service.authorization.network.AuthorizationResponse; - - -public class AuthorizationCallbackHandlerImpl implements AuthorizationCallbackHandler { - private final M4BankActivity activity; - - public AuthorizationCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onLoginAndPasswordRequested() { - activity.getClientInterface().getAuthorizationManager().sendLoginAndPassword(activity.getLogin(), activity.getPassword()); - } - - - @Override - public void onCompleted(ru.m4bank.mpos.service.result.Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), - Toast.LENGTH_SHORT).show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCompleted(ru.m4bank.mpos.service.result.Result result, AuthorizationResponse authorizationResponse) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), - Toast.LENGTH_SHORT).show()); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/CardPaymentCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/CardPaymentCallbackHandlerImpl.java deleted file mode 100644 index 77feb91..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/CardPaymentCallbackHandlerImpl.java +++ /dev/null @@ -1,465 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.app.AlertDialog; -import android.widget.ArrayAdapter; -import android.widget.Spinner; -import android.widget.Toast; - -import kz.com.aman.kassa.bank.gui.CustomKeyBoardDilalog; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.CardPaymentCallbackHandler; -import ru.m4bank.mpos.service.commons.data.ResultType; -import ru.m4bank.mpos.service.data.FiscalStatusData; -import ru.m4bank.mpos.service.data.PrinterBaseData; -import ru.m4bank.mpos.service.data.PrinterErrorData; -import ru.m4bank.mpos.service.data.dynamic.objects.AdditionalTransactionData; -import ru.m4bank.mpos.service.data.dynamic.objects.GoodsData; -import ru.m4bank.mpos.service.data.dynamic.objects.Reader; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.data.dynamic.objects.VendorData; -import ru.m4bank.mpos.service.data.dynamic.objects.printer.enums.AccountingSubject; -import ru.m4bank.mpos.service.data.dynamic.objects.printer.enums.TaxRate; -import ru.m4bank.mpos.service.data.dynamic.objects.result.ResultCode; -import ru.m4bank.mpos.service.hardware.error.AllError; -import ru.m4bank.mpos.service.hardware.error.ErrorHandler; -import ru.m4bank.mpos.service.hardware.external.cardreaderlib.data.ApplicationIdConv; -import ru.m4bank.mpos.service.hardware.external.cardreaderlib.data.enums.TransactionTypeConv; -import ru.m4bank.mpos.service.hardware.external.cardreaderlib.data.enums.VirtualKeyboardStyleTypeConv; -import ru.m4bank.mpos.service.result.PrinterResult; -import ru.m4bank.mpos.service.result.Result; -import ru.m4bank.mpos.service.transactions.data.ButtonKeyboardDto; -import ru.m4bank.mpos.service.transactions.data.MessageButtonData; -import ru.m4bank.mpos.service.transactions.data.TransactionData; -import ru.m4bank.mpos.service.transactions.data.TransactionExecutionStatus; -import ru.m4bank.mpos.service.transactions.data.VirtualPinKeyboardData; -import ru.m4bank.mpos.service.transactions.data.error.TransactionErrorData; -import ru.m4bank.mpos.service.transactions.dto.OnlineCardDataDto; -import timber.log.Timber; - -public class CardPaymentCallbackHandlerImpl implements CardPaymentCallbackHandler { - private final M4BankActivity activity; - private CustomKeyBoardDilalog customKeyBoardDilalog; - private TransactionTypeConv transactionTypeConv; - - public CardPaymentCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - customKeyBoardDilalog = new CustomKeyBoardDilalog(); - transactionTypeConv = TransactionTypeConv.UNKNOWN; - } - - public CardPaymentCallbackHandlerImpl setTransactionTypeConv(TransactionTypeConv transactionTypeConv) { - this.transactionTypeConv = transactionTypeConv; - return this; - } - - @Override - public void onDeviceToConnectSelectionRequested(List deviceList) { - Timber.d("onDeviceToConnectSelectionRequested"); - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose device"); - - Spinner deviceListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, deviceList); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - deviceListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface() - .getTransactionManager() - .selectCardReader(deviceListSpinner.getSelectedItem().toString()); - dialog.dismiss(); - }); - - builder.setView(deviceListSpinner); - builder.create().show(); - }); - } - - @Override - public void onCardReaderForTransactionGettingCompleted() { - Timber.d("Reader has been received"); - } - - @Override - public void onNoBoundedDevicesFound() { - Timber.d("No bounded readers"); - } - - @Override - public void onDeviceToUseSelectionRequested(List deviceList) { - Timber.d("onDeviceToUseSelectionRequested"); - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose device"); - - Spinner deviceListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, new ArrayList<>(deviceList)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - deviceListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface() - .getTransactionManager() - .setCardReaderToUse((Reader) deviceListSpinner.getSelectedItem()); - dialog.dismiss(); - }); - - builder.setView(deviceListSpinner); - builder.create().show(); - }); - } - - @Override - public void onTransactionAmountRequested() { - Timber.d("onTransactionAmountRequested"); - activity.getClientInterface().getTransactionManager().setTransactionAmount(activity.getAmount()); - } - - @Override - public void onTransactionDataRequested() { - Timber.d("onTransactionDataRequested"); - List goodsDataList = new ArrayList<>(); - goodsDataList.add(new GoodsData.Builder() - .setOriginalPrice(100000L) - .setRealPrice(100000L) - .setName("Принтер") - .setQuantity(1) - .setCode("000001") - .setUnits("00") - .setDiscount(0L) - .setTaxRate(TaxRate.Tax_18) - .setExponent(2) - .setAccountingSubject(AccountingSubject.PRODUCT) - .build()); - goodsDataList.add(new GoodsData.Builder() - .setOriginalPrice(30065L) - .setRealPrice(30065L) - .setName("Услуга") - .setQuantity(3) - .setCode("000002") - .setUnits("00") - .setDiscount(0L) - .setTaxRate(TaxRate.Tax_18) - .setExponent(2) - .setAccountingSubject(AccountingSubject.PRODUCT) - .build()); - - HashMap vendorDescription = new HashMap<>(); - vendorDescription.put("vendor", "description"); - vendorDescription.put("vendor1", "description1"); - vendorDescription.put("vendor2", "description2"); - vendorDescription.put("vendor3", "description3"); - VendorData vendorData = new VendorData(vendorDescription); - - AdditionalTransactionData additionalTransactionData = new AdditionalTransactionData.Builder(goodsDataList).vendorData(vendorData).build(); - activity.getClientInterface().getTransactionManager().setAdditionalTransactionData(additionalTransactionData); - } - - @Override - public void onWorkFlowDataRequested() { - Timber.d("WorkFlow requested"); - } - - @Override - public void onCompleted(Result result) { - Timber.d("onCompleted"); - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onWrongApiCalled() { - Timber.d("onWrongApiCalled"); - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onReceiveCardData(OnlineCardDataDto data, boolean shouldConfirmBeManuallyCalled) { - Timber.d("onReceiveCardData"); - if (shouldConfirmBeManuallyCalled) { - activity.getClientInterface().getTransactionManager().processOnlineTransaction(false); - } - } - - @Override - public void onTransactionInit() { - //Impossible - activity.getClientInterface().getTransactionManager().processOnlineTransaction(false); - } - - - @Override - public void onTransactionExecutionStatusChanged(TransactionExecutionStatus newStatus) { - Timber.d("onTransactionExecutionStatusChanged: " + newStatus.name()); - activity.runOnUiThread(() -> Toast.makeText(activity, newStatus.name(), Toast.LENGTH_SHORT).show()); - } - - @Override - public void onError(ErrorHandler errorHandler, TransactionErrorData transactionErrorData) { - if (transactionErrorData.getError() != null) { - activity.runOnUiThread(() -> Toast.makeText(activity, transactionErrorData.getError().getDescription(), Toast.LENGTH_LONG).show()); - } else { - Timber.d("onError: %s, description: %s", ((AllError) errorHandler).name(), errorHandler.getDescription()); - activity.runOnUiThread(() -> Toast.makeText(activity, String.format("onError: %s, description: %s", ((AllError) errorHandler).name(), errorHandler.getFinalDescription()), Toast.LENGTH_LONG).show()); - } - } - - @Override - public void onErrorWithPossibilityToRetry(ErrorHandler errorHandler) { - Timber.d("onErrorWithPossibilityToRetry: %s, description: %s", ((AllError) errorHandler).name(), errorHandler.getDescription()); - activity.runOnUiThread(() -> Toast.makeText(activity, String.format("onError: %s, description: %s", ((AllError) errorHandler).name(), errorHandler.getFinalDescription()), Toast.LENGTH_LONG).show()); - activity.getClientInterface().getTransactionManager().tryToRepeatExecuteLastRequestInTransaction(); - } - - @Override - public void onTransactionDataReceivedError(TransactionData data) { - Timber.d("onTransactionDataReceivedError"); - } - - @Override - public void onUserInformationRequested(boolean signNeeded) { - Timber.d("onUserInformationRequested"); - if (transactionTypeConv != TransactionTypeConv.CANCEL) { - activity.getClientInterface() - .getTransactionManager() - .sendTransactionUserData("signature", "phone", "vsa@centercorptech.net"); - } else { - onTransactionCompleted(); - } - } - - @Override - public void onTransactionDataReceived(TransactionData data) { - Timber.d("onTransactionDataReceived"); - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction data has been received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onTransactionCompleted() { - Timber.d("onTransactionCompleted"); - activity.runOnUiThread(() -> Toast.makeText(activity, "Operation has been successfully completed", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onRequiredHostAddress() { - Timber.d("onRequiredHostAddress"); - activity.runOnUiThread(() -> Toast.makeText(activity, "Set Host Address", Toast.LENGTH_LONG) - .show()); - activity.getClientInterface().getTransactionManager().setHostAddress("213.79.122.128", "8011"); - } - - @Override - public void onDisconnectedEventReceivedOrCanNotEstablishConnection(boolean reconnectAvailable, String description) { - Timber.d("onDisconnectedEventReceivedOrCanNotEstablishConnection"); - if (reconnectAvailable) { - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setMessage("Connection to cardreader has been lost, try to reconnect and repeat last operation?"); - builder.setCancelable(false); - builder.setPositiveButton("Yes", (dialog, which) -> activity.getClientInterface().tryToReconnectAndRepeatLast()); - builder.setNegativeButton("No", (dialog, which) -> activity.getClientInterface().cancel()); - builder.create().show(); - }); - } - } - - @Override - public void onConnectingProcessStarted(String deviceName) { - Timber.d("Connecting process started: %s", deviceName); - } - - @Override - public void onReconnectNeededToProcess() { - Timber.d("onReconnectNeededToProcess"); - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setMessage("Connection to cardreader has been lost, try to reconnect and continue?"); - builder.setCancelable(false); - builder.setPositiveButton("Yes", (dialog, which) -> activity.getClientInterface().getTransactionManager().tryToReconnectToCardReader()); - builder.setNegativeButton("No", (dialog, which) -> activity.getClientInterface().cancel()); - builder.create().show(); - }); - } - - @Override - public void onReconciliationRequiredToProcess() { - Timber.d("onReconciliationRequiredToProcess"); - Timber.d("Reconciliation required!!!"); - activity.getClientInterface().getTransactionManager().makeReconciliationDuringTransaction(); - } - - @Override - public void onReconciliationCompleted(Result result) { - Timber.d("onReconciliationCompleted"); - Timber.d("Reconciliation completed!!!"); - if (result.getResultType() == ResultType.SUCCESSFUL) { - activity.getClientInterface().getTransactionManager().continueTransactionAfterReconciliation(); - } else { - activity.runOnUiThread(() -> Toast.makeText(activity, "Reconciliation failed " + result.getDescription(), Toast.LENGTH_LONG) - .show()); - } - } - - @Override - public void notAuthorized() { - Timber.d("notAuthorized"); - activity.runOnUiThread(() -> Toast.makeText(activity, "notAuthorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onTransactionDetailsReceived(Transaction transaction) { - Timber.d("onTransactionDetailsReceived"); - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction details received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onSuccessStatusTransaction(Transaction transaction) { - Timber.d("onSuccessStatusTransaction"); - } - - @Override - public void onErrorStatusTransaction() { - Timber.d("onErrorStatusTransaction"); - } - - @Override - public void onRepeat(int attemptNumber) { - Timber.d("onRepeat"); - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRequestedReportZ() { - Timber.d("onRequestedReportZ"); - } - - @Override - public void onCompletedPrinting(PrinterResult printerErrorDataPrinterBaseDataPrinterResult) { - Timber.d("onCompletedPrinting"); - } - - @Override - public void onStatusFiscalModule(FiscalStatusData fiscalStatusData) { - Timber.d("onStatusFiscalModule"); - } - - @Override - public void onPrinterForRegistrationGettingCompleted() { - Timber.d("onPrinterForRegistrationGettingCompleted"); - } - - @Override - public void onNoBoundedPrinterFound() { - Timber.d("onNoBoundedPrinterFound"); - - } - - @Override - public void onPrinterToUseSelectionRequested(List printerList) { - Timber.d("onPrinterToUseSelectionRequested"); - } - - @Override - public void onRequiredReversal(String description, ResultCode resultCode) { - Timber.d("onRequiredReversal: %s, resultCode: %s", description, resultCode.name()); - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setMessage("Revert last of operation?"); - builder.setCancelable(false); - builder.setPositiveButton("Yes", (dialog, which) -> activity.getClientInterface().getTransactionManager().revertCurrentOperation(new RevertCurrentOperationCallbackHandlerImpl(activity))); - builder.setNegativeButton("No", (dialog, which) -> activity.getClientInterface().getTransactionManager().clearLastTransactionInformation()); - builder.create().show(); - }); - } - - @Override - public void onRequiredApplicationSelection(List list) { - Timber.d("onRequiredApplicationSelection"); - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose application identifier"); - - Spinner deviceListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, list); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - deviceListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface() - .getTransactionManager() - .setTransactionApplicationIdentifier((ApplicationIdConv) deviceListSpinner.getSelectedItem()); - dialog.dismiss(); - }); - - builder.setView(deviceListSpinner); - builder.create().show(); - }); - } - - - @Override - public void onActivityUpdateUiThread() { - Timber.d("onActivityUpdateUiThread"); - activity.getClientInterface().getTransactionManager().addPinpadClickListener(activity); - } - - @Override - public void onCreatePinPadButtons() { - Timber.d("onCreatePinPadButtons"); - customKeyBoardDilalog.createDialog(activity); - customKeyBoardDilalog.show(activity); - ButtonKeyboardDto buttonKeyboardDto = new ButtonKeyboardDto.Build( - customKeyBoardDilalog.getBtnb1(), - customKeyBoardDilalog.getBtnb2(), - customKeyBoardDilalog.getBtnb3(), - customKeyBoardDilalog.getBtnb4(), - customKeyBoardDilalog.getBtnb5(), - customKeyBoardDilalog.getBtnb6(), - customKeyBoardDilalog.getBtnb7(), - customKeyBoardDilalog.getBtnb8(), - customKeyBoardDilalog.getBtnb9(), - customKeyBoardDilalog.getBtnb0(), - customKeyBoardDilalog.getBtncancel(), - customKeyBoardDilalog.getBtnconfirm(), - customKeyBoardDilalog.getBtnclean(), - activity.getWindowManager().getDefaultDisplay().getRotation() - ).build(); - activity.getClientInterface().getTransactionManager().addPinPadButtons(buttonKeyboardDto); - } - - @Override - public void onShowPinPadKeyBoard(MessageButtonData messageButtonData) { - Timber.d("onShowPinPadKeyBoard"); - customKeyBoardDilalog.setText(messageButtonData); - } - - @Override - public void onUpdateElementPin(int count) { - Timber.d("onUpdateElementPin"); - activity.runOnUiThread(() -> Toast.makeText(activity, "count = " + count, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCloseKeyboard() { - Timber.d("onCloseKeyboard"); - customKeyBoardDilalog.close(activity); - } - - @Override - public void onRequiredAdditionalVirtualKeyboardSettings(VirtualKeyboardStyleTypeConv virtualKeyboardStyleTypeConv) { - activity.showSelectStyleDialog(additionalData -> - activity.getClientInterface().getTransactionManager().addVirtualPinKeyboardData(additionalData)); - } - - public interface SelectStyleListener { - void onSelectStyle(VirtualPinKeyboardData virtualPinKeyboardData); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/CardReadingCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/CardReadingCallbackHandlerImpl.java deleted file mode 100644 index fe9a525..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/CardReadingCallbackHandlerImpl.java +++ /dev/null @@ -1,217 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.app.AlertDialog; -import android.widget.ArrayAdapter; -import android.widget.Spinner; -import android.widget.Toast; - - -import java.util.List; - -import kz.com.aman.kassa.bank.gui.CustomKeyBoardDilalog; -import ru.m4bank.mpos.library.external.transactions.CardReadingCallbackHandler; -import ru.m4bank.mpos.service.commons.utils.ArrayUtils; -import ru.m4bank.mpos.service.data.dynamic.objects.Reader; -import ru.m4bank.mpos.service.hardware.error.ErrorHandler; -import ru.m4bank.mpos.service.hardware.external.cardreaderlib.data.ApplicationIdConv; -import ru.m4bank.mpos.service.result.Result; -import ru.m4bank.mpos.service.transactions.data.SimpleCardTransactionData; -import ru.m4bank.mpos.service.transactions.data.TransactionData; -import ru.m4bank.mpos.service.transactions.data.TransactionExecutionStatus; -import ru.m4bank.mpos.service.transactions.data.error.TransactionErrorData; -import timber.log.Timber; - -public class CardReadingCallbackHandlerImpl implements CardReadingCallbackHandler { - private final M4BankActivity activity; - private CustomKeyBoardDilalog customKeyBoardDilalog; - - public CardReadingCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - customKeyBoardDilalog = new CustomKeyBoardDilalog(); - } - - @Override - public void onDeviceToConnectSelectionRequested(List deviceList) { - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose device"); - - Spinner deviceListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, deviceList); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - deviceListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface() - .getTransactionManager() - .selectCardReader(deviceListSpinner.getSelectedItem().toString()); - dialog.dismiss(); - }); - - builder.setView(deviceListSpinner); - builder.create().show(); - }); - } - - @Override - public void onCardReaderForTransactionGettingCompleted() { - Timber.d("Reader has been received"); - } - - @Override - public void onNoBoundedDevicesFound() { - Timber.d("No bounded readers"); - } - - @Override - public void onDeviceToUseSelectionRequested(List deviceList) { - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose device"); - - Spinner deviceListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, ArrayUtils.newArrayList(deviceList)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - deviceListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface() - .getTransactionManager() - .setCardReaderToUse((Reader) deviceListSpinner.getSelectedItem()); - dialog.dismiss(); - }); - - builder.setView(deviceListSpinner); - builder.create().show(); - }); - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + result.getDescription(), Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onTransactionInit() { - - } - - - @Override - public void onTransactionExecutionStatusChanged(TransactionExecutionStatus newStatus) { - activity.runOnUiThread(() -> Toast.makeText(activity, newStatus.name(), Toast.LENGTH_SHORT).show()); - } - - @Override - public void onError(ErrorHandler errorHandler, TransactionErrorData errorData) { - activity.runOnUiThread(() -> Toast.makeText(activity, errorHandler.getFinalDescription(), Toast.LENGTH_LONG).show()); - } - - @Override - public void onErrorWithPossibilityToRetry(ErrorHandler errorHandler) { - activity.runOnUiThread(() -> Toast.makeText(activity, errorHandler.getFinalDescription(), Toast.LENGTH_LONG).show()); - activity.getClientInterface().getTransactionManager().tryToRepeatExecuteLastRequestInTransaction(); - } - - @Override - public void onTransactionDataReceivedError(TransactionData data) { - - } - - @Override - public void onUserInformationRequested(boolean signNeeded) { - activity.getClientInterface() - .getTransactionManager() - .sendTransactionUserData("signature", "phone", "vsa@centercorptech.net"); - } - - @Override - public void onTransactionDataReceived(TransactionData data) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction data has been received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onTransactionCompleted() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Operation has been successfully completed", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onDisconnectedEventReceivedOrCanNotEstablishConnection(boolean reconnectAvailable, String description) { - if (reconnectAvailable) { - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setMessage("Connection to cardreader has been lost, try to reconnect and repeat last operation?"); - builder.setCancelable(false); - builder.setPositiveButton("Yes", (dialog, which) -> activity.getClientInterface().tryToReconnectAndRepeatLast()); - builder.setNegativeButton("No", (dialog, which) -> activity.getClientInterface().cancel()); - builder.create().show(); - }); - } - } - - @Override - public void onConnectingProcessStarted(String deviceName) { - Timber.d("Connecting process started"); - } - - @Override - public void onReconnectNeededToProcess() { - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setMessage("Connection to cardreader has been lost, try to reconnect and continue?"); - builder.setCancelable(false); - builder.setPositiveButton("Yes", (dialog, which) -> activity.getClientInterface().getTransactionManager().tryToReconnectToCardReader()); - builder.setNegativeButton("No", (dialog, which) -> activity.getClientInterface().cancel()); - builder.create().show(); - }); - } - - @Override - public void notAuthorized() { - - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onReceiveCommonCardData(SimpleCardTransactionData simpleCardTransactionData) { - String pan = simpleCardTransactionData.getCardNumber(); - String expDate = simpleCardTransactionData.getCardExpiryDate(); - String cardHolderName = simpleCardTransactionData.getCardHolderName(); - activity.runOnUiThread(() -> Toast.makeText(activity, "card data: " + pan + " - " + expDate + " - " + cardHolderName, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRequiredApplicationSelection(List applicationOfList) { - // activity.runOnUiThread(() -> { - // AlertDialog.Builder builder = new AlertDialog.Builder(activity); - // builder.setTitle("Choose application identifier"); - // - // Spinner deviceListSpinner = new Spinner(activity); - // ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, applicationOfList); - // adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - // deviceListSpinner.setAdapter(adapter); - // - // builder.setPositiveButton("OK", (dialog, which) -> { - // activity.getClientInterface() - // .getTransactionManager() - // .setTransactionApplicationIdentifier(deviceListSpinner.getSelectedItem().toString()); - // dialog.dismiss(); - // }); - // - // builder.setView(deviceListSpinner); - // builder.create().show(); - // }); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/CardRefundCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/CardRefundCallbackHandlerImpl.java deleted file mode 100644 index d3a64c9..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/CardRefundCallbackHandlerImpl.java +++ /dev/null @@ -1,336 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.app.AlertDialog; -import android.widget.ArrayAdapter; -import android.widget.Spinner; -import android.widget.Toast; - -import kz.com.aman.kassa.bank.gui.CustomKeyBoardDilalog; - -import java.util.ArrayList; -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.EasyCardRefundCallbackHandler; -import ru.m4bank.mpos.library.external.transactions.GetTransactionsListCallbackHandler; -import ru.m4bank.mpos.service.data.FiscalStatusData; -import ru.m4bank.mpos.service.data.PrinterBaseData; -import ru.m4bank.mpos.service.data.PrinterErrorData; -import ru.m4bank.mpos.service.data.dynamic.objects.Reader; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.data.dynamic.objects.result.ResultCode; -import ru.m4bank.mpos.service.data.dynamic.objects.transaction.RefundType; -import ru.m4bank.mpos.service.hardware.error.AllError; -import ru.m4bank.mpos.service.hardware.error.ErrorHandler; -import ru.m4bank.mpos.service.hardware.external.cardreaderlib.data.ApplicationIdConv; -import ru.m4bank.mpos.service.hardware.external.cardreaderlib.data.enums.VirtualKeyboardStyleTypeConv; -import ru.m4bank.mpos.service.result.PrinterResult; -import ru.m4bank.mpos.service.result.Result; -import ru.m4bank.mpos.service.transactions.data.ButtonKeyboardDto; -import ru.m4bank.mpos.service.transactions.data.MessageButtonData; -import ru.m4bank.mpos.service.transactions.data.TransactionData; -import ru.m4bank.mpos.service.transactions.data.TransactionExecutionStatus; -import ru.m4bank.mpos.service.transactions.data.error.TransactionErrorData; -import ru.m4bank.mpos.service.transactions.dto.OnlineCardDataDto; -import timber.log.Timber; - -public class CardRefundCallbackHandlerImpl implements EasyCardRefundCallbackHandler, GetTransactionsListCallbackHandler { - - private final M4BankActivity activity; - private Transaction transaction; - private CustomKeyBoardDilalog customKeyBoardDilalog; - - public CardRefundCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - customKeyBoardDilalog = new CustomKeyBoardDilalog(); - } - - @Override - public void onCardReaderForTransactionGettingCompleted() { - Timber.d("Reader has been received"); - } - - @Override - public void onNoBoundedDevicesFound() { - Timber.d("No bounded readers"); - } - - @Override - public void onDeviceToUseSelectionRequested(List deviceList) { - Timber.d("onDeviceToUseSelectionRequested"); - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose device"); - - Spinner deviceListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, new ArrayList<>(deviceList)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - deviceListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface().getTransactionManager().setCardReaderToUse((Reader) deviceListSpinner.getSelectedItem()); - dialog.dismiss(); - }); - - builder.setView(deviceListSpinner); - activity.runOnUiThread(() -> builder.create().show()); - } - - @Override - public void onDeviceToConnectSelectionRequested(List deviceList) { - Timber.d("onDeviceToConnectSelectionRequested"); - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose device"); - - Spinner deviceListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, deviceList); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - deviceListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface().getTransactionManager().selectCardReader(deviceListSpinner.getSelectedItem().toString()); - dialog.dismiss(); - }); - - builder.setView(deviceListSpinner); - activity.runOnUiThread(() -> builder.create().show()); - } - - @Override - public void onCompleted(Result result) { - Timber.d("onCompleted"); - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), - Toast.LENGTH_SHORT).show()); - } - - @Override - public void onWrongApiCalled() { - Timber.d("onWrongApiCalled"); - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onReceiveCardData(OnlineCardDataDto data, boolean shouldConfirmBeManuallyCalled) { - Timber.d("onReceiveCardData"); - if (shouldConfirmBeManuallyCalled) { - activity.getClientInterface().getTransactionManager().processOnlineTransaction(false); - } - } - - @Override - public void onRequiredReversal(String description, ResultCode resultCode) { - Timber.d("onRequiredReversal: %s, resultCode: %s", description, resultCode.name()); - } - - @Override - public void onRequiredApplicationSelection(List list) { - Timber.d("onRequiredApplicationSelection"); - } - - @Override - public void onTransactionInit() { - - } - - - @Override - public void onTransactionExecutionStatusChanged(TransactionExecutionStatus newStatus) { - Timber.d("onTransactionExecutionStatusChanged: %s", newStatus.name()); - activity.runOnUiThread(() -> Toast.makeText(activity, newStatus.name(), Toast.LENGTH_SHORT).show()); - } - - @Override - public void onError(ErrorHandler errorHandler, TransactionErrorData transactionErrorData) { - Timber.d("onError: %s, description: %s", ((AllError) errorHandler).name(), errorHandler.getDescription()); - activity.runOnUiThread(() -> Toast.makeText(activity, errorHandler.getFinalDescription(), Toast.LENGTH_LONG).show()); - } - - @Override - public void onErrorWithPossibilityToRetry(ErrorHandler errorHandler) { - Timber.d("onErrorWithPossibilityToRetry: %s, description: %s", ((AllError) errorHandler).name(), errorHandler.getDescription()); - activity.runOnUiThread(() -> Toast.makeText(activity, errorHandler.getFinalDescription(), Toast.LENGTH_LONG).show()); - activity.getClientInterface().getTransactionManager().tryToRepeatExecuteLastRequestInTransaction(); - } - - @Override - public void onTransactionDataReceivedError(TransactionData data) { - Timber.d("onTransactionDataReceivedError"); - } - - @Override - public void onUserInformationRequested(boolean signNeeded) { - Timber.d("onUserInformationRequested"); - activity.getClientInterface().getTransactionManager().sendTransactionUserData("signature", "phone", "email"); - } - - @Override - public void onTransactionDataReceived(TransactionData data) { - Timber.d("onTransactionDataReceived"); - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction data has been received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onTransactionCompleted() { - Timber.d("onTransactionCompleted"); - activity.runOnUiThread(() -> Toast.makeText(activity, "Operation has been successfully completed", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onDisconnectedEventReceivedOrCanNotEstablishConnection(boolean reconnectAvailable, String description) { - Timber.d("onDisconnectedEventReceivedOrCanNotEstablishConnection"); - } - - @Override - public void onConnectingProcessStarted(String name) { - Timber.d("onConnectingProcessStarted: %s", name); - } - - @Override - public void onReconnectNeededToProcess() { - Timber.d("onReconnectNeededToProcess"); - } - - @Override - public void onReconciliationRequiredToProcess() { - Timber.d("onReconciliationRequiredToProcess"); - Timber.d("Reconciliation required!!!"); - activity.getClientInterface().getTransactionManager().makeReconciliationDuringTransaction(); - } - - @Override - public void onReconciliationCompleted(Result result) { - Timber.d("onReconciliationCompleted"); - Timber.d("Reconciliation completed!!!"); - } - - @Override - public void notAuthorized() { - Timber.d("notAuthorized"); - activity.runOnUiThread(() -> Toast.makeText(activity, "notAuthorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRepeat(int attemptNumber) { - Timber.d("onRepeat"); - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRequestedReportZ() { - Timber.d("onRequestedReportZ"); - } - - @Override - public void onCompletedPrinting(PrinterResult printerErrorDataPrinterBaseDataPrinterResult) { - Timber.d("onCompletedPrinting"); - } - - @Override - public void onStatusFiscalModule(FiscalStatusData fiscalStatusData) { - Timber.d("onStatusFiscalModule"); - } - - @Override - public void onPrinterForRegistrationGettingCompleted() { - Timber.d("onPrinterForRegistrationGettingCompleted"); - } - - @Override - public void onNoBoundedPrinterFound() { - Timber.d("onNoBoundedPrinterFound"); - } - - @Override - public void onPrinterToUseSelectionRequested(List printerList) { - Timber.d("onPrinterToUseSelectionRequested"); - } - - @Override - public void onRefundDataRequested() { - Timber.d("onRefundDataRequested"); - activity.getClientInterface().getTransactionManager().setRefundData(transaction, transaction.getAmount(), RefundType.General); - } - - @Override - public void onTransactionsListReceived(List transactionList) { - Timber.d("onTransactionsListReceived"); - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose transaction"); - - Spinner transactionListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, new ArrayList<>(transactionList)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - transactionListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - transaction = (Transaction) transactionListSpinner.getSelectedItem(); - activity.getClientInterface().getTransactionManager().makeCardRefund(this); - dialog.dismiss(); - }); - - builder.setView(transactionListSpinner); - activity.runOnUiThread(() -> builder.create().show()); - } - - @Override - public void onActivityUpdateUiThread() { - Timber.d("onActivityUpdateUiThread"); - activity.getClientInterface().getTransactionManager().addPinpadClickListener(activity); - } - - @Override - public void onCreatePinPadButtons() { - Timber.d("onCreatePinPadButtons"); - customKeyBoardDilalog.createDialog(activity); - customKeyBoardDilalog.show(activity); - ButtonKeyboardDto buttonKeyboardDto = new ButtonKeyboardDto.Build( - customKeyBoardDilalog.getBtnb1(), - customKeyBoardDilalog.getBtnb2(), - customKeyBoardDilalog.getBtnb3(), - customKeyBoardDilalog.getBtnb4(), - customKeyBoardDilalog.getBtnb5(), - customKeyBoardDilalog.getBtnb6(), - customKeyBoardDilalog.getBtnb7(), - customKeyBoardDilalog.getBtnb8(), - customKeyBoardDilalog.getBtnb9(), - customKeyBoardDilalog.getBtnb0(), - customKeyBoardDilalog.getBtncancel(), - customKeyBoardDilalog.getBtnconfirm(), - customKeyBoardDilalog.getBtnclean(), - activity.getWindowManager().getDefaultDisplay().getRotation() - ).build(); - activity.getClientInterface().getTransactionManager().addPinPadButtons(buttonKeyboardDto); - } - - @Override - public void onShowPinPadKeyBoard(MessageButtonData messageButtonData) { - Timber.d("onShowPinPadKeyBoard"); - customKeyBoardDilalog.setText(messageButtonData); - } - - @Override - public void onUpdateElementPin(int count) { - Timber.d("onUpdateElementPin"); - activity.runOnUiThread(() -> Toast.makeText(activity, "count = " + count, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCloseKeyboard() { - Timber.d("onCloseKeyboard"); - customKeyBoardDilalog.close(activity); - } - - @Override - public void onRequiredAdditionalVirtualKeyboardSettings(VirtualKeyboardStyleTypeConv virtualKeyboardStyleTypeConv) { - activity.showSelectStyleDialog(additionalData -> - activity.getClientInterface().getTransactionManager().addVirtualPinKeyboardData(additionalData)); - } - - @Override - public void onRequiredHostAddress() { - Timber.d("onRequiredHostAddress"); - activity.runOnUiThread(() -> Toast.makeText(activity, "Set Host Address", Toast.LENGTH_LONG) - .show()); - activity.getClientInterface().getTransactionManager().setHostAddress("213.79.122.128", "8011"); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/CashPaymentCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/CashPaymentCallbackHandlerImpl.java deleted file mode 100644 index b4e697b..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/CashPaymentCallbackHandlerImpl.java +++ /dev/null @@ -1,187 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.widget.Toast; - -import java.util.ArrayList; -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.CashPaymentCallbackHandler; -import ru.m4bank.mpos.service.data.FiscalStatusData; -import ru.m4bank.mpos.service.data.dynamic.objects.AdditionalTransactionData; -import ru.m4bank.mpos.service.data.dynamic.objects.GoodsData; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.data.dynamic.objects.printer.enums.AccountingSubject; -import ru.m4bank.mpos.service.data.dynamic.objects.printer.enums.TaxRate; -import ru.m4bank.mpos.service.hardware.error.ErrorHandler; -import ru.m4bank.mpos.service.result.PrinterResult; -import ru.m4bank.mpos.service.result.Result; -import ru.m4bank.mpos.service.transactions.data.TransactionData; -import ru.m4bank.mpos.service.transactions.data.TransactionExecutionStatus; -import ru.m4bank.mpos.service.transactions.data.error.TransactionErrorData; -import timber.log.Timber; - -public class CashPaymentCallbackHandlerImpl implements CashPaymentCallbackHandler { - - private final M4BankActivity activity; - - public CashPaymentCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onWorkFlowDataRequested() { - Timber.d("WorkFlow requested"); - } - - @Override - public void onTransactionAmountRequested() { - activity.getClientInterface().getTransactionManager().setTransactionAmount(activity.getAmount()); - } - - @Override - public void onTransactionDataRequested() { - List goodsDataList = new ArrayList<>(); - goodsDataList.add(new GoodsData.Builder() - .setOriginalPrice(100000L) - .setRealPrice(100000L) - .setName("Принтер") - .setQuantity(1) - .setCode("000001") - .setUnits("00") - .setDiscount(0L) - .setTaxRate(TaxRate.Tax_18) - .setExponent(2) - .setAccountingSubject(AccountingSubject.PRODUCT) - .build()); - goodsDataList.add(new GoodsData.Builder() - .setOriginalPrice(30065L) - .setRealPrice(30065L) - .setName("Услуга") - .setQuantity(3) - .setCode("000002") - .setUnits("00") - .setDiscount(0L) - .setTaxRate(TaxRate.Tax_18) - .setExponent(2) - .setAccountingSubject(AccountingSubject.PRODUCT) - .build()); - - AdditionalTransactionData additionalTransactionData = new AdditionalTransactionData.Builder(goodsDataList).build(); - activity.getClientInterface().getTransactionManager().setAdditionalTransactionData(additionalTransactionData); - } - - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), - Toast.LENGTH_SHORT).show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onTransactionInit() { - Timber.d("onTransactionInit"); - activity.getClientInterface().getTransactionManager().processOnlineTransaction(false); - } - - - @Override - public void onTransactionExecutionStatusChanged(TransactionExecutionStatus newStatus) { - - } - - @Override - public void onError(ErrorHandler errorHandler, TransactionErrorData transactionErrorData) { - - } - - @Override - public void onErrorWithPossibilityToRetry(ErrorHandler errorHandler) { - activity.runOnUiThread(() -> Toast.makeText(activity, errorHandler.getFinalDescription(), Toast.LENGTH_LONG).show()); - activity.getClientInterface().getTransactionManager().tryToRepeatExecuteLastRequestInTransaction(); - } - - @Override - public void onTransactionDataReceivedError(TransactionData data) { - - } - - @Override - public void onUserInformationRequested(boolean signNeeded) { - activity.getClientInterface() - .getTransactionManager() - .sendTransactionUserData("signature", "phone", "email"); - } - - @Override - public void onTransactionDataReceived(TransactionData data) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction data has been received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onTransactionCompleted() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Operation has been successfully completed", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "notAuthorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onTransactionDetailsReceived(Transaction transaction) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction details received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onSuccessStatusTransaction(Transaction transaction) { - - } - - @Override - public void onErrorStatusTransaction() { - - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRequestedReportZ() { - - } - - @Override - public void onCompletedPrinting(PrinterResult printerResult) { - - } - - @Override - public void onStatusFiscalModule(FiscalStatusData fiscalStatusData) { - - } - - @Override - public void onPrinterForRegistrationGettingCompleted() { - - } - - @Override - public void onNoBoundedPrinterFound() { - - } - - @Override - public void onPrinterToUseSelectionRequested(List printerList) { - - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/CheckConnectionCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/CheckConnectionCallbackHandlerImpl.java deleted file mode 100644 index a33fee1..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/CheckConnectionCallbackHandlerImpl.java +++ /dev/null @@ -1,25 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.widget.Toast; - -import ru.m4bank.mpos.library.external.configuration.CheckConnectionCallbackHandler; -import ru.m4bank.mpos.service.result.CheckConnectionExternalResult; - -public class CheckConnectionCallbackHandlerImpl implements CheckConnectionCallbackHandler { - private final M4BankActivity activity; - - public CheckConnectionCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onCompleted(CheckConnectionExternalResult result) { - activity.runOnUiThread(() -> - Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()) + " " + result.isOnlineRegistration(), Toast.LENGTH_SHORT).show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/CloseDayCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/CloseDayCallbackHandlerImpl.java deleted file mode 100644 index 2eddbac..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/CloseDayCallbackHandlerImpl.java +++ /dev/null @@ -1,52 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.widget.Toast; - -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.CloseDayCallbackHandler; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.handling.result.CloseDayResult; -import ru.m4bank.mpos.service.result.Result; -import ru.m4bank.mpos.service.transactions.network.closeday.CloseDayResponseInfo; - - -class CloseDayCallbackHandlerImpl implements CloseDayCallbackHandler { - private final M4BankActivity activity; - - CloseDayCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Not authorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onTransactionsListReceived(List transactionList, List list1) { - activity.runOnUiThread(() -> Toast.makeText(activity, "onTransactionsListReceived - " + transactionList, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCompleted(CloseDayResult closeDayResult) { - activity.runOnUiThread(() -> Toast.makeText(activity, closeDayResult.getResultType() + " " + (closeDayResult.getDescription() == null ? "" : closeDayResult.getDescription()), Toast.LENGTH_SHORT) - .show()); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/CustomApplication.java b/android/app/src/main/java/kz/com/aman/kassa/bank/CustomApplication.java deleted file mode 100644 index 7ba15f2..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/CustomApplication.java +++ /dev/null @@ -1,21 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.app.Application; - - -import timber.log.Timber; - -public class CustomApplication extends Application { - @Override - public void onCreate() { - super.onCreate(); - Thread.setDefaultUncaughtExceptionHandler((thread, ex) -> { - Timber.v(ex.getMessage()); - for (StackTraceElement element : ex.getStackTrace()) { - Timber.v(element.toString()); - } - ex.printStackTrace(); - System.exit(0); - }); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/CustomSSLSocketFactory.java b/android/app/src/main/java/kz/com/aman/kassa/bank/CustomSSLSocketFactory.java deleted file mode 100644 index df1654b..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/CustomSSLSocketFactory.java +++ /dev/null @@ -1,81 +0,0 @@ -package kz.com.aman.kassa.bank; - -import org.apache.http.conn.scheme.LayeredSocketFactory; -import org.apache.http.params.HttpConnectionParams; -import org.apache.http.params.HttpParams; - -import java.io.IOException; -import java.net.InetAddress; -import java.net.InetSocketAddress; -import java.net.Socket; -import java.security.KeyStore; - -import javax.net.ssl.SSLContext; -import javax.net.ssl.SSLSocket; -import javax.net.ssl.TrustManager; - -public class CustomSSLSocketFactory implements LayeredSocketFactory { - private SSLContext sslcontext = null; - private KeyStore keyStore = null; - - public CustomSSLSocketFactory() { - } - - public CustomSSLSocketFactory(KeyStore keyStore) { - this.keyStore = keyStore; - } - - private SSLContext createEasySSLContext() throws IOException { - try { - SSLContext context = SSLContext.getInstance("TLS"); - context.init(null, new TrustManager[] { new CustomTrustManager(keyStore) }, null); - return context; - } catch (Exception e) { - throw new IOException(e.getMessage()); - } - } - - private SSLContext getSSLContext() throws IOException { - if (this.sslcontext == null) { - this.sslcontext = createEasySSLContext(); - } - return this.sslcontext; - } - - public Socket connectSocket(Socket sock, String host, int port, - InetAddress localAddress, int localPort, HttpParams params) - throws IOException { - int connTimeout = HttpConnectionParams.getConnectionTimeout(params); - int soTimeout = HttpConnectionParams.getSoTimeout(params); - - InetSocketAddress remoteAddress = new InetSocketAddress(host, port); - SSLSocket sslSocket = (SSLSocket) ((sock != null) ? sock : createSocket()); - - if ((localAddress != null) || (localPort > 0)) { - // we need to bind explicitly - if (localPort < 0) { - localPort = 0; // indicates "any" - } - InetSocketAddress isa = new InetSocketAddress(localAddress, - localPort); - sslSocket.bind(isa); - } - - sslSocket.connect(remoteAddress, connTimeout); - sslSocket.setSoTimeout(soTimeout); - return sslSocket; - } - - public Socket createSocket() throws IOException { - return getSSLContext().getSocketFactory().createSocket(); - } - - public boolean isSecure(Socket socket) throws IllegalArgumentException { - return true; - } - - public Socket createSocket(Socket socket, String host, int port, - boolean autoClose) throws IOException { - return getSSLContext().getSocketFactory().createSocket(socket, host, port, autoClose); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/CustomTrustManager.java b/android/app/src/main/java/kz/com/aman/kassa/bank/CustomTrustManager.java deleted file mode 100644 index e419d65..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/CustomTrustManager.java +++ /dev/null @@ -1,40 +0,0 @@ -package kz.com.aman.kassa.bank; - -import java.security.KeyStore; -import java.security.KeyStoreException; -import java.security.NoSuchAlgorithmException; -import java.security.cert.CertificateException; -import java.security.cert.X509Certificate; - -import javax.net.ssl.TrustManager; -import javax.net.ssl.TrustManagerFactory; -import javax.net.ssl.X509TrustManager; - -public class CustomTrustManager implements X509TrustManager { - private X509TrustManager standardTrustManager; - - public CustomTrustManager(KeyStore keystore) throws NoSuchAlgorithmException, KeyStoreException { - super(); - TrustManagerFactory factory = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm()); - factory.init(keystore); - TrustManager[] trustManagers = factory.getTrustManagers(); - if (trustManagers.length == 0) { - throw new NoSuchAlgorithmException("no trust manager found"); - } - standardTrustManager = (X509TrustManager)trustManagers[0]; - } - - public void checkClientTrusted(X509Certificate[] certificates, String authType) throws CertificateException { - standardTrustManager.checkClientTrusted(certificates, authType); - } - - public void checkServerTrusted(X509Certificate[] certificates, String authType) throws CertificateException { - if ((certificates != null) && (certificates.length == 1)) { - certificates[0].checkValidity(); - } - } - - public X509Certificate[] getAcceptedIssuers() { - return this.standardTrustManager.getAcceptedIssuers(); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/DataCreatorUtils.java b/android/app/src/main/java/kz/com/aman/kassa/bank/DataCreatorUtils.java deleted file mode 100644 index 59b1f88..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/DataCreatorUtils.java +++ /dev/null @@ -1,144 +0,0 @@ -package kz.com.aman.kassa.bank; - -import java.util.Calendar; -import java.util.Date; - -import ru.m4bank.mpos.service.commons.Lists; -import ru.m4bank.mpos.service.data.dynamic.objects.CurrencyEnum; -import ru.m4bank.mpos.service.data.dynamic.objects.ExternalVerificationType; -import ru.m4bank.mpos.service.data.dynamic.objects.GoodsData; -import ru.m4bank.mpos.service.data.dynamic.objects.ProductsAndTransactionData; -import ru.m4bank.mpos.service.data.dynamic.objects.TransactionStatus; -import ru.m4bank.mpos.service.data.dynamic.objects.printer.enums.AccountingSubject; -import ru.m4bank.mpos.service.data.dynamic.objects.printer.enums.TaxRate; -import ru.m4bank.mpos.service.data.dynamic.objects.printer.enums.TaxSystem; -import ru.m4bank.mpos.service.hardware.external.cardreaderlib.data.enums.CardTransTypeConv; -import ru.m4bank.mpos.service.hardware.external.cardreaderlib.data.enums.TransactionTypeConv; -import ru.m4bank.mpos.service.hardware.printer.dto.data.FiscalPrinterMerchantData; -import ru.m4bank.mpos.service.hardware.printer.dto.data.PrinterInformationCheck; -import ru.m4bank.mpos.service.hardware.printer.dto.data.TransactionSlipData; -import ru.m4bank.mpos.service.transactions.data.AccountingSign; -import ru.m4bank.mpos.service.transactions.data.CorrectionType; -import ru.m4bank.mpos.service.transactions.data.external.CurrencyAmount; -import ru.m4bank.mpos.service.transactions.data.external.ExternalCorrectionData; -import ru.m4bank.mpos.service.transactions.data.external.ExternalFiscalData; -import ru.m4bank.mpos.service.transactions.data.external.ExternalSlipData; -import ru.m4bank.mpos.service.transactions.data.external.ExternalStubData; - -public class DataCreatorUtils { - public static ExternalCorrectionData makeCorrectionData() { - Calendar date = Calendar.getInstance(); - date.set(2019, 3, 1); - return new ExternalCorrectionData.Builder() - .currencyAmount(makeCurrencyAmount()) - .calculationSign(AccountingSign.INCOMING) - .correctionType(CorrectionType.INDEPENDENTLY) - .taxRate(TaxRate.Tax_20) - .cash(true) - .docNumber("ПС345454") - .docDate(date) - .docDescription(" ") - .stubData(makeStubData()) - .build(); - } - - public static ExternalFiscalData makeFiscalData() { - return new ExternalFiscalData.Builder() - .cash(false) - .currency("643") - .phone("12345678") - .informationCheckData(makeInformationCheckData()) - .productsAndTransactionData(makeProductsAndTransactionData()) - .externalStubData(makeStubData()) - .transactionTypeConv(TransactionTypeConv.PAYMENT) - .build(); - } - - public static ExternalSlipData makeSlipData(boolean newCheck) { - return new ExternalSlipData.Builder() - .currencyAmount(makeCurrencyAmount()) - .cash(false) - .merchantData(makeMerchantData()) - .newCheck(newCheck) - .transactionData(makeTransactionData()) - .transactionType(TransactionTypeConv.PAYMENT) - .cashierName("Петров В.В.") - .build(); - } - - public static CurrencyAmount makeCurrencyAmount() { - return new CurrencyAmount.Builder().amount(10000).currencyCode(CurrencyEnum.RUS.getStringCurrency()).build(); - } - - public static FiscalPrinterMerchantData makeMerchantData() { - return new FiscalPrinterMerchantData.Builder() - .merchantAddress("улица Твардовского, Москва Россия") - .merchantId("1732056") - .merchantInn("123456489123") - .merchantName("Center of corporate technologies") - .build(); - } - - public static TransactionSlipData makeTransactionData() { - return new TransactionSlipData.Builder() - .applicationId("A40000100023056") - .authCode("447041") - .cardHolderName("IVANOV/I") - .currencyCode("643") - .hostResultCode("00") - .interaction(CardTransTypeConv.MAGNETIC_STRIPE) - .originalPan("************8888") - .pan("************8176") - .rrn("123456789") - .terminalNumber("00687879") - .terminalVerificationResults("00000") - .transactionDate(new Date()) - .transactionStatus(TransactionStatus.APPROVED) - .typeCard("Mastercard") - .typeVerification(ExternalVerificationType.PIN) - .phone("88008008008562") - .build(); - } - - public static ExternalStubData makeStubData() { - return new ExternalStubData.Builder() - .shiftNumber("0001") - .factoryNumberKKT("0000000000") - .registerNumberKKT("00000000000000000") - .fiscalDocNumber("2780") - .fiscalMemoryNumber("9999078900003063") - .fiscalSign("32323933373534383633") - .formOfTaxation("УСН") - .merchantData(makeMerchantData()) - .phone("12-12-12") - .productsAndTransactionData(makeProductsAndTransactionData()) - .build(); - } - - private static ProductsAndTransactionData makeProductsAndTransactionData() { - return new ProductsAndTransactionData( - Lists.newArrayList(new GoodsData.Builder() - .setOriginalPrice(1500L) - .setRealPrice(1400L) - .setName("Товар") - .setQuantity(1) - .setCode("1") - .setUnits("00") - .setExponent(2) - .setDiscount(100L) - .setTaxRate(TaxRate.Tax_10) - .setAccountingSubject(AccountingSubject.OTHER) - .build()), - 1400L, 100L, 1, CurrencyEnum.RUS, TaxSystem.Common); - } - - public static PrinterInformationCheck makeInformationCheckData() { - return new PrinterInformationCheck.Builder() - .setCheckNumber("00") - .setDocNumber("1") - .setPd("00") - .setDateAndTime(new Date()) - .setInn("7777777777") - .build(); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/EasyAlipayRefundCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/EasyAlipayRefundCallbackHandlerImpl.java deleted file mode 100644 index 322ade3..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/EasyAlipayRefundCallbackHandlerImpl.java +++ /dev/null @@ -1,152 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.app.AlertDialog; -import android.widget.ArrayAdapter; -import android.widget.Spinner; -import android.widget.Toast; - -import java.util.ArrayList; -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.EasyAlipayRefundCallbackHandler; -import ru.m4bank.mpos.library.external.transactions.GetTransactionsListCallbackHandler; -import ru.m4bank.mpos.service.data.FiscalStatusData; -import ru.m4bank.mpos.service.data.PrinterBaseData; -import ru.m4bank.mpos.service.data.PrinterErrorData; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.data.dynamic.objects.transaction.RefundType; -import ru.m4bank.mpos.service.hardware.error.ErrorHandler; -import ru.m4bank.mpos.service.result.PrinterResult; -import ru.m4bank.mpos.service.result.Result; -import ru.m4bank.mpos.service.transactions.data.TransactionData; -import ru.m4bank.mpos.service.transactions.data.TransactionExecutionStatus; -import ru.m4bank.mpos.service.transactions.data.error.TransactionErrorData; - -public class EasyAlipayRefundCallbackHandlerImpl implements EasyAlipayRefundCallbackHandler, GetTransactionsListCallbackHandler { - - private final M4BankActivity activity; - private Transaction transaction; - - public EasyAlipayRefundCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onTransactionInit() { - - } - - @Override - public void onTransactionExecutionStatusChanged(TransactionExecutionStatus newStatus) { - activity.runOnUiThread(() -> Toast.makeText(activity, newStatus.name(), Toast.LENGTH_SHORT).show()); - } - - @Override - public void onError(ErrorHandler errorHandler, TransactionErrorData transactionErrorData) { - activity.runOnUiThread(() -> Toast.makeText(activity, errorHandler.getFinalDescription(), Toast.LENGTH_LONG).show()); - } - - @Override - public void onErrorWithPossibilityToRetry(ErrorHandler errorHandler) { - activity.runOnUiThread(() -> Toast.makeText(activity, errorHandler.getFinalDescription(), Toast.LENGTH_LONG).show()); - activity.getClientInterface().getTransactionManager().tryToRepeatExecuteLastRequestInTransaction(); - } - - @Override - public void onTransactionDataReceivedError(TransactionData data) { - - } - - @Override - public void onUserInformationRequested(boolean signNeeded) { - activity.getClientInterface().getTransactionManager().sendTransactionUserData("signature", "phone", "email"); - } - - @Override - public void onTransactionDataReceived(TransactionData data) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction data has been received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onTransactionCompleted() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Operation has been successfully completed", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onRefundDataRequested() { - activity.getClientInterface().getTransactionManager().setRefundData(transaction, transaction.getAmount(), RefundType.General); - } - - @Override - public void onTransactionsListReceived(List transactionList) { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose transaction"); - - Spinner transactionListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, new ArrayList<>(transactionList)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - transactionListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - transaction = (Transaction) transactionListSpinner.getSelectedItem(); - activity.getClientInterface().getTransactionManager().makeAlipayRefund(this); - dialog.dismiss(); - }); - - builder.setView(transactionListSpinner); - activity.runOnUiThread(() -> builder.create().show()); - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Not authorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRequestedReportZ() { - - } - - @Override - public void onCompletedPrinting(PrinterResult printerErrorDataPrinterBaseDataPrinterResult) { - - } - - @Override - public void onStatusFiscalModule(FiscalStatusData fiscalStatusData) { - - } - - @Override - public void onPrinterForRegistrationGettingCompleted() { - - } - - @Override - public void onNoBoundedPrinterFound() { - - } - - @Override - public void onPrinterToUseSelectionRequested(List printerList) { - - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/EasyCardReversalCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/EasyCardReversalCallbackHandlerImpl.java deleted file mode 100644 index dbd8e1d..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/EasyCardReversalCallbackHandlerImpl.java +++ /dev/null @@ -1,363 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.app.AlertDialog; -import android.widget.ArrayAdapter; -import android.widget.Spinner; -import android.widget.Toast; - -import java.util.ArrayList; -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.EasyReversalCardCallbackHandler; -import ru.m4bank.mpos.library.external.transactions.GetTransactionsListCallbackHandler; -import ru.m4bank.mpos.service.commons.data.ResultType; -import ru.m4bank.mpos.service.data.FiscalStatusData; -import ru.m4bank.mpos.service.data.PrinterBaseData; -import ru.m4bank.mpos.service.data.PrinterErrorData; -import ru.m4bank.mpos.service.data.dynamic.objects.Reader; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.data.dynamic.objects.result.ResultCode; -import ru.m4bank.mpos.service.hardware.error.ErrorHandler; -import ru.m4bank.mpos.service.hardware.external.cardreaderlib.data.ApplicationIdConv; -import ru.m4bank.mpos.service.hardware.external.cardreaderlib.data.enums.VirtualKeyboardStyleTypeConv; -import ru.m4bank.mpos.service.result.PrinterResult; -import ru.m4bank.mpos.service.result.Result; -import ru.m4bank.mpos.service.transactions.data.MessageButtonData; -import ru.m4bank.mpos.service.transactions.data.TransactionData; -import ru.m4bank.mpos.service.transactions.data.TransactionExecutionStatus; -import ru.m4bank.mpos.service.transactions.data.error.TransactionErrorData; -import ru.m4bank.mpos.service.transactions.dto.OnlineCardDataDto; -import timber.log.Timber; - -public class EasyCardReversalCallbackHandlerImpl implements EasyReversalCardCallbackHandler, GetTransactionsListCallbackHandler { - - private final M4BankActivity activity; - private Transaction transaction; - - public EasyCardReversalCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Not authorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCardReaderForTransactionGettingCompleted() { - Timber.d("Reader has been received"); - } - - @Override - public void onNoBoundedDevicesFound() { - Timber.d("No bounded readers"); - } - - @Override - public void onConnectingProcessStarted(String deviceName) { - - } - - @Override - public void onDisconnectedEventReceivedOrCanNotEstablishConnection(boolean reconnectAvailable, String description) { - if (reconnectAvailable) { - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setMessage("Connection to cardreader has been lost, try to reconnect and repeat last operation?"); - builder.setCancelable(false); - builder.setPositiveButton("Yes", (dialog, which) -> activity.getClientInterface().tryToReconnectAndRepeatLast()); - builder.setNegativeButton("No", (dialog, which) -> activity.getClientInterface().cancel()); - builder.create().show(); - }); - } - } - - @Override - public void onDeviceToConnectSelectionRequested(List deviceList) { - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose device"); - - Spinner deviceListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, deviceList); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - deviceListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface() - .getTransactionManager() - .selectCardReader(deviceListSpinner.getSelectedItem().toString()); - dialog.dismiss(); - }); - - builder.setView(deviceListSpinner); - builder.create().show(); - }); - } - - @Override - public void onWorkFlowDataRequested() { - - } - - @Override - public void onReceiveCardData(OnlineCardDataDto data, boolean shouldConfirmBeManuallyCalled) { - if (shouldConfirmBeManuallyCalled) { - activity.getClientInterface().getTransactionManager().processOnlineTransaction(false); - } - } - - @Override - public void onRequiredReversal(String description, ResultCode resultCode) { - activity.runOnUiThread(() -> Toast.makeText(activity, "onRequiredReversal", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onRequiredApplicationSelection(List list) { - - } - - @Override - public void onPrinterForRegistrationGettingCompleted() { - - } - - @Override - public void onNoBoundedPrinterFound() { - - } - - @Override - public void onTransactionDetailsReceived(Transaction transaction) { - activity.runOnUiThread(() -> Toast.makeText(activity, "onTransactionDetailsReceived", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onSuccessStatusTransaction(Transaction transaction) { - activity.runOnUiThread(() -> Toast.makeText(activity, "onSuccessStatusTransaction", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onErrorStatusTransaction() { - activity.runOnUiThread(() -> Toast.makeText(activity, "onErrorStatusTransaction", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onRequestedReportZ() { - - } - - @Override - public void onCompletedPrinting(PrinterResult printerErrorDataPrinterBaseDataPrinterResult) { - - } - - @Override - public void onStatusFiscalModule(FiscalStatusData fiscalStatusData) { - - } - - @Override - public void onReconciliationRequiredToProcess() { - Timber.d("Reconciliation required!!!"); - activity.getClientInterface().getTransactionManager().makeReconciliationDuringTransaction(); - } - - @Override - public void onReconciliationCompleted(Result result) { - Timber.d("Reconciliation completed!!!"); - if (result.getResultType() == ResultType.SUCCESSFUL) { - activity.getClientInterface().getTransactionManager().continueTransactionAfterReconciliation(); - } else { - activity.runOnUiThread(() -> Toast.makeText(activity, "Reconciliation failed " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_LONG) - .show()); - } - } - - @Override - public void onRepeat(int attemptNumber) { - - } - - @Override - public void onTransactionAmountRequested() { - - } - - @Override - public void onTransactionDataRequested() { - - } - - @Override - public void onDeviceToUseSelectionRequested(List deviceList) { - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose device"); - - Spinner deviceListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, new ArrayList<>(deviceList)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - deviceListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface() - .getTransactionManager() - .setCardReaderToUse((Reader) deviceListSpinner.getSelectedItem()); - dialog.dismiss(); - }); - - builder.setView(deviceListSpinner); - activity.runOnUiThread(() -> builder.create().show()); - }); - } - - @Override - public void onPrinterToUseSelectionRequested(List printerList) { - - } - - @Override - public void onTransactionInit() { - - } - - @Override - public void onTransactionExecutionStatusChanged(TransactionExecutionStatus newStatus) { - activity.runOnUiThread(() -> Toast.makeText(activity, newStatus.name(), Toast.LENGTH_SHORT).show()); - } - - @Override - public void onUserInformationRequested(boolean signNeeded) { - - } - - @Override - public void onError(ErrorHandler errorHandler, TransactionErrorData transactionErrorData) { - if (errorHandler.getCode() != null && errorHandler.getDescription() != null) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Error Code: " + errorHandler.getCode() + " error Description: " - + errorHandler.getDescription(), Toast.LENGTH_LONG) - .show()); - } else { - activity.runOnUiThread(() -> Toast.makeText(activity, errorHandler.getServerCode() + " " - + errorHandler.getServerDescription(), Toast.LENGTH_LONG) - .show()); - } - } - - @Override - public void onErrorWithPossibilityToRetry(ErrorHandler errorHandler) { - activity.getClientInterface().getTransactionManager().tryToRepeatExecuteLastRequestInTransaction(); - } - - @Override - public void onTransactionDataReceivedError(TransactionData data) { - activity.runOnUiThread(() -> Toast.makeText(activity, "onTransactionDataReceivedError", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onTransactionDataReceived(TransactionData data) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction data has been received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onTransactionCompleted() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Operation has been successfully completed", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onReconnectNeededToProcess() { - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setMessage("Connection to cardreader has been lost, try to reconnect and continue?"); - builder.setCancelable(false); - builder.setPositiveButton("Yes", (dialog, which) -> activity.getClientInterface().getTransactionManager().tryToReconnectToCardReader()); - builder.setNegativeButton("No", (dialog, which) -> activity.getClientInterface().cancel()); - builder.create().show(); - }); - } - - @Override - public void onWrongTerminal() { - - } - - @Override - public void onSelectTransaction() { - activity.getClientInterface().getTransactionManager().selectTransaction(transaction); - } - - @Override - public void onTransactionsListReceived(List transactionList) { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose transaction"); - - Spinner transactionListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, new ArrayList<>(transactionList)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - transactionListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - transaction = (Transaction) transactionListSpinner.getSelectedItem(); - activity.getClientInterface().getTransactionManager().makeCardReversal(this); - dialog.dismiss(); - }); - - builder.setView(transactionListSpinner); - activity.runOnUiThread(() -> builder.create().show()); - } - - @Override - public void onTransactionSelectionRequested(List transactionList) { - - } - - @Override - public void onActivityUpdateUiThread() { - - } - - @Override - public void onCreatePinPadButtons() { - - } - - @Override - public void onShowPinPadKeyBoard(MessageButtonData messageButtonData) { - - } - - @Override - public void onUpdateElementPin(int i) { - - } - - @Override - public void onCloseKeyboard() { - - } - - @Override - public void onRequiredAdditionalVirtualKeyboardSettings(VirtualKeyboardStyleTypeConv virtualKeyboardStyleTypeConv) { - activity.showSelectStyleDialog(additionalData -> - activity.getClientInterface().getTransactionManager().addVirtualPinKeyboardData(additionalData)); - } -} \ No newline at end of file diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/EasyCashRefundCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/EasyCashRefundCallbackHandlerImpl.java deleted file mode 100644 index ecf69d4..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/EasyCashRefundCallbackHandlerImpl.java +++ /dev/null @@ -1,153 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.app.AlertDialog; -import android.widget.ArrayAdapter; -import android.widget.Spinner; -import android.widget.Toast; - -import java.util.ArrayList; -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.EasyCashRefundCallbackHandler; -import ru.m4bank.mpos.library.external.transactions.GetTransactionsListCallbackHandler; -import ru.m4bank.mpos.service.data.FiscalStatusData; -import ru.m4bank.mpos.service.data.PrinterBaseData; -import ru.m4bank.mpos.service.data.PrinterErrorData; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.data.dynamic.objects.transaction.RefundType; -import ru.m4bank.mpos.service.hardware.error.ErrorHandler; -import ru.m4bank.mpos.service.result.PrinterResult; -import ru.m4bank.mpos.service.result.Result; -import ru.m4bank.mpos.service.transactions.data.TransactionData; -import ru.m4bank.mpos.service.transactions.data.TransactionExecutionStatus; -import ru.m4bank.mpos.service.transactions.data.error.TransactionErrorData; - -public class EasyCashRefundCallbackHandlerImpl implements EasyCashRefundCallbackHandler, GetTransactionsListCallbackHandler { - - private final M4BankActivity activity; - private Transaction transaction; - - public EasyCashRefundCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onTransactionInit() { - activity.getClientInterface().getTransactionManager().processOnlineTransaction(false); - } - - - @Override - public void onTransactionExecutionStatusChanged(TransactionExecutionStatus newStatus) { - activity.runOnUiThread(() -> Toast.makeText(activity, newStatus.name(), Toast.LENGTH_SHORT).show()); - } - - @Override - public void onError(ErrorHandler errorHandler, TransactionErrorData transactionErrorData) { - activity.runOnUiThread(() -> Toast.makeText(activity, errorHandler.getFinalDescription(), Toast.LENGTH_LONG).show()); - } - - @Override - public void onErrorWithPossibilityToRetry(ErrorHandler errorHandler) { - activity.runOnUiThread(() -> Toast.makeText(activity, errorHandler.getFinalDescription(), Toast.LENGTH_LONG).show()); - activity.getClientInterface().getTransactionManager().tryToRepeatExecuteLastRequestInTransaction(); - } - - @Override - public void onTransactionDataReceivedError(TransactionData data) { - - } - - @Override - public void onUserInformationRequested(boolean signNeeded) { - activity.getClientInterface().getTransactionManager().sendTransactionUserData("signature", "phone", "email"); - } - - @Override - public void onTransactionDataReceived(TransactionData data) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction data has been received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onTransactionCompleted() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Operation has been successfully completed", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onRefundDataRequested() { - activity.getClientInterface().getTransactionManager().setRefundData(transaction, transaction.getAmount(), RefundType.General); - } - - @Override - public void onTransactionsListReceived(List transactionList) { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose transaction"); - - Spinner transactionListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, new ArrayList<>(transactionList)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - transactionListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - transaction = (Transaction) transactionListSpinner.getSelectedItem(); - activity.getClientInterface().getTransactionManager().makeCashRefund(this); - dialog.dismiss(); - }); - - builder.setView(transactionListSpinner); - activity.runOnUiThread(() -> builder.create().show()); - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Not authorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRequestedReportZ() { - - } - - @Override - public void onCompletedPrinting(PrinterResult printerErrorDataPrinterBaseDataPrinterResult) { - - } - - @Override - public void onStatusFiscalModule(FiscalStatusData fiscalStatusData) { - - } - - @Override - public void onPrinterForRegistrationGettingCompleted() { - - } - - @Override - public void onNoBoundedPrinterFound() { - - } - - @Override - public void onPrinterToUseSelectionRequested(List printerList) { - - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/EasyEcomRefundCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/EasyEcomRefundCallbackHandlerImpl.java deleted file mode 100644 index 2f23878..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/EasyEcomRefundCallbackHandlerImpl.java +++ /dev/null @@ -1,157 +0,0 @@ -package kz.com.aman.kassa.bank;; - -import android.app.AlertDialog; -import android.widget.ArrayAdapter; -import android.widget.Spinner; -import android.widget.Toast; - -import java.util.ArrayList; -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.EasyEcomRefundCallbackHandler; -import ru.m4bank.mpos.library.external.transactions.GetTransactionsListCallbackHandler; -import ru.m4bank.mpos.service.data.FiscalStatusData; -import ru.m4bank.mpos.service.data.PrinterBaseData; -import ru.m4bank.mpos.service.data.PrinterErrorData; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.data.dynamic.objects.transaction.RefundType; -import ru.m4bank.mpos.service.hardware.error.ErrorHandler; -import ru.m4bank.mpos.service.result.PrinterResult; -import ru.m4bank.mpos.service.result.Result; -import ru.m4bank.mpos.service.transactions.data.TransactionData; -import ru.m4bank.mpos.service.transactions.data.TransactionExecutionStatus; -import ru.m4bank.mpos.service.transactions.data.error.TransactionErrorData; - -public class EasyEcomRefundCallbackHandlerImpl implements EasyEcomRefundCallbackHandler, GetTransactionsListCallbackHandler { - - private final M4BankActivity activity; - private Transaction transaction; - - public EasyEcomRefundCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onTransactionInit() { - - } - - @Override - public void onTransactionExecutionStatusChanged(TransactionExecutionStatus newStatus) { - activity.runOnUiThread(() -> Toast.makeText(activity, newStatus.name(), Toast.LENGTH_SHORT).show()); - } - - @Override - public void onError(ErrorHandler errorHandler, TransactionErrorData transactionErrorData) { - activity.runOnUiThread(() -> Toast.makeText(activity, errorHandler.getFinalDescription(), Toast.LENGTH_LONG).show()); - } - - @Override - public void onErrorWithPossibilityToRetry(ErrorHandler errorHandler) { - activity.runOnUiThread(() -> Toast.makeText(activity, errorHandler.getFinalDescription(), Toast.LENGTH_LONG).show()); - activity.getClientInterface().getTransactionManager().tryToRepeatExecuteLastRequestInTransaction(); - } - - @Override - public void onTransactionDataReceivedError(TransactionData data) { - - } - - @Override - public void onUserInformationRequested(boolean signNeeded) { - activity.getClientInterface().getTransactionManager().sendTransactionUserData("signature", "phone", "email"); - } - - @Override - public void onTransactionDataReceived(TransactionData data) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction data has been received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onTransactionCompleted() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Operation has been successfully completed", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onRefundDataRequested() { - activity.getClientInterface().getTransactionManager().setRefundData(transaction, transaction.getAmount(), RefundType.General); - } - - @Override - public void onTransactionsListReceived(List transactionList) { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose transaction"); - - Spinner transactionListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, new ArrayList<>(transactionList)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - transactionListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - transaction = (Transaction) transactionListSpinner.getSelectedItem(); - activity.getClientInterface().getTransactionManager().makeEcomRefund(this); - dialog.dismiss(); - }); - - builder.setView(transactionListSpinner); - activity.runOnUiThread(() -> builder.create().show()); - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Not authorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRequestedReportZ() { - - } - - @Override - public void onCompletedPrinting(PrinterResult printerErrorDataPrinterBaseDataPrinterResult) { - - } - - @Override - public void onStatusFiscalModule(FiscalStatusData fiscalStatusData) { - - } - - @Override - public void onPrinterForRegistrationGettingCompleted() { - - } - - @Override - public void onNoBoundedPrinterFound() { - - } - - @Override - public void onPrinterToUseSelectionRequested(List printerList) { - - } - - @Override - public void onPreviewTransactionDataReceived(TransactionData transactionData) { - - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/EasyReversalCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/EasyReversalCallbackHandlerImpl.java deleted file mode 100644 index a56d189..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/EasyReversalCallbackHandlerImpl.java +++ /dev/null @@ -1,177 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.app.AlertDialog; -import android.widget.ArrayAdapter; -import android.widget.Spinner; -import android.widget.Toast; - -import java.util.ArrayList; -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.GetTransactionsListCallbackHandler; -import ru.m4bank.mpos.library.external.transactions.ReversalCallbackHandler; -import ru.m4bank.mpos.service.data.FiscalStatusData; -import ru.m4bank.mpos.service.data.PrinterBaseData; -import ru.m4bank.mpos.service.data.PrinterErrorData; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.hardware.error.ErrorHandler; -import ru.m4bank.mpos.service.result.PrinterResult; -import ru.m4bank.mpos.service.result.Result; -import ru.m4bank.mpos.service.transactions.data.TransactionData; -import ru.m4bank.mpos.service.transactions.data.TransactionExecutionStatus; -import ru.m4bank.mpos.service.transactions.data.error.TransactionErrorData; - -public class EasyReversalCallbackHandlerImpl implements ReversalCallbackHandler, GetTransactionsListCallbackHandler { - - private final M4BankActivity activity; - private Transaction transaction; - - public EasyReversalCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onTransactionSelectionRequested(List transactionList) { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose transaction"); - - Spinner transactionListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, new ArrayList<>(transactionList)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - transactionListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface().getTransactionManager().selectTransaction((Transaction) transactionListSpinner.getSelectedItem()); - dialog.dismiss(); - }); - - builder.setView(transactionListSpinner); - activity.runOnUiThread(() -> builder.create().show()); - } - - @Override - public void onCardShortPanRequested() { - activity.getClientInterface().getTransactionManager().setCardShortPan("0069", 20, 0); - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onTransactionInit() { - activity.getClientInterface().getTransactionManager().processOnlineTransaction(false); - } - - - @Override - public void onTransactionExecutionStatusChanged(TransactionExecutionStatus newStatus) { - activity.runOnUiThread(() -> Toast.makeText(activity, newStatus.name(), Toast.LENGTH_SHORT).show()); - } - - @Override - public void onError(ErrorHandler errorHandler, TransactionErrorData transactionErrorData) { - activity.runOnUiThread(() -> Toast.makeText(activity, errorHandler.getFinalDescription(), Toast.LENGTH_LONG).show()); - } - - @Override - public void onErrorWithPossibilityToRetry(ErrorHandler errorHandler) { - - } - - @Override - public void onTransactionDataReceivedError(TransactionData data) { - - } - - @Override - public void onUserInformationRequested(boolean signNeeded) { - //activity.getClientInterface().getTransactionManager().sendTransactionUserData(null, "phone", "email"); - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction reversal complete", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onTransactionDataReceived(TransactionData data) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction data has been received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onTransactionCompleted() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Operation has been successfully completed", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Not authorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onSelectTransaction() { - activity.getClientInterface().getTransactionManager().selectTransaction(transaction); - } - - @Override - public void onTransactionsListReceived(List transactionList) { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose transaction"); - - Spinner transactionListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, new ArrayList<>(transactionList)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - transactionListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - transaction = (Transaction) transactionListSpinner.getSelectedItem(); - activity.getClientInterface().getTransactionManager().makeEasyReversal(this); - dialog.dismiss(); - }); - - builder.setView(transactionListSpinner); - activity.runOnUiThread(() -> builder.create().show()); - } - - @Override - public void onRequestedReportZ() { - - } - - @Override - public void onCompletedPrinting(PrinterResult printerErrorDataPrinterBaseDataPrinterResult) { - - } - - @Override - public void onStatusFiscalModule(FiscalStatusData fiscalStatusData) { - - } - - @Override - public void onPrinterForRegistrationGettingCompleted() { - - } - - @Override - public void onNoBoundedPrinterFound() { - - } - - @Override - public void onPrinterToUseSelectionRequested(List list) { - - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/EcomPaymentCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/EcomPaymentCallbackHandlerImpl.java deleted file mode 100644 index 2f6fb64..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/EcomPaymentCallbackHandlerImpl.java +++ /dev/null @@ -1,174 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.widget.Toast; - -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.EcomPaymentCallbackHandler; -import ru.m4bank.mpos.service.data.FiscalStatusData; -import ru.m4bank.mpos.service.data.dynamic.objects.AdditionalTransactionData; -import ru.m4bank.mpos.service.data.dynamic.objects.EmailStatus; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.hardware.error.ErrorHandler; -import ru.m4bank.mpos.service.result.PrinterResult; -import ru.m4bank.mpos.service.result.Result; -import ru.m4bank.mpos.service.transactions.data.TransactionData; -import ru.m4bank.mpos.service.transactions.data.TransactionExecutionStatus; -import ru.m4bank.mpos.service.transactions.data.error.TransactionErrorData; -import timber.log.Timber; - -public class EcomPaymentCallbackHandlerImpl implements EcomPaymentCallbackHandler { - - private final M4BankActivity activity; - - public EcomPaymentCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onWorkFlowDataRequested() { - Timber.d("WorkFlow requested"); - } - - @Override - public void onTransactionAmountRequested() { - activity.getClientInterface().getTransactionManager().setTransactionAmount(activity.getAmount()); - } - - @Override - public void onTransactionDataRequested() { - activity.getClientInterface().getTransactionManager().setAdditionalTransactionData(new AdditionalTransactionData.Builder(null).build()); - } - - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onTransactionInit() { - activity.getClientInterface().getTransactionManager().processOnlineTransaction(false); - } - - - @Override - public void onTransactionExecutionStatusChanged(TransactionExecutionStatus newStatus) { - - } - - @Override - public void onError(ErrorHandler errorHandler, TransactionErrorData transactionErrorData) { - - } - - @Override - public void onErrorWithPossibilityToRetry(ErrorHandler errorHandler) { - activity.runOnUiThread(() -> Toast.makeText(activity, errorHandler.getFinalDescription(), Toast.LENGTH_LONG).show()); - activity.getClientInterface().getTransactionManager().tryToRepeatExecuteLastRequestInTransaction(); - } - - @Override - public void onTransactionDataReceivedError(TransactionData data) { - - } - - @Override - public void onUserInformationRequested(boolean signNeeded) { - activity.getClientInterface() - .getTransactionManager() - .sendTransactionUserData("signature", "phone", "email"); - } - - @Override - public void onFormUrlRequested(String formUrl) { - - activity.getClientInterface() - .getTransactionManager() - .sendEcomEmail("qrCode", null, "ap@m4bank.com", EmailStatus.SEND); - - activity.runOnUiThread(() -> Toast.makeText(activity, "onFormUrlRequested " + formUrl, Toast.LENGTH_LONG) - .show()); - - } - - @Override - public void onPreviewTransactionDataReceived(TransactionData data) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Preview Transaction data has been received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onTransactionDataReceived(TransactionData data) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction data has been received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onTransactionCompleted() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Operation has been successfully completed", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Not authorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onTransactionDetailsReceived(Transaction transaction) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction details received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onSuccessStatusTransaction(Transaction transaction) { - - } - - @Override - public void onErrorStatusTransaction() { - - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRequestedReportZ() { - - } - - @Override - public void onCompletedPrinting(PrinterResult printerResult) { - - } - - @Override - public void onStatusFiscalModule(FiscalStatusData fiscalStatusData) { - - } - - @Override - public void onPrinterForRegistrationGettingCompleted() { - - } - - @Override - public void onNoBoundedPrinterFound() { - - } - - @Override - public void onPrinterToUseSelectionRequested(List printerList) { - - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/GetLicenseCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/GetLicenseCallbackHandlerImpl.java deleted file mode 100644 index a828867..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/GetLicenseCallbackHandlerImpl.java +++ /dev/null @@ -1,34 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.widget.Toast; - -import ru.m4bank.mpos.library.external.configuration.GetLicenseCallbackHandler; -import ru.m4bank.mpos.service.result.Result; - -public class GetLicenseCallbackHandlerImpl implements GetLicenseCallbackHandler { - private final M4BankActivity activity; - - public GetLicenseCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onLicenseReceived(String license) { - activity.runOnUiThread(() -> Toast.makeText(activity, license, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT).show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/GetMerchantUsersCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/GetMerchantUsersCallbackHandlerImpl.java deleted file mode 100644 index 8945a3f..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/GetMerchantUsersCallbackHandlerImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.widget.Toast; - -import java.util.List; - -import ru.m4bank.mpos.library.external.authorization.GetMerchantUsersCallbackHandler; -import ru.m4bank.mpos.service.data.dynamic.objects.MerchantUser; -import ru.m4bank.mpos.service.result.Result; - -public class GetMerchantUsersCallbackHandlerImpl implements GetMerchantUsersCallbackHandler { - private final M4BankActivity activity; - - public GetMerchantUsersCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onListOfUsersRequested(List userList) { - activity.runOnUiThread(() -> Toast.makeText(activity, "loaded list of merchant users", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/GetSerialNumberCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/GetSerialNumberCallbackHandlerImpl.java deleted file mode 100644 index 7888711..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/GetSerialNumberCallbackHandlerImpl.java +++ /dev/null @@ -1,103 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.app.AlertDialog; -import android.widget.ArrayAdapter; -import android.widget.Spinner; -import android.widget.Toast; - -import java.util.ArrayList; -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.GetSerialNumberCallbackHandler; -import ru.m4bank.mpos.service.data.dynamic.objects.Reader; -import ru.m4bank.mpos.service.result.GetSNResult; -import timber.log.Timber; - -public class GetSerialNumberCallbackHandlerImpl implements GetSerialNumberCallbackHandler { - - private final M4BankActivity activity; - - public GetSerialNumberCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onCardReaderForTransactionGettingCompleted() { - } - - @Override - public void onNoBoundedDevicesFound() { - activity.runOnUiThread(() -> Toast.makeText(activity, "onNoBoundedDevicesFound", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onConnectingProcessStarted(String s) { - } - - @Override - public void onDisconnectedEventReceivedOrCanNotEstablishConnection(boolean b, String s) { - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "notAuthorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onDeviceToConnectSelectionRequested(List list) { - Timber.d("onDeviceToConnectSelectionRequested"); - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose device"); - - Spinner deviceListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, list); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - deviceListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface() - .getCardReaderManager() - .setCardReaderToUse((Reader) deviceListSpinner.getSelectedItem()); - dialog.dismiss(); - }); - - builder.setView(deviceListSpinner); - builder.create().show(); - }); - } - - @Override - public void onDeviceToUseSelectionRequested(List list) { - Timber.d("onDeviceToUseSelectionRequested"); - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose device"); - - Spinner deviceListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, new ArrayList<>(list)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - deviceListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface() - .getCardReaderManager() - .setCardReaderToUse((Reader) deviceListSpinner.getSelectedItem()); - dialog.dismiss(); - }); - - builder.setView(deviceListSpinner); - builder.create().show(); - }); - } - - @Override - public void onCompleted(GetSNResult result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getSerialNumber(), Toast.LENGTH_SHORT).show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "onWrongApiCalled", Toast.LENGTH_SHORT).show()); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/GetTransactionDetailsCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/GetTransactionDetailsCallbackHandlerImpl.java deleted file mode 100644 index 6360623..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/GetTransactionDetailsCallbackHandlerImpl.java +++ /dev/null @@ -1,84 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.app.AlertDialog; -import android.widget.ArrayAdapter; -import android.widget.Spinner; -import android.widget.Toast; - -import java.util.ArrayList; -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.GetTransactionDetailsCallbackHandler; -import ru.m4bank.mpos.library.external.transactions.GetTransactionsListCallbackHandler; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.result.Result; - -class GetTransactionDetailsCallbackHandlerImpl implements GetTransactionDetailsCallbackHandler, GetTransactionsListCallbackHandler { - private final M4BankActivity activity; - - GetTransactionDetailsCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onTransactionDetailsReceived(Transaction transaction) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction details received: " + transaction, Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onSuccessStatusTransaction(Transaction transaction) { - - } - - @Override - public void onErrorStatusTransaction() { - - } - - @Override - public void onTransactionsListReceived(List transactionList) { - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose transaction"); - - Spinner transactionListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, new ArrayList<>(transactionList)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - transactionListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - Transaction transaction = (Transaction) transactionListSpinner.getSelectedItem(); - activity.getClientInterface() - .getTransactionManager() - .getTransactionDetails(this, transaction.getOperationalDayNumber(), transaction - .getTransactionNumber(), transaction.getMobileTerminalId()); - dialog.dismiss(); - }); - - builder.setView(transactionListSpinner); - builder.create().show(); - }); - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Not authorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/GetTransactionListForRefundCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/GetTransactionListForRefundCallbackHandlerImpl.java deleted file mode 100644 index 2547e82..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/GetTransactionListForRefundCallbackHandlerImpl.java +++ /dev/null @@ -1,62 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.widget.Toast; - -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.GetTransactionDetailsCallbackHandler; -import ru.m4bank.mpos.library.external.transactions.GetTransactionsListCallbackHandler; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.result.Result; - -class GetTransactionListForRefundCallbackHandlerImpl implements GetTransactionDetailsCallbackHandler, GetTransactionsListCallbackHandler { - private final M4BankActivity activity; - private final CardRefundCallbackHandlerImpl cardRefundCallbackHandler; - - GetTransactionListForRefundCallbackHandlerImpl(M4BankActivity activity, CardRefundCallbackHandlerImpl cardRefundCallbackHandler) { - this.cardRefundCallbackHandler = cardRefundCallbackHandler; - this.activity = activity; - } - - @Override - public void onTransactionDetailsReceived(Transaction transaction) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction details received: " + transaction, Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onSuccessStatusTransaction(Transaction transaction) { - - } - - @Override - public void onErrorStatusTransaction() { - - } - - @Override - public void onTransactionsListReceived(List transactionList) { - cardRefundCallbackHandler.onTransactionsListReceived(transactionList); - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Not authorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/LoadTerminalKeysCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/LoadTerminalKeysCallbackHandlerImpl.java deleted file mode 100644 index 01098c6..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/LoadTerminalKeysCallbackHandlerImpl.java +++ /dev/null @@ -1,133 +0,0 @@ -package kz.com.aman.kassa.bank; - - -import android.app.AlertDialog; -import android.widget.ArrayAdapter; -import android.widget.Spinner; -import android.widget.Toast; - -import java.util.ArrayList; -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.LoadTerminalKeysCallbackHandler; -import ru.m4bank.mpos.service.data.dynamic.objects.Reader; -import ru.m4bank.mpos.service.data.dynamic.objects.result.ResultCode; -import ru.m4bank.mpos.service.hardware.network.external.TerminalKeyType; -import ru.m4bank.mpos.service.result.Result; -import timber.log.Timber; - -class LoadTerminalKeysCallbackHandlerImpl implements LoadTerminalKeysCallbackHandler { - - private final M4BankActivity activity; - - public LoadTerminalKeysCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void notAuthorized() { - Timber.d("Not authorized"); - activity.runOnUiThread(() -> Toast.makeText(activity, "Not authorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onKeyLoad(TerminalKeyType terminalKeyType, String description, ResultCode resultCode) { - Timber.d("key loaded".concat(terminalKeyType.name())); - } - - @Override - public void onKeyReceived(TerminalKeyType terminalKeyType, String description, ResultCode resultCode) { - Timber.d("key loaded".concat(terminalKeyType.name())); - } - - @Override - public void onError(String description, ResultCode resultCode) { - Timber.d("key loaded" + " onError"); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCardReaderForTransactionGettingCompleted() { - Timber.d("Reader has been received"); - } - - @Override - public void onDeviceToConnectSelectionRequested(List deviceList) { - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose device"); - - Spinner deviceListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, deviceList); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - deviceListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface() - .getCardReaderManager() - .selectCardReader(deviceListSpinner.getSelectedItem().toString()); - dialog.dismiss(); - }); - - builder.setView(deviceListSpinner); - builder.create().show(); - }); - } - - @Override - public void onDeviceToUseSelectionRequested(List deviceList) { - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose device"); - - Spinner deviceListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, new ArrayList<>(deviceList)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - deviceListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface() - .getCardReaderManager() - .setCardReaderToUse((Reader) deviceListSpinner.getSelectedItem()); - dialog.dismiss(); - }); - - builder.setView(deviceListSpinner); - builder.create().show(); - }); - } - - @Override - public void onNoBoundedDevicesFound() { - Timber.d("No bounded readers"); - } - - @Override - public void onConnectingProcessStarted(String deviceName) { - Timber.d("onConnectingProcessStarted"); - } - - @Override - public void onDisconnectedEventReceivedOrCanNotEstablishConnection(boolean reconnectAvailable, String description) { - if (reconnectAvailable) { - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setMessage("Connection to cardreader has been lost, try to reconnect and repeat last operation?"); - builder.setCancelable(false); - builder.setPositiveButton("Yes", (dialog, which) -> activity.getClientInterface().tryToReconnectAndRepeatLast()); - builder.setNegativeButton("No", (dialog, which) -> activity.getClientInterface().cancel()); - builder.create().show(); - }); - } - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/LogOutCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/LogOutCallbackHandlerImpl.java deleted file mode 100644 index 17ea1cc..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/LogOutCallbackHandlerImpl.java +++ /dev/null @@ -1,29 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.widget.Toast; - -import ru.m4bank.mpos.library.external.authorization.LogOutCallbackHandler; -import ru.m4bank.mpos.service.result.Result; - -public class LogOutCallbackHandlerImpl implements LogOutCallbackHandler { - private final M4BankActivity activity; - - public LogOutCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT).show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Not authorized", Toast.LENGTH_SHORT).show()); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/M4BankActivity.java b/android/app/src/main/java/kz/com/aman/kassa/bank/M4BankActivity.java index 9973cb7..2eedec7 100644 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/M4BankActivity.java +++ b/android/app/src/main/java/kz/com/aman/kassa/bank/M4BankActivity.java @@ -14,14 +14,6 @@ import android.widget.Toast; import androidx.annotation.NonNull; -import kz.com.aman.kassa.R; -import kz.com.aman.kassa.bank.builders.SslConfigurationBuilder; -import kz.com.aman.kassa.bank.gui.SelectDialogCallback; -import kz.com.aman.kassa.bank.gui.SelectElementDialog; -import kz.com.aman.kassa.bank.managing.PreferencesManager; -import kz.com.aman.kassa.bank.permissions.PermissionsManager; -import kz.com.aman.kassa.bank.permissions.PermissionsManagerImpl; - import org.slf4j.LoggerFactory; import java.text.SimpleDateFormat; @@ -36,6 +28,13 @@ import ch.qos.logback.classic.LoggerContext; import ch.qos.logback.classic.android.LogcatAppender; import ch.qos.logback.classic.encoder.PatternLayoutEncoder; import io.flutter.app.FlutterActivity; +import kz.com.aman.kassa.R; +import kz.com.aman.kassa.bank.builders.SslConfigurationBuilder; +import kz.com.aman.kassa.bank.gui.SelectDialogCallback; +import kz.com.aman.kassa.bank.gui.SelectElementDialog; +import kz.com.aman.kassa.bank.managing.PreferencesManager; +import kz.com.aman.kassa.bank.permissions.PermissionsManager; +import kz.com.aman.kassa.bank.permissions.PermissionsManagerImpl; import ru.m4bank.mpos.library.M4BankMposClient; import ru.m4bank.mpos.library.M4BankMposClientInterfaceFacade; import ru.m4bank.mpos.library.M4BankMposParameters; @@ -49,7 +48,8 @@ import ru.m4bank.mpos.library.external.transactions.CardReadingCallbackHandler; import ru.m4bank.mpos.library.external.transactions.CashPaymentCallbackHandler; import ru.m4bank.mpos.library.external.transactions.EasyCardRefundCallbackHandler; import ru.m4bank.mpos.library.external.transactions.EasyCashRefundCallbackHandler; -import ru.m4bank.mpos.library.external.transactions.GetSerialNumberCallbackHandler; +import ru.m4bank.mpos.library.external.transactions.EasyReversalSavedOperationCallbackHandler; +import ru.m4bank.mpos.library.external.transactions.GetCardReaderInformationCallbackHandler; import ru.m4bank.mpos.library.external.transactions.GetTransactionDetailsCallbackHandler; import ru.m4bank.mpos.library.external.transactions.GetTransactionsListCallbackHandler; import ru.m4bank.mpos.library.external.transactions.LastReversalCardPaymentCallbackHandler; @@ -113,7 +113,8 @@ public class M4BankActivity extends FlutterActivity { private PrintingCallbackHandlerImpl printingCallbackHandler; private XReportCallbackHandler xReportCallbackHandler; private LastReversalCardPaymentCallbackHandler revertCurrentOperationCallbackHandler; - private GetSerialNumberCallbackHandler getSerialNumberCallbackHandler; + private GetCardReaderInformationCallbackHandler getCardReaderInformationCallbackHandler; + private EasyReversalSavedOperationCallbackHandler easyReversalSavedOperationCallbackHandler; private GetTransactionListForRefundCallbackHandlerImpl getTransactionListForRefundCallbackHandler; private SendRegisterRequestCallbackHandlerImpl sendRegisterRequestCallbackHandler; @@ -159,7 +160,7 @@ public class M4BankActivity extends FlutterActivity { public void onPermissionsDeclined() { Toast.makeText(M4BankActivity.this, "Application can work incorrectly caused by missing permissions", Toast.LENGTH_SHORT) - .show(); + .show(); init(); } }; @@ -170,7 +171,7 @@ public class M4BankActivity extends FlutterActivity { @Override public void onRequestPermissionsResult(int requestCode, @NonNull String permissions[], - @NonNull int[] grantResults) { + @NonNull int[] grantResults) { permissionsManager.onRequestPermissionsResult(requestCode, permissions, grantResults); } @@ -223,7 +224,7 @@ public class M4BankActivity extends FlutterActivity { //слушатель для получения списка мерчантов getMerchantUsersCallbackHandler = new GetMerchantUsersCallbackHandlerImpl(this); - //слушатель поулчения лицензии + //слушатель получения лицензии getLicenseCallbackHandler = new GetLicenseCallbackHandlerImpl(this); //слушатель повторной отправки чека resendReceiptCallbackHandler = new ResendReceiptCallbackHandlerImpl(this); @@ -236,13 +237,15 @@ public class M4BankActivity extends FlutterActivity { //слушатели печати printingCallbackHandler = new PrintingCallbackHandlerImpl(this); //слушатель для получения серийного номера - getSerialNumberCallbackHandler = new GetSerialNumberCallbackHandlerImpl(this); + getCardReaderInformationCallbackHandler = new GetCardReaderInformationCallbackHandlerImpl(this); //слушатель для считывания barcode scanBarCodeCallbackHandler = new ScanBarCodeCallbackHandlerImpl(this); + // слушатель для отмены неуспешной операции, которая сохранена в холдере + easyReversalSavedOperationCallbackHandler = new EasyReversalSavedOperationCallbackHandlerImpl(this); initLoginForm(); - initButton(R.id.getSerialNumber, v -> getSerialNumber()); + initButton(R.id.readerInformation, v -> getReaderInformation()); initButton(R.id.activate, v -> clientInterface.getAuthorizationManager().activate(activationCallbackHandler)); @@ -250,16 +253,16 @@ public class M4BankActivity extends FlutterActivity { v -> clientInterface.getAuthorizationManager().logOut(logOutCallbackHandler)); initButton(R.id.checkConnection, v -> clientInterface.getConfigurationManager() - .checkConnection( - checkConnectionCallbackHandler)); + .checkConnection( + checkConnectionCallbackHandler)); initButton(R.id.checkAccess, v -> { String result; if (clientInterface.getConfigurationManager() - .isOperationAllowed( - OperationType.getByCode(((Spinner) findViewById(R.id.checkAccessSpinner)) - .getSelectedItem() - .toString()))) { + .isOperationAllowed( + OperationType.getByCode(((Spinner) findViewById(R.id.checkAccessSpinner)) + .getSelectedItem() + .toString()))) { result = "YES"; } else { result = "NO"; @@ -270,7 +273,7 @@ public class M4BankActivity extends FlutterActivity { initButton(R.id.getAccesses, v -> { StringBuilder result = new StringBuilder(); List availableOperations = clientInterface.getConfigurationManager() - .getAllowedOperationsList(); + .getAllowedOperationsList(); if (!availableOperations.isEmpty()) { for (OperationType o : availableOperations) { result.append(o.getCode()).append("\n"); @@ -335,63 +338,63 @@ public class M4BankActivity extends FlutterActivity { //////////// вызов отмены текущей транзакции с использованием нового слушателя (только во время транзакции) - хостовые терминалы////////////// initButton(R.id.makeReversalLastWithCallback, v -> clientInterface.getTransactionManager() - .revertCurrentOperation( - revertCurrentOperationCallbackHandler)); + .revertCurrentOperation( + revertCurrentOperationCallbackHandler)); /////////// вызовы отмены по карте////////////// initButton(R.id.makeEasyCardReversal, v -> { clientInterface.cancel(); clientInterface.getTransactionManager() - .getTransactionsList(easyCardReversalCallbackHandler, 20, 0, GetOperationType.SHOW, null); + .getTransactionsList(easyCardReversalCallbackHandler, 20, 0, GetOperationType.SHOW, null); }); /////////// вызовы отмены на сервере////////////// initButton(R.id.makeEasyReversal, v -> clientInterface.getTransactionManager() - .getTransactionsList( - (GetTransactionsListCallbackHandler) easyReversalCallbackHandler, - 20, 0, GetOperationType.SHOW, - null)); + .getTransactionsList( + (GetTransactionsListCallbackHandler) easyReversalCallbackHandler, + 20, 0, GetOperationType.SHOW, + null)); //////////// вызовы возвратов ////////////// initButton(R.id.makeCardRefund, v -> { clientInterface.cancel(); clientInterface.getTransactionManager() - .getTransactionsList(getTransactionListForRefundCallbackHandler, 20, 0, - GetOperationType.SHOW, null); + .getTransactionsList(getTransactionListForRefundCallbackHandler, 20, 0, + GetOperationType.SHOW, null); }); initButton(R.id.makeCashRefund, v -> { clientInterface.cancel(); clientInterface.getTransactionManager() - .getTransactionsList((GetTransactionsListCallbackHandler) easyCashRefundCallbackHandler, 20, - 0, GetOperationType.SHOW, null); + .getTransactionsList((GetTransactionsListCallbackHandler) easyCashRefundCallbackHandler, 20, + 0, GetOperationType.SHOW, null); }); initButton(R.id.makeAlipayRefund, v -> clientInterface.getTransactionManager() - .getTransactionsList( - (GetTransactionsListCallbackHandler) easyAlipayRefundCallbackHandler, - 20, 0, GetOperationType.SHOW, - null)); + .getTransactionsList( + (GetTransactionsListCallbackHandler) easyAlipayRefundCallbackHandler, + 20, 0, GetOperationType.SHOW, + null)); //////////// получение списка мерчантов ////////////// initButton(R.id.getMerchantUsers, v -> clientInterface.getAuthorizationManager() - .getMerchantUsers(getMerchantUsersCallbackHandler, 1000, - 0)); + .getMerchantUsers(getMerchantUsersCallbackHandler, 1000, + 0)); //////////// повторная отправка чека на почту ////////////// initButton(R.id.resendReceipt, v -> clientInterface.getTransactionManager() - .getTransactionsList( - (GetTransactionsListCallbackHandler) resendReceiptCallbackHandler, - 20, 0, GetOperationType.SHOW, - null)); + .getTransactionsList( + (GetTransactionsListCallbackHandler) resendReceiptCallbackHandler, + 20, 0, GetOperationType.SHOW, + null)); //////////// получение детальной информации о транзакции ////////////// initButton(R.id.getTransactionDetails, v -> clientInterface.getTransactionManager() - .getTransactionsList( - (GetTransactionsListCallbackHandler) getTransactionDetailsCallbackHandler, - 20, 0, - GetOperationType.SHOW, - null)); + .getTransactionsList( + (GetTransactionsListCallbackHandler) getTransactionDetailsCallbackHandler, + 20, 0, + GetOperationType.SHOW, + null)); //////////// получение детальной информации о текущей транзакции////////////// initButton(R.id.getCurrentTransactionDetails, @@ -399,18 +402,17 @@ public class M4BankActivity extends FlutterActivity { //////////// получение спика транзакций с использованием фильтра ////////////// initButton(R.id.getTransactionListFilter, v -> clientInterface.getTransactionManager() - .getTransactionsList( - (GetTransactionsListCallbackHandler) getTransactionDetailsCallbackHandler, - 20, 0, GetOperationType.SEARCH, - new TransactionFilterData.Builder().setScanerCode( - "6354635635736647656").build())); + .getTransactionsList( + (GetTransactionsListCallbackHandler) getTransactionDetailsCallbackHandler, + 20, 0, GetOperationType.SEARCH, + new TransactionFilterData.Builder().setScanerCode( + "6354635635736647656").build())); //////////// отправка данных для регистрации mpos - дополнительный функционал при активации////////////// findViewById(R.id.sendRegisterRequest).setOnClickListener(v -> { String url = "https://test.ponkratenko.ru"; - //String savedServerUrl = PreferencesManager.loadStringField(this, PreferencesManager.Field.SERVER_URL, getString(R.string.default_server_address_mpos_5_0_test)); clientInterface.getConfigurationManager() - .sendRegisterRequest(sendRegisterRequestCallbackHandler, getRegisterRequestData(), url); + .sendRegisterRequest(sendRegisterRequestCallbackHandler, getRegisterRequestData(), url); }); //запись на терминал ключей tmk, tpk @@ -421,7 +423,7 @@ public class M4BankActivity extends FlutterActivity { add(TerminalKeyType.Tpk); }}; clientInterface.getCardReaderManager() - .loadTerminalKeys(new LoadTerminalKeysCallbackHandlerImpl(this), keysForDynamicUpdate); + .loadTerminalKeys(new LoadTerminalKeysCallbackHandlerImpl(this), keysForDynamicUpdate); }); //////////// закрытие смены и сверка с сервером ////////////// @@ -430,8 +432,8 @@ public class M4BankActivity extends FlutterActivity { //////////// добавление принтера в систему с возможностью печати во время транзакций ////////////// initButton(R.id.addPrinter, v -> clientInterface.getPrinterManager() - .addNewPrinter(printingCallbackHandler, - PrinterSeries.NEW_PRINTER)); + .addNewPrinter(printingCallbackHandler, + PrinterSeries.NEW_PRINTER)); //////////// удаление принтера из системы ////////////// initButton(R.id.deletePrinter, @@ -440,14 +442,14 @@ public class M4BankActivity extends FlutterActivity { initButton(R.id.printFiscal, v -> { clientInterface.cancel(); clientInterface.getPrinterManager() - .printFiscalTransactionCheck(printingCallbackHandler, DataCreatorUtils.makeFiscalData()); + .printFiscalTransactionCheck(printingCallbackHandler, DataCreatorUtils.makeFiscalData()); }); initButton(R.id.printSlipCheck, v -> { clientInterface.cancel(); clientInterface.getPrinterManager() - .printFirstSlipTransactionCheck(printingCallbackHandler, DataCreatorUtils.makeSlipData(true), - SlipType.ERROR); + .printFirstSlipTransactionCheck(printingCallbackHandler, DataCreatorUtils.makeSlipData(true), + SlipType.ERROR); }); initButton(R.id.printReportX, v1 -> { @@ -479,6 +481,16 @@ public class M4BankActivity extends FlutterActivity { initButton(R.id.readBarCode, v2 -> showDialogScanner()); + findViewById(R.id.versionStore).setOnClickListener(v -> { + String result = clientInterface.getExternalApiManager().getExternalStoreVersion(); + Toast.makeText(this, result + "", Toast.LENGTH_SHORT).show(); + }); + + findViewById(R.id.versionTracker).setOnClickListener(v -> { + String result = clientInterface.getExternalApiManager().getExternalTrackerVersion(); + Toast.makeText(this, result + "", Toast.LENGTH_SHORT).show(); + }); + String savedServerUrl = PreferencesManager.loadStringField(this, PreferencesManager.Field.SERVER_URL, getString(R.string.default_server_address_mpos_5_0_test)); String serverUrl; @@ -583,6 +595,11 @@ public class M4BankActivity extends FlutterActivity { //обновление словаря в библиотеке ридера initButton(R.id.updateDictionary, v -> updateDictionary(aisinoDictionary)); + + // отмена неуспешной операции, которая сохранена в холдере + initButton(R.id.makeReversalSavedUnsuccessfulOperation, v -> + clientInterface.getTransactionManager() + .makeReversalSavedUnsuccessfulOperation(easyReversalSavedOperationCallbackHandler)); } private void initButton(int id, View.OnClickListener onClickListener) { @@ -610,6 +627,7 @@ public class M4BankActivity extends FlutterActivity { .energySaverModeTime(150) .pinLengthsArray(new byte[]{4, 6}) .shutDownModeTime(300) + .deviceType(new DeviceTypeDefiner().define()) .build(); } @@ -662,8 +680,8 @@ public class M4BankActivity extends FlutterActivity { clientInterface.getConfigurationManager().updateDictionary(dictionaryCore); } - private void getSerialNumber() { - clientInterface.getCardReaderManager().getCardReaderSerialNumber(getSerialNumberCallbackHandler); + private void getReaderInformation() { + clientInterface.getCardReaderManager().getCardReaderInformation(getCardReaderInformationCallbackHandler); } @Override @@ -693,7 +711,7 @@ public class M4BankActivity extends FlutterActivity { private RegisterRequestData getRegisterRequestData() { String code = "1" + (int) (Math.random() * 1000) + "" + (int) (Math.random() * 1000) + "" + - (int) (Math.random() * 1000); + (int) (Math.random() * 1000); String date = new SimpleDateFormat("yyyy-MM-dd H:m:s").format(new Date()); String acquiringType = "mPOS"; String ip = "169.254.10.10"; diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/PrintingCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/PrintingCallbackHandlerImpl.java deleted file mode 100644 index ecd9f07..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/PrintingCallbackHandlerImpl.java +++ /dev/null @@ -1,77 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.widget.Toast; - -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.PrintingCallbackHandler; -import ru.m4bank.mpos.service.data.FiscalStatusData; -import ru.m4bank.mpos.service.data.PrinterBaseData; -import ru.m4bank.mpos.service.data.PrinterErrorData; -import ru.m4bank.mpos.service.hardware.printer.dto.data.PrintingType; -import ru.m4bank.mpos.service.result.PrinterResult; -import ru.m4bank.mpos.service.result.Result; -import timber.log.Timber; - -public class PrintingCallbackHandlerImpl implements PrintingCallbackHandler> { - - private final M4BankActivity activity; - - public PrintingCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onRequestedReportZ() { - Timber.i("onRequestedReportZ"); - activity.getClientInterface().getPrinterManager().printReport(this, PrintingType.Z_REPORT); - } - - @Override - public void onCompletedPrinting(PrinterResult printerResult) { - Timber.i("onCompletedPrinting = " + printerResult); - activity.runOnUiThread(() -> Toast.makeText(activity, "onCompletedPrinting = " + printerResult, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onStatusFiscalModule(FiscalStatusData fiscalStatusData) { - - } - - @Override - public void onPrinterForRegistrationGettingCompleted() { - Timber.i("onPrinterForRegistrationGettingCompleted"); - activity.runOnUiThread(() -> Toast.makeText(activity, "Saved printer - " + activity.getClientInterface().getPrinterManager().isSavedPrinterName(), Toast.LENGTH_SHORT).show()); - } - - @Override - public void onNoBoundedPrinterFound() { - Timber.i("onNoBoundedPrinterFound"); - } - - @Override - public void onPrinterToUseSelectionRequested(List printerList) { - Timber.i("printerList = " + printerList); - activity.getClientInterface().getPrinterManager().selectPrinter(printerList.get(0).toString()); - } - - @Override - public void onCompleted(Result result) { - Timber.i("onCompleted = " + result.getResultType().toString()); - } - - @Override - public void onWrongApiCalled() { - Timber.i("onWrongApiCalled"); - } - - @Override - public void onRepeat(int attemptNumber) { - Timber.i("onRepeat"); - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Not authorized", Toast.LENGTH_SHORT).show()); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/ReconciliationPrinterDataBuilder.java b/android/app/src/main/java/kz/com/aman/kassa/bank/ReconciliationPrinterDataBuilder.java deleted file mode 100644 index 3663741..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/ReconciliationPrinterDataBuilder.java +++ /dev/null @@ -1,73 +0,0 @@ -package kz.com.aman.kassa.bank; - -import java.util.ArrayList; -import java.util.List; -import ru.m4bank.mpos.service.data.dynamic.objects.CurrencyEnum; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.hardware.printer.dto.data.ReconciliationData; -import ru.m4bank.mpos.service.hardware.printer.dto.data.ReconciliationOperationData; -import ru.m4bank.mpos.service.hardware.printer.dto.data.TransactionType; -import ru.m4bank.mpos.service.transactions.data.TransactionMoneyInteractionType; - - -public class ReconciliationPrinterDataBuilder { - - public ReconciliationData build(List transactionList, boolean closeDay) { - ArrayList reconciliationOperationDataList = new ArrayList(); - if (transactionList == null) return null; - for (Transaction transaction : transactionList) { - if (!isErrorStatus(transaction)) { - reconciliationOperationDataList.add(buildOneElement(transaction)); - } - } - return new ReconciliationData(reconciliationOperationDataList, closeDay); - } - - private ReconciliationOperationData buildOneElement(Transaction transaction) { - return new ReconciliationOperationData.Builder( - transaction.getAmount(), - transaction.getMaskedPan(), - CurrencyEnum.getCurrencyEnum(Integer.parseInt(transaction.getCurrency3DigitCode())), - getPrinterOperationType(transaction.getTransactionType()), - transaction.getExternalTerminalId(), transaction.getPiDataType().getTypePIData().equals(TransactionMoneyInteractionType.CASH.toString())) - .cardType(transaction.getCardType()) - .date(transaction.getTransactionDate()) - .checkId(transaction.getCheck()) - .externalMerchantId(transaction.getExternalMerchantId()) - .externalMerchantName(transaction.getExternalMerchantName()) - .externalMerchantAdress(transaction.getExternalMerchantAddress()) - .authorizationCode(transaction.getAuthorizationCode()) - .refNumber(transaction.getRrn()) - .time(transaction.getTransactionTime()) - .build(); - } - - private TransactionType getPrinterOperationType(String type) { - if (type == null) return null; - switch (type.toUpperCase()) { - case "PAYMENT": - return TransactionType.INCOMING; - case "REFUND": - return TransactionType.INCOMING_REFUND; - case "REVERSAL": - return TransactionType.REVERSAL; - } - return null; - } - - public static boolean isErrorStatus(Transaction transaction) { - if (transaction == null || transaction.getOperationStatus() == null) { - return true; - } - - switch (transaction.getOperationStatus()) { - case COMPLETED: - case REVERSED: - case READER_TIMEOUT: - return false; - - default: - return true; - } - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/ResendReceiptCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/ResendReceiptCallbackHandlerImpl.java deleted file mode 100644 index 83990c3..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/ResendReceiptCallbackHandlerImpl.java +++ /dev/null @@ -1,64 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.app.AlertDialog; -import android.widget.ArrayAdapter; -import android.widget.Spinner; -import android.widget.Toast; - -import java.util.ArrayList; -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.GetTransactionsListCallbackHandler; -import ru.m4bank.mpos.library.external.transactions.ResendReceiptCallbackHandler; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.result.Result; - -class ResendReceiptCallbackHandlerImpl implements ResendReceiptCallbackHandler, - GetTransactionsListCallbackHandler { - private final M4BankActivity activity; - - ResendReceiptCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Not authorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onTransactionsListReceived(List transactionList) { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose transaction"); - - Spinner transactionListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, new ArrayList<>(transactionList)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - transactionListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - Transaction transaction = (Transaction) transactionListSpinner.getSelectedItem(); - activity.getClientInterface().getTransactionManager().resendReceipt(this, transaction, "vsa@centercorptech.net", null); - dialog.dismiss(); - }); - - builder.setView(transactionListSpinner); - activity.runOnUiThread(() -> builder.create().show()); - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/ReversalCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/ReversalCallbackHandlerImpl.java deleted file mode 100644 index df8c593..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/ReversalCallbackHandlerImpl.java +++ /dev/null @@ -1,154 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.app.AlertDialog; -import android.widget.ArrayAdapter; -import android.widget.Spinner; -import android.widget.Toast; - -import java.util.ArrayList; -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.ReversalCallbackHandler; -import ru.m4bank.mpos.service.data.FiscalStatusData; -import ru.m4bank.mpos.service.data.PrinterBaseData; -import ru.m4bank.mpos.service.data.PrinterErrorData; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.hardware.error.ErrorHandler; -import ru.m4bank.mpos.service.result.PrinterResult; -import ru.m4bank.mpos.service.result.Result; -import ru.m4bank.mpos.service.transactions.data.TransactionData; -import ru.m4bank.mpos.service.transactions.data.TransactionExecutionStatus; -import ru.m4bank.mpos.service.transactions.data.error.TransactionErrorData; - -public class ReversalCallbackHandlerImpl implements ReversalCallbackHandler { - - private final M4BankActivity activity; - - public ReversalCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onTransactionSelectionRequested(List transactionList) { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose transaction"); - - Spinner transactionListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, new ArrayList<>(transactionList)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - transactionListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface().getTransactionManager().selectTransaction((Transaction) transactionListSpinner.getSelectedItem()); - dialog.dismiss(); - }); - - builder.setView(transactionListSpinner); - activity.runOnUiThread(() -> builder.create().show()); - } - - @Override - public void onCardShortPanRequested() { - activity.getClientInterface().getTransactionManager().setCardShortPan("0069", 20, 0); - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onTransactionInit() { - - } - - - - @Override - public void onTransactionExecutionStatusChanged(TransactionExecutionStatus newStatus) { - activity.runOnUiThread(() -> Toast.makeText(activity, newStatus.name(), Toast.LENGTH_SHORT).show()); - } - - @Override - public void onError(ErrorHandler errorHandler, TransactionErrorData transactionErrorData) { - activity.runOnUiThread(() -> Toast.makeText(activity, errorHandler.getFinalDescription(), Toast.LENGTH_LONG).show()); - } - - @Override - public void onErrorWithPossibilityToRetry(ErrorHandler errorHandler) { - - } - - @Override - public void onTransactionDataReceivedError(TransactionData data) { - - } - - @Override - public void onUserInformationRequested(boolean signNeeded) { - activity.getClientInterface().getTransactionManager().sendTransactionUserData(null, "phone", "email"); - } - - @Override - public void onTransactionDataReceived(TransactionData data) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Transaction data has been received", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void onTransactionCompleted() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Operation has been successfully completed", Toast.LENGTH_LONG) - .show()); - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Not authorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onRepeat(int attemptNumber) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Repeat attempt number " + attemptNumber, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onSelectTransaction() { - - } - - @Override - public void onRequestedReportZ() { - - } - - @Override - public void onCompletedPrinting(PrinterResult printerErrorDataPrinterBaseDataPrinterResult) { - - } - - @Override - public void onStatusFiscalModule(FiscalStatusData fiscalStatusData) { - - } - - @Override - public void onPrinterForRegistrationGettingCompleted() { - - } - - @Override - public void onNoBoundedPrinterFound() { - - } - - @Override - public void onPrinterToUseSelectionRequested(List list) { - - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/RevertCurrentOperationCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/RevertCurrentOperationCallbackHandlerImpl.java deleted file mode 100644 index 2dc3a93..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/RevertCurrentOperationCallbackHandlerImpl.java +++ /dev/null @@ -1,309 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.app.AlertDialog; -import android.widget.ArrayAdapter; -import android.widget.Spinner; -import android.widget.Toast; - -import java.util.ArrayList; -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.LastReversalCardPaymentCallbackHandler; -import ru.m4bank.mpos.service.commons.data.ResultType; -import ru.m4bank.mpos.service.data.FiscalStatusData; -import ru.m4bank.mpos.service.data.dynamic.objects.Reader; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.data.dynamic.objects.result.ResultCode; -import ru.m4bank.mpos.service.hardware.error.ErrorHandler; -import ru.m4bank.mpos.service.hardware.external.cardreaderlib.data.enums.VirtualKeyboardStyleTypeConv; -import ru.m4bank.mpos.service.result.PrinterResult; -import ru.m4bank.mpos.service.result.Result; -import ru.m4bank.mpos.service.transactions.data.MessageButtonData; -import ru.m4bank.mpos.service.transactions.data.TransactionData; -import ru.m4bank.mpos.service.transactions.data.TransactionExecutionStatus; -import ru.m4bank.mpos.service.transactions.data.error.TransactionErrorData; -import ru.m4bank.mpos.service.transactions.dto.OnlineCardDataDto; -import timber.log.Timber; - -public class RevertCurrentOperationCallbackHandlerImpl implements LastReversalCardPaymentCallbackHandler { - - private final M4BankActivity activity; - - public RevertCurrentOperationCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Not authorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT) - .show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCardReaderForTransactionGettingCompleted() { - - } - - @Override - public void onNoBoundedDevicesFound() { - - } - - @Override - public void onConnectingProcessStarted(String deviceName) { - - } - - @Override - public void onDisconnectedEventReceivedOrCanNotEstablishConnection(boolean reconnectAvailable, String description) { - if (reconnectAvailable) { - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setMessage("Connection to cardreader has been lost, try to reconnect and repeat last operation?"); - builder.setCancelable(false); - builder.setPositiveButton("Yes", (dialog, which) -> activity.getClientInterface().tryToReconnectAndRepeatLast()); - builder.setNegativeButton("No", (dialog, which) -> activity.getClientInterface().cancel()); - builder.create().show(); - }); - } - } - - @Override - public void onDeviceToConnectSelectionRequested(List deviceList) { - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose device"); - - Spinner deviceListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, deviceList); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - deviceListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface() - .getTransactionManager() - .selectCardReader(deviceListSpinner.getSelectedItem().toString()); - dialog.dismiss(); - }); - - builder.setView(deviceListSpinner); - builder.create().show(); - }); - } - - @Override - public void onWorkFlowDataRequested() { - - } - - @Override - public void onReceiveCardData(OnlineCardDataDto data, boolean shouldConfirmBeManuallyCalled) { - - } - - @Override - public void onRequiredReversal(String description, ResultCode resultCode) { - - } - - @Override - public void onRequiredApplicationSelection(List applicationOfList) { - - } - - @Override - public void onPrinterForRegistrationGettingCompleted() { - - } - - @Override - public void onNoBoundedPrinterFound() { - - } - - @Override - public void onTransactionDetailsReceived(Transaction transaction) { - - } - - @Override - public void onSuccessStatusTransaction(Transaction transaction) { - - } - - @Override - public void onErrorStatusTransaction() { - - } - - @Override - public void onRequestedReportZ() { - - } - - @Override - public void onCompletedPrinting(PrinterResult printerResult) { - - } - - @Override - public void onStatusFiscalModule(FiscalStatusData fiscalStatusData) { - - } - - @Override - public void onReconciliationRequiredToProcess() { - Timber.d("Reconciliation required!!!"); - activity.getClientInterface().getTransactionManager().makeReconciliationDuringTransaction(); - } - - @Override - public void onReconciliationCompleted(Result result) { - Timber.d("Reconciliation completed!!!"); - if (result.getResultType() == ResultType.SUCCESSFUL) { - activity.getClientInterface().getTransactionManager().continueTransactionAfterReconciliation(); - } else { - activity.runOnUiThread(() -> Toast.makeText(activity, "Reconciliation failed " + (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_LONG) - .show()); - } - } - - @Override - public void onRepeat(int attemptNumber) { - - } - - @Override - public void onTransactionAmountRequested() { - - } - - @Override - public void onTransactionDataRequested() { - - } - - @Override - public void onDeviceToUseSelectionRequested(List deviceList) { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setTitle("Choose device"); - - Spinner deviceListSpinner = new Spinner(activity); - ArrayAdapter adapter = new ArrayAdapter<>(activity, android.R.layout.simple_spinner_item, new ArrayList<>(deviceList)); - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - deviceListSpinner.setAdapter(adapter); - - builder.setPositiveButton("OK", (dialog, which) -> { - activity.getClientInterface() - .getTransactionManager() - .setCardReaderToUse((Reader) deviceListSpinner.getSelectedItem()); - dialog.dismiss(); - }); - - builder.setView(deviceListSpinner); - activity.runOnUiThread(() -> builder.create().show()); - } - - @Override - public void onPrinterToUseSelectionRequested(List printerList) { - - } - - @Override - public void onTransactionInit() { - - } - - - @Override - public void onTransactionExecutionStatusChanged(TransactionExecutionStatus newStatus) { - - } - - @Override - public void onUserInformationRequested(boolean signNeeded) { - - } - - @Override - public void onError(ErrorHandler errorHandler, TransactionErrorData transactionErrorData) { - - } - - @Override - public void onErrorWithPossibilityToRetry(ErrorHandler errorHandler) { - activity.getClientInterface().getTransactionManager().tryToRepeatExecuteLastRequestInTransaction(); - } - - @Override - public void onTransactionDataReceivedError(TransactionData data) { - - } - - @Override - public void onTransactionDataReceived(TransactionData data) { - - } - - @Override - public void onTransactionCompleted() { - - } - - @Override - public void onReconnectNeededToProcess() { - activity.runOnUiThread(() -> { - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - builder.setMessage("Connection to cardreader has been lost, try to reconnect and continue?"); - builder.setCancelable(false); - builder.setPositiveButton("Yes", (dialog, which) -> activity.getClientInterface().getTransactionManager().tryToReconnectToCardReader()); - builder.setNegativeButton("No", (dialog, which) -> activity.getClientInterface().cancel()); - builder.create().show(); - }); - } - - @Override - public void onWrongTerminal() { - - } - - @Override - public void onActivityUpdateUiThread() { - - } - - @Override - public void onCreatePinPadButtons() { - - } - - @Override - public void onShowPinPadKeyBoard(MessageButtonData messageButtonData) { - - } - - @Override - public void onUpdateElementPin(int i) { - - } - - @Override - public void onCloseKeyboard() { - - } - - @Override - public void onRequiredAdditionalVirtualKeyboardSettings(VirtualKeyboardStyleTypeConv virtualKeyboardStyleTypeConv) { - - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/ScanBarCodeCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/ScanBarCodeCallbackHandlerImpl.java deleted file mode 100644 index db96133..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/ScanBarCodeCallbackHandlerImpl.java +++ /dev/null @@ -1,72 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.widget.Toast; - -import java.util.List; - -import ru.m4bank.mpos.library.external.transactions.ScanBarCodeCallbackHandler; -import ru.m4bank.mpos.service.result.Result; - -public class ScanBarCodeCallbackHandlerImpl implements ScanBarCodeCallbackHandler { - - private final M4BankActivity activity; - - public ScanBarCodeCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onCompleteBarCode(String result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onError(String result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result, Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCardReaderForTransactionGettingCompleted() { - - } - - @Override - public void onNoBoundedDevicesFound() { - - } - - @Override - public void onConnectingProcessStarted(String s) { - - } - - @Override - public void onDisconnectedEventReceivedOrCanNotEstablishConnection(boolean b, String s) { - - } - - @Override - public void onDeviceToUseSelectionRequested(List list) { - - } - - @Override - public void notAuthorized() { - - } - - @Override - public void onDeviceToConnectSelectionRequested(List list) { - - } - - @Override - public void onCompleted(Result result) { - activity.runOnUiThread(() -> Toast.makeText(activity, (result.getDescription() == null ? "" : result.getDescription()), Toast.LENGTH_SHORT).show()); - } - - @Override - public void onWrongApiCalled() { - - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/SendRegisterRequestCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/SendRegisterRequestCallbackHandlerImpl.java deleted file mode 100644 index 1fea624..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/SendRegisterRequestCallbackHandlerImpl.java +++ /dev/null @@ -1,24 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.widget.Toast; - -import ru.m4bank.mpos.library.external.configuration.SendRegisterRequestCallbackHandler; -import ru.m4bank.mpos.service.result.SendRegisterRequestExternalResult; - -public class SendRegisterRequestCallbackHandlerImpl implements SendRegisterRequestCallbackHandler { - private final M4BankActivity activity; - - public SendRegisterRequestCallbackHandlerImpl(M4BankActivity activity) { - this.activity = activity; - } - - @Override - public void onCompleted(SendRegisterRequestExternalResult result) { - activity.runOnUiThread(() -> Toast.makeText(activity, result.getResultType() + " " + result.getRequestCode() + " " + result.getStatus(), Toast.LENGTH_SHORT).show()); - } - - @Override - public void onWrongApiCalled() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/SessionExpiringCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/SessionExpiringCallbackHandlerImpl.java deleted file mode 100644 index 4c49899..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/SessionExpiringCallbackHandlerImpl.java +++ /dev/null @@ -1,11 +0,0 @@ -package kz.com.aman.kassa.bank; - -import ru.m4bank.mpos.library.external.SessionExpiringCallbackHandler; -import timber.log.Timber; - -public class SessionExpiringCallbackHandlerImpl implements SessionExpiringCallbackHandler { - @Override - public void onSessionExpired() { - Timber.w("SESSION EXPIRED!"); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/TerminalKeyTypeMpos.java b/android/app/src/main/java/kz/com/aman/kassa/bank/TerminalKeyTypeMpos.java deleted file mode 100644 index 12a820e..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/TerminalKeyTypeMpos.java +++ /dev/null @@ -1,5 +0,0 @@ -package kz.com.aman.kassa.bank;; - -public enum TerminalKeyTypeMpos { - Tmp, Tpk, Tak -} \ No newline at end of file diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/XReportCallbackHandlerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/XReportCallbackHandlerImpl.java deleted file mode 100644 index 366b578..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/XReportCallbackHandlerImpl.java +++ /dev/null @@ -1,72 +0,0 @@ -package kz.com.aman.kassa.bank; - -import android.widget.Toast; - -import java.util.List; - -import ru.m4bank.mpos.library.M4BankMposClientInterfaceFacade; -import ru.m4bank.mpos.library.external.transactions.XReportCallbackHandler; -import ru.m4bank.mpos.service.commons.data.ResultType; -import ru.m4bank.mpos.service.data.dynamic.objects.Transaction; -import ru.m4bank.mpos.service.hardware.printer.dto.data.PrintingType; -import ru.m4bank.mpos.service.result.Result; -import ru.m4bank.mpos.service.transactions.data.external.ExternalReconciliationData; - -public class XReportCallbackHandlerImpl implements XReportCallbackHandler { - - private PrintingType reportType; - private M4BankActivity activity; - private M4BankMposClientInterfaceFacade clientInterface; - - public XReportCallbackHandlerImpl(M4BankMposClientInterfaceFacade clientInterface, PrintingType reportType, M4BankActivity activity) { - this.reportType = reportType; - this.activity = activity; - this.clientInterface = clientInterface; - } - - @Override - public void onTransactionsListReceived(List list) { - if(list == null || list.isEmpty()) { - activity.runOnUiThread(() -> Toast.makeText(activity, "list of transaction is empty", Toast.LENGTH_SHORT).show()); - } else { - ExternalReconciliationData data = new ExternalReconciliationData.Builder() - .reconciliationData(new ReconciliationPrinterDataBuilder().build(list, false)) - .build(); - printReport(clientInterface, reportType, data); - } - } - - @Override - public void notAuthorized() { - activity.runOnUiThread(() -> Toast.makeText(activity, "Not authorized", Toast.LENGTH_SHORT).show()); - } - - @Override - public void onCompleted(Result result) { - if(result == null || result.getResultType() != ResultType.SUCCESSFUL) { - activity.runOnUiThread(() -> Toast.makeText(activity, "Wrong method has been called", Toast.LENGTH_SHORT).show()); - }else if(result.getResultType() == ResultType.SUCCESSFUL){ - // if code is successful and list is empty -> reconciliation is already done - activity.runOnUiThread(() -> Toast.makeText(activity, "list of transaction is empty", Toast.LENGTH_SHORT).show()); - } - } - - @Override - public void onWrongApiCalled() { - - } - - @Override - public void onRepeat(int i) { - - } - - private void printReport(M4BankMposClientInterfaceFacade clientInterface, PrintingType reportType, ExternalReconciliationData data) { - clientInterface.cancel(); - if(reportType == PrintingType.RECONCILIATION_FULL_REPORT) { - clientInterface.getPrinterManager().printReconciliationReportFull(new PrintingCallbackHandlerImpl(activity), data); - } else { - clientInterface.getPrinterManager().printReconciliationReportShort(new PrintingCallbackHandlerImpl(activity), data); - } - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/builders/SslConfigurationBuilder.java b/android/app/src/main/java/kz/com/aman/kassa/bank/builders/SslConfigurationBuilder.java deleted file mode 100644 index ca167c6..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/builders/SslConfigurationBuilder.java +++ /dev/null @@ -1,50 +0,0 @@ -package kz.com.aman.kassa.bank.builders; - -import javax.net.ssl.HostnameVerifier; -import javax.net.ssl.SSLContext; -import javax.net.ssl.SSLSocketFactory; -import javax.net.ssl.X509TrustManager; - -import ru.m4bank.mpos.service.network.retrofit.SSLConfiguration; - -public class SslConfigurationBuilder { - public static SSLConfiguration buildAllTrustConfiguration(String serverAddress) { - X509TrustManager[] trustManager = getTrustManagers(); - return new SSLConfiguration.Builder() - .trustManager(trustManager[0]) - .hostnameVerifier(getHostnameVerifier(serverAddress)) - .socketFactory(getSSLSocketFactory(trustManager)) - .build(); - } - - private static HostnameVerifier getHostnameVerifier(String serverUrl) { - return (hostname, session) -> true; - } - - private static X509TrustManager[] getTrustManagers() { - return new X509TrustManager[]{new X509TrustManager() { - @Override - public void checkClientTrusted(java.security.cert.X509Certificate[] chain, String authType) { - } - - @Override - public void checkServerTrusted(java.security.cert.X509Certificate[] chain, String authType) { - } - - @Override - public java.security.cert.X509Certificate[] getAcceptedIssuers() { - return new java.security.cert.X509Certificate[]{}; - } - }}; - } - - private static SSLSocketFactory getSSLSocketFactory(X509TrustManager[] trustManager) { - try { - final SSLContext sslContext = SSLContext.getInstance("SSL"); - sslContext.init(null, trustManager, new java.security.SecureRandom()); - return sslContext.getSocketFactory(); - } catch (Exception e) { - return null; - } - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/gui/CustomKeyBoardDilalog.java b/android/app/src/main/java/kz/com/aman/kassa/bank/gui/CustomKeyBoardDilalog.java deleted file mode 100644 index a63a735..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/gui/CustomKeyBoardDilalog.java +++ /dev/null @@ -1,129 +0,0 @@ -package kz.com.aman.kassa.bank.gui; - -import android.app.Activity; -import android.app.Dialog; -import android.content.Context; -import android.view.Gravity; -import android.view.LayoutInflater; -import android.view.View; -import android.view.Window; -import android.view.WindowManager; -import android.widget.Button; - - -import kz.com.aman.kassa.R; -import ru.m4bank.mpos.service.transactions.data.MessageButtonData; - - -public class CustomKeyBoardDilalog { - - Button btnb1, btnb2, btnb3, btnb4, btnb5, btnb6, btnb7, btnb8, btnb9, btnb0, - btncancel, btnconfirm, btnclean; - View view; - Dialog dialog; - - public void createDialog(Context context) { - - dialog = new Dialog(context); - view = LayoutInflater.from(context).inflate(R.layout.layout_pin, null); - btnb1 = (Button) view.findViewById(R.id.button1); - btnb2 = (Button) view.findViewById(R.id.button2); - btnb3 = (Button) view.findViewById(R.id.button3); - btnb4 = (Button) view.findViewById(R.id.button4); - btnb5 = (Button) view.findViewById(R.id.button5); - btnb6 = (Button) view.findViewById(R.id.button6); - btnb7 = (Button) view.findViewById(R.id.button7); - btnb8 = (Button) view.findViewById(R.id.button8); - btnb9 = (Button) view.findViewById(R.id.button9); - btnb0 = (Button) view.findViewById(R.id.button0); - btncancel = (Button) view.findViewById(R.id.buttoncan); - btnconfirm = (Button) view.findViewById(R.id.buttonconfirm); - btnclean = (Button) view.findViewById(R.id.buttonclean); - Window dialogWindow = dialog.getWindow(); - dialogWindow.setGravity( Gravity.BOTTOM); - - WindowManager.LayoutParams lp = dialogWindow.getAttributes(); - lp.x = 0; - lp.y = 0; - view.measure(0, 0); - lp.height = view.getMeasuredHeight(); - lp.alpha = 9f; - dialogWindow.setAttributes(lp); - dialog.setContentView(view); - } - - public void show(Activity activity) { - if (!activity.isFinishing()) - dialog.show(); - } - - public void close(Activity activity) { - if (!activity.isFinishing() && dialog != null && dialog.isShowing()) - dialog.dismiss(); - } - - public void setText(MessageButtonData messageButtonData) { - btnb1.setText("" + messageButtonData.getBtnb1()); - btnb2.setText("" + messageButtonData.getBtnb2()); - btnb3.setText("" + messageButtonData.getBtnb3()); - btnb4.setText("" + messageButtonData.getBtnb4()); - btnb5.setText("" + messageButtonData.getBtnb5()); - btnb6.setText("" + messageButtonData.getBtnb6()); - btnb7.setText("" + messageButtonData.getBtnb7()); - btnb8.setText("" + messageButtonData.getBtnb8()); - btnb9.setText("" + messageButtonData.getBtnb9()); - btnb0.setText("" + messageButtonData.getBtnb0()); - } - - public Button getBtnb1() { - return btnb1; - } - - public Button getBtnb2() { - return btnb2; - } - - public Button getBtnb3() { - return btnb3; - } - - public Button getBtnb4() { - return btnb4; - } - - public Button getBtnb5() { - return btnb5; - } - - public Button getBtnb6() { - return btnb6; - } - - public Button getBtnb7() { - return btnb7; - } - - public Button getBtnb8() { - return btnb8; - } - - public Button getBtnb9() { - return btnb9; - } - - public Button getBtnb0() { - return btnb0; - } - - public Button getBtncancel() { - return btncancel; - } - - public Button getBtnconfirm() { - return btnconfirm; - } - - public Button getBtnclean() { - return btnclean; - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/gui/SelectDialogCallback.java b/android/app/src/main/java/kz/com/aman/kassa/bank/gui/SelectDialogCallback.java deleted file mode 100644 index e203b25..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/gui/SelectDialogCallback.java +++ /dev/null @@ -1,10 +0,0 @@ -package kz.com.aman.kassa.bank.gui; - -/** - * Created by pppoo on 27.02.2018. - */ - -public interface SelectDialogCallback { - void onElementSelected(ElementType element); - void onCancelSelection(); -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/gui/SelectElementDialog.java b/android/app/src/main/java/kz/com/aman/kassa/bank/gui/SelectElementDialog.java deleted file mode 100644 index 77d5502..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/gui/SelectElementDialog.java +++ /dev/null @@ -1,64 +0,0 @@ -package kz.com.aman.kassa.bank.gui; - -import android.app.Activity; -import android.app.Dialog; -import android.content.Context; -import android.view.ViewGroup.LayoutParams; -import android.widget.ArrayAdapter; -import android.widget.ListView; -import android.widget.TextView; - -import kz.com.aman.kassa.R; -import java.util.List; - -public class SelectElementDialog extends Dialog { - private Context context; - ArrayAdapter listAdapter; - private TextView labelTitle; - private ListView list; - private SelectDialogCallback selectDialogCallback; - - public SelectElementDialog(final Context context, List elements, SelectDialogCallback selectDialogCallback) { - super(context); - this.context = context; - this.selectDialogCallback = selectDialogCallback; - setCancelable(false); - setCanceledOnTouchOutside(false); - init(elements); - list.setAdapter(listAdapter); - getWindow().setLayout(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT); - - list.setOnItemClickListener((arg0, arg1, arg2, arg3) -> { - ElementType element = (ElementType) arg0.getItemAtPosition(arg2); - selectDialogCallback.onElementSelected(element); - ((Activity) context).runOnUiThread(this::dismiss); - }); - } - - private void init(List elements) { - setContentView(R.layout.custom_dialog_list); - labelTitle = findViewById(R.id.labelMessage); - list = findViewById(R.id.list); - listAdapter = new ArrayAdapter(context, R.layout.list_item, R.id.itemView, elements); - } - - @Override - public void onBackPressed() { - super.onBackPressed(); - } - - public void setTitle(String text) { - if (null != labelTitle) - labelTitle.setText(text); - } - - public static void showError(Context context, String message) { - try { - Dialog dialog = new Dialog(context); - dialog.setTitle(message); - dialog.show(); - } catch (Exception e) { - e.printStackTrace(); - } - } -} \ No newline at end of file diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/managing/PreferencesManager.java b/android/app/src/main/java/kz/com/aman/kassa/bank/managing/PreferencesManager.java deleted file mode 100644 index 0943c5a..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/managing/PreferencesManager.java +++ /dev/null @@ -1,37 +0,0 @@ -package kz.com.aman.kassa.bank.managing; - -import android.content.Context; -import android.content.SharedPreferences; - -import static android.content.Context.MODE_PRIVATE; - -public class PreferencesManager { - public enum Field { - LOGIN("Login"), PASSWORD("Password"), SERVER_URL("ServerUrl"); - - private String code; - - Field(String code) { - this.code = code; - } - - public String getCode() { - return code; - } - } - - public static void saveStringField(Context context, Field field, String value) { - SharedPreferences preferences = context.getSharedPreferences("preferences", MODE_PRIVATE); - SharedPreferences.Editor editor = preferences.edit(); - editor.putString(field.getCode(), value).apply(); - } - - public static String loadStringField(Context context, Field field) { - return loadStringField(context, field, null); - } - - public static String loadStringField(Context context, Field field, String defaultValue) { - SharedPreferences preferences = context.getSharedPreferences("preferences", MODE_PRIVATE); - return preferences.getString(field.getCode(), defaultValue); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/permissions/PermissionsManager.java b/android/app/src/main/java/kz/com/aman/kassa/bank/permissions/PermissionsManager.java deleted file mode 100644 index 4b04714..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/permissions/PermissionsManager.java +++ /dev/null @@ -1,11 +0,0 @@ -package kz.com.aman.kassa.bank.permissions; - -public interface PermissionsManager { - void checkPermissions(PermissionsCheckResultHandler handler); - void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults); - - interface PermissionsCheckResultHandler { - void onPermissionsGranted(); - void onPermissionsDeclined(); - } -} diff --git a/android/app/src/main/java/kz/com/aman/kassa/bank/permissions/PermissionsManagerImpl.java b/android/app/src/main/java/kz/com/aman/kassa/bank/permissions/PermissionsManagerImpl.java deleted file mode 100644 index 9bbe419..0000000 --- a/android/app/src/main/java/kz/com/aman/kassa/bank/permissions/PermissionsManagerImpl.java +++ /dev/null @@ -1,65 +0,0 @@ -package kz.com.aman.kassa.bank.permissions; - -import android.Manifest; -import android.app.Activity; -import android.content.pm.PackageManager; - -import androidx.core.app.ActivityCompat; -import androidx.core.content.ContextCompat; - -public class PermissionsManagerImpl implements PermissionsManager { - private static final int MY_PERMISSIONS_REQUEST = 107; - private static final String[] PERMISSIONS_LIST = new String[]{ - Manifest.permission.READ_PHONE_STATE, - Manifest.permission.ACCESS_FINE_LOCATION, - Manifest.permission.ACCESS_COARSE_LOCATION, - Manifest.permission.CAMERA, - Manifest.permission.READ_EXTERNAL_STORAGE, - Manifest.permission.WRITE_EXTERNAL_STORAGE - }; - - private final Activity activity; - private PermissionsCheckResultHandler permissionsCheckResultHandler; - - public PermissionsManagerImpl(Activity activity) { - this.activity = activity; - } - - @Override - public void checkPermissions(PermissionsCheckResultHandler permissionsCheckResultHandler) { - for (String permission : PERMISSIONS_LIST) { - if (ContextCompat.checkSelfPermission(activity, permission) != PackageManager.PERMISSION_GRANTED) { - this.permissionsCheckResultHandler = permissionsCheckResultHandler; - ActivityCompat.requestPermissions(activity, PERMISSIONS_LIST, MY_PERMISSIONS_REQUEST); - return; - } - } - - permissionsCheckResultHandler.onPermissionsGranted(); - } - - @Override - public void onRequestPermissionsResult(int requestCode, - String permissions[], int[] grantResults) { - switch (requestCode) { - case MY_PERMISSIONS_REQUEST: { - if (grantResults.length == PERMISSIONS_LIST.length) { - if (arePermissionsGranted(grantResults)) { - permissionsCheckResultHandler.onPermissionsGranted(); - } else { - permissionsCheckResultHandler.onPermissionsDeclined(); - } - } - } - } - } - - private boolean arePermissionsGranted(int[] grantResults) { - boolean access = true; - for (int grantResult : grantResults) { - if (grantResult != PackageManager.PERMISSION_GRANTED) - access = false; - } - return access; - } -} diff --git a/android/app/src/main/res/layout/activity_main.xml b/android/app/src/main/res/layout/activity_main.xml index 1c516c0..0d62cea 100644 --- a/android/app/src/main/res/layout/activity_main.xml +++ b/android/app/src/main/res/layout/activity_main.xml @@ -65,11 +65,11 @@ android:text="@string/logout_button" /> - - - - - + + + + + @@ -78,48 +78,48 @@ android:layout_height="wrap_content"> - - - - - - + + + + + + - - - - - - + + + + + + - - - - + + + + - - - - - - + + + + + + - - - - - - + + + + + + @@ -153,16 +153,16 @@ android:orientation="horizontal"> - - - - + + + + - - - - + + + + @@ -184,25 +184,25 @@ - + -