payment part 2
This commit is contained in:
BIN
.idea/caches/build_file_checksums.ser
generated
BIN
.idea/caches/build_file_checksums.ser
generated
Binary file not shown.
@@ -58,6 +58,10 @@ dependencies {
|
|||||||
implementation 'com.wdullaer:materialdatetimepicker:3.1.1'
|
implementation 'com.wdullaer:materialdatetimepicker:3.1.1'
|
||||||
implementation 'io.nlopez.smartlocation:library:3.3.3'
|
implementation 'io.nlopez.smartlocation:library:3.3.3'
|
||||||
implementation 'q.rorbin:badgeview:1.1.0'
|
implementation 'q.rorbin:badgeview:1.1.0'
|
||||||
|
implementation 'com.braintreepayments.api:braintree:2.13.1'
|
||||||
|
implementation('com.braintreepayments.api:drop-in:3.1.0') {
|
||||||
|
exclude group: 'com.braintreepayments.api', module: 'braintree'
|
||||||
|
}
|
||||||
|
|
||||||
testImplementation 'junit:junit:4.12'
|
testImplementation 'junit:junit:4.12'
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -56,8 +56,26 @@
|
|||||||
<activity
|
<activity
|
||||||
android:name=".activity.OrderHistoryDetailsActivity"
|
android:name=".activity.OrderHistoryDetailsActivity"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity android:name=".activity.CampaignProductListActivity" />
|
<activity
|
||||||
<activity android:name=".activity.CampaignProductDetailsActivity"></activity>
|
android:name=".activity.CampaignProductListActivity"
|
||||||
|
android:screenOrientation="portrait"/>
|
||||||
|
<activity
|
||||||
|
android:name=".activity.CampaignProductDetailsActivity"
|
||||||
|
android:screenOrientation="portrait"/>
|
||||||
|
<activity
|
||||||
|
android:name=".activity.PaymentActivity"
|
||||||
|
android:screenOrientation="portrait"/>
|
||||||
|
|
||||||
|
<activity android:name="com.braintreepayments.api.BraintreeBrowserSwitchActivity"
|
||||||
|
android:launchMode="singleTask">
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="android.intent.action.VIEW" />
|
||||||
|
<category android:name="android.intent.category.DEFAULT" />
|
||||||
|
<category android:name="android.intent.category.BROWSABLE" />
|
||||||
|
<data android:scheme="ch.pizzapp.capri.braintree" />
|
||||||
|
</intent-filter>
|
||||||
|
</activity>
|
||||||
|
|
||||||
</application>
|
</application>
|
||||||
|
|
||||||
</manifest>
|
</manifest>
|
||||||
@@ -0,0 +1,118 @@
|
|||||||
|
package ch.pizzapp.android.activity;
|
||||||
|
|
||||||
|
import android.support.v7.app.AppCompatActivity;
|
||||||
|
import android.os.Bundle;
|
||||||
|
|
||||||
|
import com.braintreepayments.api.BraintreeFragment;
|
||||||
|
import com.braintreepayments.api.Card;
|
||||||
|
import com.braintreepayments.api.PayPal;
|
||||||
|
import com.braintreepayments.api.exceptions.BraintreeError;
|
||||||
|
import com.braintreepayments.api.exceptions.ErrorWithResponse;
|
||||||
|
import com.braintreepayments.api.exceptions.InvalidArgumentException;
|
||||||
|
import com.braintreepayments.api.interfaces.BraintreeCancelListener;
|
||||||
|
import com.braintreepayments.api.interfaces.BraintreeErrorListener;
|
||||||
|
import com.braintreepayments.api.interfaces.ConfigurationListener;
|
||||||
|
import com.braintreepayments.api.interfaces.PaymentMethodNonceCallback;
|
||||||
|
import com.braintreepayments.api.interfaces.PaymentMethodNonceCreatedListener;
|
||||||
|
import com.braintreepayments.api.interfaces.PaymentMethodNoncesUpdatedListener;
|
||||||
|
import com.braintreepayments.api.models.CardBuilder;
|
||||||
|
import com.braintreepayments.api.models.Configuration;
|
||||||
|
import com.braintreepayments.api.models.PayPalRequest;
|
||||||
|
import com.braintreepayments.api.models.PaymentMethodNonce;
|
||||||
|
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import butterknife.ButterKnife;
|
||||||
|
import ch.pizzapp.android.R;
|
||||||
|
import ch.pizzapp.android.api.ApiConstants;
|
||||||
|
import ch.pizzapp.android.helper.DialogHelper;
|
||||||
|
|
||||||
|
public class PaymentActivity extends BaseActivity
|
||||||
|
implements PaymentMethodNonceCreatedListener,
|
||||||
|
PaymentMethodNoncesUpdatedListener, ConfigurationListener,
|
||||||
|
BraintreeCancelListener, PaymentMethodNonceCallback,
|
||||||
|
BraintreeErrorListener {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
setContentView(R.layout.activity_payment);
|
||||||
|
ButterKnife.bind(this);
|
||||||
|
showBraintreePaymentFragment();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onPaymentMethodNonceCreated(PaymentMethodNonce paymentMethodNonce) {
|
||||||
|
// Send this nonce to your server
|
||||||
|
String nonce = paymentMethodNonce.getNonce();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onConfigurationFetched(Configuration configuration) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onPaymentMethodNoncesUpdated(List<PaymentMethodNonce> paymentMethodNonces) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCancel(int requestCode) {
|
||||||
|
// Use this to handle a canceled activity, if the given requestCode is important.
|
||||||
|
// You may want to use this callback to hide loading indicators, and prepare your UI for input
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void success(PaymentMethodNonce paymentMethodNonce) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void failure(Exception exception) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onError(Exception error) {
|
||||||
|
if (error instanceof ErrorWithResponse) {
|
||||||
|
ErrorWithResponse errorWithResponse = (ErrorWithResponse) error;
|
||||||
|
BraintreeError cardErrors = errorWithResponse.errorFor("creditCard");
|
||||||
|
if (cardErrors != null) {
|
||||||
|
// There is an issue with the credit card.
|
||||||
|
BraintreeError expirationMonthError = cardErrors.errorFor("expirationMonth");
|
||||||
|
if (expirationMonthError != null) {
|
||||||
|
// There is an issue with the expiration month.
|
||||||
|
DialogHelper.showAlertDialog(this, expirationMonthError.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void showBraintreePaymentFragment(){
|
||||||
|
try {
|
||||||
|
|
||||||
|
BraintreeFragment braintreeFragment =
|
||||||
|
BraintreeFragment.newInstance(
|
||||||
|
BaseActivity.currentActivity, ApiConstants.BRAINTREE_TOKENIZATION_KEY_SANDBOX);
|
||||||
|
|
||||||
|
/*
|
||||||
|
// create paypal payment
|
||||||
|
PayPal.requestBillingAgreement(braintreeFragment, new PayPalRequest());
|
||||||
|
*/
|
||||||
|
|
||||||
|
CardBuilder cardBuilder = new CardBuilder()
|
||||||
|
.cardNumber("4111111111111111")
|
||||||
|
.expirationMonth("08")
|
||||||
|
.expirationYear("2018");
|
||||||
|
Card.tokenize(braintreeFragment, cardBuilder);
|
||||||
|
|
||||||
|
}catch (InvalidArgumentException e){
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -13,4 +13,16 @@ public class ApiConstants {
|
|||||||
|
|
||||||
public static final String CAMPAIGN_CODE_PIZZAPASS = "PIZZAPASS";
|
public static final String CAMPAIGN_CODE_PIZZAPASS = "PIZZAPASS";
|
||||||
public static final String CAMPAIGN_CODE_CHAMPAGNE = "CHAMPAGNE";
|
public static final String CAMPAIGN_CODE_CHAMPAGNE = "CHAMPAGNE";
|
||||||
|
|
||||||
|
public static final String BRAINTREE_TOKENIZATION_KEY_SANDBOX = "sandbox_wk7668t4_v332h2jkpq44r8w8";
|
||||||
|
public static final String BRAINTREE_TOKENIZATION_KEY_PRODUCTION = "";
|
||||||
|
|
||||||
|
|
||||||
|
public static final String PAYMENT_METHOD_CODE_CREDIT_DEBIT_CARD = "braintree"; // Credit / Debit Card
|
||||||
|
public static final String PAYMENT_METHOD_CODE_BANK_CASH = "cod"; // Bar
|
||||||
|
public static final String PAYMENT_METHOD_CODE_TRANSFER = "bank_transfer"; // Kreditkarten-Kartenzahlung
|
||||||
|
public static final String PAYMENT_METHOD_CODE_TWINT = "twintcw_twint"; // TWINT
|
||||||
|
public static final String PAYMENT_METHOD_CODE_PAYPAL = "paypal";
|
||||||
|
public static final String PAYMENT_METHOD_CODE_ANDROID_PAY = "android_pay";
|
||||||
|
public static final String PAYMENT_METHOD_CODE_APPLE_PAY = "apple_pay";
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package ch.pizzapp.android.fragment.createOrder;
|
package ch.pizzapp.android.fragment.createOrder;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.support.annotation.NonNull;
|
import android.support.annotation.NonNull;
|
||||||
@@ -10,9 +11,23 @@ import android.view.ViewGroup;
|
|||||||
|
|
||||||
import com.afollestad.materialdialogs.DialogAction;
|
import com.afollestad.materialdialogs.DialogAction;
|
||||||
import com.afollestad.materialdialogs.MaterialDialog;
|
import com.afollestad.materialdialogs.MaterialDialog;
|
||||||
|
import com.braintreepayments.api.dropin.DropInActivity;
|
||||||
|
import com.braintreepayments.api.dropin.DropInRequest;
|
||||||
|
import com.braintreepayments.api.dropin.DropInResult;
|
||||||
|
import com.braintreepayments.api.exceptions.BraintreeError;
|
||||||
|
import com.braintreepayments.api.exceptions.ErrorWithResponse;
|
||||||
|
import com.braintreepayments.api.interfaces.BraintreeCancelListener;
|
||||||
|
import com.braintreepayments.api.interfaces.BraintreeErrorListener;
|
||||||
|
import com.braintreepayments.api.interfaces.ConfigurationListener;
|
||||||
|
import com.braintreepayments.api.interfaces.PaymentMethodNonceCallback;
|
||||||
|
import com.braintreepayments.api.interfaces.PaymentMethodNonceCreatedListener;
|
||||||
|
import com.braintreepayments.api.interfaces.PaymentMethodNoncesUpdatedListener;
|
||||||
|
import com.braintreepayments.api.models.Configuration;
|
||||||
|
import com.braintreepayments.api.models.PaymentMethodNonce;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import butterknife.BindString;
|
import butterknife.BindString;
|
||||||
import butterknife.BindView;
|
import butterknife.BindView;
|
||||||
@@ -22,6 +37,7 @@ import ch.pizzapp.android.R;
|
|||||||
import ch.pizzapp.android.activity.BaseActivity;
|
import ch.pizzapp.android.activity.BaseActivity;
|
||||||
import ch.pizzapp.android.activity.CampaignProductListActivity;
|
import ch.pizzapp.android.activity.CampaignProductListActivity;
|
||||||
import ch.pizzapp.android.activity.CreateOrderActivity;
|
import ch.pizzapp.android.activity.CreateOrderActivity;
|
||||||
|
import ch.pizzapp.android.api.ApiConstants;
|
||||||
import ch.pizzapp.android.api.ApiEndPoints;
|
import ch.pizzapp.android.api.ApiEndPoints;
|
||||||
import ch.pizzapp.android.api.ApiErrorUtils;
|
import ch.pizzapp.android.api.ApiErrorUtils;
|
||||||
import ch.pizzapp.android.api.ApiService;
|
import ch.pizzapp.android.api.ApiService;
|
||||||
@@ -31,6 +47,7 @@ import ch.pizzapp.android.helper.PriceHelper;
|
|||||||
import ch.pizzapp.android.helper.SessionHelper;
|
import ch.pizzapp.android.helper.SessionHelper;
|
||||||
import ch.pizzapp.android.helper.SharedPrefsHelper;
|
import ch.pizzapp.android.helper.SharedPrefsHelper;
|
||||||
import ch.pizzapp.android.model.CampaignModel;
|
import ch.pizzapp.android.model.CampaignModel;
|
||||||
|
import ch.pizzapp.android.model.PaymentMethodModel;
|
||||||
import ch.pizzapp.android.model.cart.CartInfoModel;
|
import ch.pizzapp.android.model.cart.CartInfoModel;
|
||||||
import ch.pizzapp.android.model.cart.CartProductModel;
|
import ch.pizzapp.android.model.cart.CartProductModel;
|
||||||
import ch.pizzapp.android.view.AppInfoView;
|
import ch.pizzapp.android.view.AppInfoView;
|
||||||
@@ -65,9 +82,11 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment {
|
|||||||
@BindString(R.string.no) String noText;
|
@BindString(R.string.no) String noText;
|
||||||
@BindString(R.string.restaurant_out_of_order) String restaurantOutOfOrderText;
|
@BindString(R.string.restaurant_out_of_order) String restaurantOutOfOrderText;
|
||||||
@BindString(R.string.something_went_wrong) String genericErrorText;
|
@BindString(R.string.something_went_wrong) String genericErrorText;
|
||||||
|
@BindString(R.string.unknown_payment_method) String unknownPaymentMethodText;
|
||||||
|
|
||||||
public static final java.lang.String FRAGMENT_NAME = "orderSummaryFragment";
|
public static final java.lang.String FRAGMENT_NAME = "orderSummaryFragment";
|
||||||
private int REQUEST_CODE_CAMPAIGN_PRODUCT_LIST = 7847;
|
private int REQUEST_CODE_CAMPAIGN_PRODUCT_LIST = 7847;
|
||||||
|
private final int REQUEST_CODE_PAYMENT = 3784;
|
||||||
private CreateOrderActivity createOrderActivity;
|
private CreateOrderActivity createOrderActivity;
|
||||||
|
|
||||||
public CreateOrderSummaryFragment() {}
|
public CreateOrderSummaryFragment() {}
|
||||||
@@ -96,6 +115,21 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment {
|
|||||||
BaseActivity.setCurrentActivity(createOrderActivity);
|
BaseActivity.setCurrentActivity(createOrderActivity);
|
||||||
getCartProducts();
|
getCartProducts();
|
||||||
}
|
}
|
||||||
|
else if (requestCode == REQUEST_CODE_PAYMENT) {
|
||||||
|
if (resultCode == Activity.RESULT_OK) {
|
||||||
|
DropInResult result = data.getParcelableExtra(DropInResult.EXTRA_DROP_IN_RESULT);
|
||||||
|
Log.i("fjehfhreuf", "vjfjvjfv");
|
||||||
|
//createOrder();
|
||||||
|
// use the result to update your UI and send the payment method nonce to your server
|
||||||
|
} else if (resultCode == Activity.RESULT_CANCELED) {
|
||||||
|
// the user canceled
|
||||||
|
Log.i("fjehfhreuf", "vjfjvjfv");
|
||||||
|
} else {
|
||||||
|
// handle errors here, an exception may be available in
|
||||||
|
Exception error = (Exception) data.getSerializableExtra(DropInActivity.EXTRA_ERROR);
|
||||||
|
Log.i("fjehfhreuf", "vjfjvjfv");
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@OnClick({R.id.previousTextView, R.id.nextTextView})
|
@OnClick({R.id.previousTextView, R.id.nextTextView})
|
||||||
@@ -318,7 +352,23 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment {
|
|||||||
response.body() != null){
|
response.body() != null){
|
||||||
|
|
||||||
if(response.body().isSuccess()){
|
if(response.body().isSuccess()){
|
||||||
createOrder();
|
|
||||||
|
if(createOrderActivity.getSelectedPaymentMethod().getPaymentMethodType() == PaymentMethodModel.PaymentMethodType.UNKNOWN){
|
||||||
|
DialogHelper.hideLoadingDialog();
|
||||||
|
DialogHelper.showAlertDialog(BaseActivity.currentActivity, unknownPaymentMethodText);
|
||||||
|
}
|
||||||
|
else if(createOrderActivity.getSelectedPaymentMethod().getPaymentMethodType() == PaymentMethodModel.PaymentMethodType.CASH ||
|
||||||
|
createOrderActivity.getSelectedPaymentMethod().getPaymentMethodType() == PaymentMethodModel.PaymentMethodType.TRANSFER){
|
||||||
|
createOrder();
|
||||||
|
}
|
||||||
|
else if(createOrderActivity.getSelectedPaymentMethod().getPaymentMethodType() == PaymentMethodModel.PaymentMethodType.TWINT) {
|
||||||
|
DialogHelper.hideLoadingDialog();
|
||||||
|
startTwintPayment();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
DialogHelper.hideLoadingDialog();
|
||||||
|
startBraintreePayment();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
DialogHelper.hideLoadingDialog();
|
DialogHelper.hideLoadingDialog();
|
||||||
@@ -342,7 +392,7 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void createOrder(){
|
private void createOrder(){
|
||||||
//DialogHelper.showLoadingDialog();
|
DialogHelper.showLoadingDialog();
|
||||||
Call<ResponseObject<Integer>> call = ApiService.apiInterface.createOrder(
|
Call<ResponseObject<Integer>> call = ApiService.apiInterface.createOrder(
|
||||||
ApiEndPoints.API_CREATE_ORDER + SessionHelper.getCustomerToken().getToken(), getCreateOrderParams());
|
ApiEndPoints.API_CREATE_ORDER + SessionHelper.getCustomerToken().getToken(), getCreateOrderParams());
|
||||||
call.enqueue(new Callback<ResponseObject<Integer>>() {
|
call.enqueue(new Callback<ResponseObject<Integer>>() {
|
||||||
@@ -437,4 +487,38 @@ public class CreateOrderSummaryFragment extends CreateOrderBaseFragment {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void startBraintreePayment(){
|
||||||
|
|
||||||
|
// CVV kodu default olarak gozukmuyor.
|
||||||
|
// Gozukmesi için braintree'ye login ol
|
||||||
|
// Go to Settings --> Processing --> CVV --> Click on Edit --> Check option 'CVV not provided(l)', Enable option 'for any transaction'
|
||||||
|
//
|
||||||
|
|
||||||
|
DropInRequest paymentRequest = new DropInRequest()
|
||||||
|
.tokenizationKey(ApiConstants.BRAINTREE_TOKENIZATION_KEY_SANDBOX)
|
||||||
|
//.clientToken("eyJ2ZXJzaW9uIjoyLCJhdXRob3JpemF0aW9uRmluZ2VycHJpbnQiOiI3NzY2ZmNmNTQ3MDc1YWMzMGZiNmIxMzU3MTI1ZTJmODc5YjM4MmNkOTcwYmYwZmYyNmQzMWJmNGRiYjI1MjQzfGNyZWF0ZWRfYXQ9MjAxOC0wNi0xM1QxODo1Mzo0Mi4wODA4MDc5MDQrMDAwMFx1MDAyNm1lcmNoYW50X2lkPTM0OHBrOWNnZjNiZ3l3MmJcdTAwMjZwdWJsaWNfa2V5PTJuMjQ3ZHY4OWJxOXZtcHIiLCJjb25maWdVcmwiOiJodHRwczovL2FwaS5zYW5kYm94LmJyYWludHJlZWdhdGV3YXkuY29tOjQ0My9tZXJjaGFudHMvMzQ4cGs5Y2dmM2JneXcyYi9jbGllbnRfYXBpL3YxL2NvbmZpZ3VyYXRpb24iLCJjaGFsbGVuZ2VzIjpbXSwiZW52aXJvbm1lbnQiOiJzYW5kYm94IiwiY2xpZW50QXBpVXJsIjoiaHR0cHM6Ly9hcGkuc2FuZGJveC5icmFpbnRyZWVnYXRld2F5LmNvbTo0NDMvbWVyY2hhbnRzLzM0OHBrOWNnZjNiZ3l3MmIvY2xpZW50X2FwaSIsImFzc2V0c1VybCI6Imh0dHBzOi8vYXNzZXRzLmJyYWludHJlZWdhdGV3YXkuY29tIiwiYXV0aFVybCI6Imh0dHBzOi8vYXV0aC52ZW5tby5zYW5kYm94LmJyYWludHJlZWdhdGV3YXkuY29tIiwiYW5hbHl0aWNzIjp7InVybCI6Imh0dHBzOi8vb3JpZ2luLWFuYWx5dGljcy1zYW5kLnNhbmRib3guYnJhaW50cmVlLWFwaS5jb20vMzQ4cGs5Y2dmM2JneXcyYiJ9LCJ0aHJlZURTZWN1cmVFbmFibGVkIjp0cnVlLCJwYXlwYWxFbmFibGVkIjp0cnVlLCJwYXlwYWwiOnsiZGlzcGxheU5hbWUiOiJBY21lIFdpZGdldHMsIEx0ZC4gKFNhbmRib3gpIiwiY2xpZW50SWQiOm51bGwsInByaXZhY3lVcmwiOiJodHRwOi8vZXhhbXBsZS5jb20vcHAiLCJ1c2VyQWdyZWVtZW50VXJsIjoiaHR0cDovL2V4YW1wbGUuY29tL3RvcyIsImJhc2VVcmwiOiJodHRwczovL2Fzc2V0cy5icmFpbnRyZWVnYXRld2F5LmNvbSIsImFzc2V0c1VybCI6Imh0dHBzOi8vY2hlY2tvdXQucGF5cGFsLmNvbSIsImRpcmVjdEJhc2VVcmwiOm51bGwsImFsbG93SHR0cCI6dHJ1ZSwiZW52aXJvbm1lbnROb05ldHdvcmsiOnRydWUsImVudmlyb25tZW50Ijoib2ZmbGluZSIsInVudmV0dGVkTWVyY2hhbnQiOmZhbHNlLCJicmFpbnRyZWVDbGllbnRJZCI6Im1hc3RlcmNsaWVudDMiLCJiaWxsaW5nQWdyZWVtZW50c0VuYWJsZWQiOnRydWUsIm1lcmNoYW50QWNjb3VudElkIjoiYWNtZXdpZGdldHNsdGRzYW5kYm94IiwiY3VycmVuY3lJc29Db2RlIjoiVVNEIn0sIm1lcmNoYW50SWQiOiIzNDhwazljZ2YzYmd5dzJiIiwidmVubW8iOiJvZmYifQ==")
|
||||||
|
//.amount("CHF1.0")
|
||||||
|
//.requestThreeDSecureVerification(true)
|
||||||
|
.disableVenmo();
|
||||||
|
|
||||||
|
|
||||||
|
switch (createOrderActivity.getSelectedPaymentMethod().getPaymentMethodType()){
|
||||||
|
case CREDIT_DEBIT_CARD:
|
||||||
|
paymentRequest.disableAndroidPay();
|
||||||
|
paymentRequest.disablePayPal();
|
||||||
|
break;
|
||||||
|
case PAYPAL:
|
||||||
|
paymentRequest.disableAndroidPay();
|
||||||
|
break;
|
||||||
|
case ANDROID_PAY:
|
||||||
|
paymentRequest.disablePayPal();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
startActivityForResult(paymentRequest.getIntent(BaseActivity.currentActivity), REQUEST_CODE_PAYMENT);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void startTwintPayment(){
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,8 @@ import java.util.ArrayList;
|
|||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.Comparator;
|
import java.util.Comparator;
|
||||||
|
|
||||||
|
import ch.pizzapp.android.api.ApiConstants;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by cimenmus on 17/10/2017.
|
* Created by cimenmus on 17/10/2017.
|
||||||
*/
|
*/
|
||||||
@@ -21,6 +23,17 @@ public class PaymentMethodModel {
|
|||||||
@Expose @SerializedName("sort_order")
|
@Expose @SerializedName("sort_order")
|
||||||
private String sortOrder;
|
private String sortOrder;
|
||||||
|
|
||||||
|
public enum PaymentMethodType {
|
||||||
|
CREDIT_DEBIT_CARD,
|
||||||
|
CASH,
|
||||||
|
TRANSFER,
|
||||||
|
PAYPAL,
|
||||||
|
TWINT,
|
||||||
|
ANDROID_PAY,
|
||||||
|
APPLE_PAY,
|
||||||
|
UNKNOWN
|
||||||
|
}
|
||||||
|
|
||||||
private void checkNull(){
|
private void checkNull(){
|
||||||
|
|
||||||
if(code == null)
|
if(code == null)
|
||||||
@@ -51,6 +64,28 @@ public class PaymentMethodModel {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public PaymentMethodType getPaymentMethodType() {
|
||||||
|
switch (code){
|
||||||
|
case ApiConstants.PAYMENT_METHOD_CODE_CREDIT_DEBIT_CARD:
|
||||||
|
return PaymentMethodType.CREDIT_DEBIT_CARD;
|
||||||
|
case ApiConstants.PAYMENT_METHOD_CODE_BANK_CASH:
|
||||||
|
return PaymentMethodType.CASH;
|
||||||
|
case ApiConstants.PAYMENT_METHOD_CODE_TRANSFER:
|
||||||
|
return PaymentMethodType.TRANSFER;
|
||||||
|
case ApiConstants.PAYMENT_METHOD_CODE_PAYPAL:
|
||||||
|
return PaymentMethodType.PAYPAL;
|
||||||
|
case ApiConstants.PAYMENT_METHOD_CODE_TWINT:
|
||||||
|
return PaymentMethodType.TWINT;
|
||||||
|
case ApiConstants.PAYMENT_METHOD_CODE_ANDROID_PAY:
|
||||||
|
return PaymentMethodType.ANDROID_PAY;
|
||||||
|
case ApiConstants.PAYMENT_METHOD_CODE_APPLE_PAY:
|
||||||
|
return PaymentMethodType.APPLE_PAY;
|
||||||
|
default:
|
||||||
|
return PaymentMethodType.UNKNOWN;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public String getCode() {
|
public String getCode() {
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|||||||
9
app/src/main/res/layout/activity_payment.xml
Normal file
9
app/src/main/res/layout/activity_payment.xml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
tools:context="ch.pizzapp.android.activity.PaymentActivity">
|
||||||
|
|
||||||
|
</android.support.constraint.ConstraintLayout>
|
||||||
@@ -171,6 +171,8 @@
|
|||||||
<string name="order_payment_method">ZAHLUNGSWEISE</string>
|
<string name="order_payment_method">ZAHLUNGSWEISE</string>
|
||||||
<string name="order_total">ZWISCHENSUMME</string>
|
<string name="order_total">ZWISCHENSUMME</string>
|
||||||
<string name="order_notee">NACHRICHT</string>
|
<string name="order_notee">NACHRICHT</string>
|
||||||
|
<!--tr-->
|
||||||
|
<string name="unknown_payment_method">Bilinmeyen ödeme yöntemi.</string>
|
||||||
<!-- CreateOrderSummaryFragment-->
|
<!-- CreateOrderSummaryFragment-->
|
||||||
|
|
||||||
<!-- CreateOrderResultFragment-->
|
<!-- CreateOrderResultFragment-->
|
||||||
|
|||||||
Reference in New Issue
Block a user