diff --git a/CHANGELOG.md b/CHANGELOG.md index 2ea679250..9fc0d0176 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ All notable changes to this project will be documented in this file. ### Removed ### Fixed +## [0.83.4] +### Removed +* core/ui: remove tegut employee card as payment method + ## [0.83.3] ### Changed * ui: show coupons as part of the shopping cart and change discount design diff --git a/core/src/main/java/io/snabble/sdk/PaymentMethod.kt b/core/src/main/java/io/snabble/sdk/PaymentMethod.kt index f639000fd..621a190b0 100644 --- a/core/src/main/java/io/snabble/sdk/PaymentMethod.kt +++ b/core/src/main/java/io/snabble/sdk/PaymentMethod.kt @@ -88,15 +88,6 @@ enum class PaymentMethod( needsAbortConfirmation = true ), - @SerializedName("externalBilling") - TEGUT_EMPLOYEE_CARD( - id = "externalBilling", - isOfflineMethod = false, - isRequiringCredentials = true, - isShowOnlyIfCredentialsArePresent = true, - needsAbortConfirmation = true - ), - @SerializedName("customerCardPOS") CUSTOMERCARD_POS( id = "customerCardPOS", @@ -200,9 +191,8 @@ enum class PaymentMethod( @JvmStatic fun fromIdAndOrigin(id: String, origin: List): PaymentMethod? { entries.forEach { pm -> - if (pm.id == id && pm.id == TEGUT_EMPLOYEE_CARD.id) { + if (pm.id == id && pm.id == EXTERNAL_BILLING.id) { return when (origin.firstOrNull()) { - "tegutEmployeeID" -> TEGUT_EMPLOYEE_CARD "contactPersonCredentials" -> EXTERNAL_BILLING else -> null } diff --git a/core/src/main/java/io/snabble/sdk/payment/PaymentCredentials.java b/core/src/main/java/io/snabble/sdk/payment/PaymentCredentials.java index 1a13a6b76..abc85204b 100644 --- a/core/src/main/java/io/snabble/sdk/payment/PaymentCredentials.java +++ b/core/src/main/java/io/snabble/sdk/payment/PaymentCredentials.java @@ -65,7 +65,6 @@ public enum Type { CREDIT_CARD(null, true, Arrays.asList(PaymentMethod.VISA, PaymentMethod.MASTERCARD, PaymentMethod.AMEX)), CREDIT_CARD_PSD2(null, true, Arrays.asList(PaymentMethod.VISA, PaymentMethod.MASTERCARD, PaymentMethod.AMEX)), GIROPAY(null, false, Collections.singletonList(PaymentMethod.GIROPAY)), - TEGUT_EMPLOYEE_CARD("tegutEmployeeID", false, Collections.singletonList(PaymentMethod.TEGUT_EMPLOYEE_CARD)), DATATRANS("datatransAlias", true, Arrays.asList(PaymentMethod.TWINT, PaymentMethod.POST_FINANCE_CARD)), DATATRANS_CREDITCARD("datatransCreditCardAlias", true, Arrays.asList(PaymentMethod.VISA, PaymentMethod.MASTERCARD, PaymentMethod.AMEX)), PAYONE_CREDITCARD(null, true, Arrays.asList(PaymentMethod.VISA, PaymentMethod.MASTERCARD, PaymentMethod.AMEX)), @@ -528,46 +527,6 @@ public static PaymentCredentials fromPayone( return pc; } - /** - * Encrypts and stores a tegut employee card. - */ - public static PaymentCredentials fromTegutEmployeeCard(String obfuscatedId, String cardNumber, String projectId) { - if (cardNumber == null || cardNumber.length() != 19 - || (!cardNumber.startsWith("9280001621") - && !cardNumber.startsWith("9280001620"))) { - return null; - } - - PaymentCredentials pc = new PaymentCredentials(); - pc.generateId(); - pc.type = Type.TEGUT_EMPLOYEE_CARD; - - List certificates = Snabble.getInstance().getPaymentCertificates(); - if (certificates.size() == 0) { - return null; - } - - pc.obfuscatedId = obfuscatedId; - - X509Certificate certificate = certificates.get(0); - - TegutEmployeeCard data = new TegutEmployeeCard(); - data.cardNumber = cardNumber; - String json = GsonHolder.get().toJson(data, TegutEmployeeCard.class); - - pc.rsaEncryptedData = pc.rsaEncrypt(certificate, json.getBytes()); - pc.signature = pc.sha256Signature(certificate); - pc.brand = Brand.UNKNOWN; - pc.appId = Snabble.getInstance().getConfig().appId; - pc.projectId = projectId; - - if (pc.rsaEncryptedData == null) { - return null; - } - - return pc; - } - /** * Returns the type of the payment credentials */ @@ -858,8 +817,6 @@ public PaymentMethod getPaymentMethod() { return PaymentMethod.DE_DIRECT_DEBIT; } else if (getType() == Type.PAYONE_SEPA) { return PaymentMethod.PAYONE_SEPA; - } else if (type == Type.TEGUT_EMPLOYEE_CARD) { - return PaymentMethod.TEGUT_EMPLOYEE_CARD; } else if (type == Type.GIROPAY) { return PaymentMethod.GIROPAY; } else if (type == Type.EXTERNAL_BILLING) { diff --git a/ui/src/main/java/io/snabble/sdk/ui/cart/CheckoutBar.kt b/ui/src/main/java/io/snabble/sdk/ui/cart/CheckoutBar.kt index fb1cfdf89..8c8bf6f1d 100644 --- a/ui/src/main/java/io/snabble/sdk/ui/cart/CheckoutBar.kt +++ b/ui/src/main/java/io/snabble/sdk/ui/cart/CheckoutBar.kt @@ -324,10 +324,6 @@ open class CheckoutBar @JvmOverloads constructor( if (entry.paymentCredentials != null) { progressDialog.dismiss() when (entry.paymentMethod) { - PaymentMethod.TEGUT_EMPLOYEE_CARD -> { - project.checkout.pay(entry.paymentMethod, entry.paymentCredentials) - } - PaymentMethod.EXTERNAL_BILLING -> { SubjectAlertDialog(context, maxSubjectLength = getMaxSubjectLength()) .addMessageClickListener { message -> diff --git a/ui/src/main/java/io/snabble/sdk/ui/payment/PaymentCredentialsListView.java b/ui/src/main/java/io/snabble/sdk/ui/payment/PaymentCredentialsListView.java index 1a49ac560..f7aef4c46 100644 --- a/ui/src/main/java/io/snabble/sdk/ui/payment/PaymentCredentialsListView.java +++ b/ui/src/main/java/io/snabble/sdk/ui/payment/PaymentCredentialsListView.java @@ -210,9 +210,6 @@ public void onChanged() { case GIROPAY: entries.add(new Entry(pm, R.drawable.snabble_ic_payment_giropay, pm.getObfuscatedId())); break; - case TEGUT_EMPLOYEE_CARD: - entries.add(new Entry(pm, R.drawable.snabble_ic_payment_select_tegut, pm.getObfuscatedId())); - break; case EXTERNAL_BILLING: entries.add(new Entry(pm, R.drawable.snabble_ic_external_billing, pm.getObfuscatedId())); break; diff --git a/ui/src/main/java/io/snabble/sdk/ui/payment/PaymentMethodMetaData.kt b/ui/src/main/java/io/snabble/sdk/ui/payment/PaymentMethodMetaData.kt index 14ffe2bd9..3408d425e 100644 --- a/ui/src/main/java/io/snabble/sdk/ui/payment/PaymentMethodMetaData.kt +++ b/ui/src/main/java/io/snabble/sdk/ui/payment/PaymentMethodMetaData.kt @@ -15,7 +15,6 @@ import io.snabble.sdk.PaymentMethod.PAYONE_SEPA import io.snabble.sdk.PaymentMethod.POST_FINANCE_CARD import io.snabble.sdk.PaymentMethod.QRCODE_OFFLINE import io.snabble.sdk.PaymentMethod.QRCODE_POS -import io.snabble.sdk.PaymentMethod.TEGUT_EMPLOYEE_CARD import io.snabble.sdk.PaymentMethod.TWINT import io.snabble.sdk.PaymentMethod.VISA import io.snabble.sdk.ui.R.drawable.snabble_ic_external_billing @@ -27,7 +26,6 @@ import io.snabble.sdk.ui.R.drawable.snabble_ic_payment_select_pos import io.snabble.sdk.ui.R.drawable.snabble_ic_payment_select_postfinance import io.snabble.sdk.ui.R.drawable.snabble_ic_payment_select_sco import io.snabble.sdk.ui.R.drawable.snabble_ic_payment_select_sepa -import io.snabble.sdk.ui.R.drawable.snabble_ic_payment_select_tegut import io.snabble.sdk.ui.R.drawable.snabble_ic_payment_select_twint import io.snabble.sdk.ui.R.drawable.snabble_ic_payment_select_visa import io.snabble.sdk.ui.R.string.Snabble_Giropay_title @@ -51,7 +49,6 @@ class PaymentMethodMetaDataHelper( PAYONE_SEPA withMeta ("SEPA-Lastschrift" to snabble_ic_payment_select_sepa), GATEKEEPER_TERMINAL withMeta (Snabble_Payment_payAtSCO.resolved to snabble_ic_payment_select_sco), EXTERNAL_BILLING withMeta (Snabble_Payment_ExternalBilling_title.resolved to snabble_ic_external_billing), - TEGUT_EMPLOYEE_CARD withMeta ("Tegut... Mitarbeiterkarte" to snabble_ic_payment_select_tegut), CUSTOMERCARD_POS withMeta (Snabble_Payment_payAtCashDesk.resolved to snabble_ic_payment_select_pos), QRCODE_POS withMeta (Snabble_Payment_payAtCashDesk.resolved to snabble_ic_payment_select_pos), QRCODE_OFFLINE withMeta (Snabble_Payment_payAtCashDesk.resolved to snabble_ic_payment_select_pos),