public async Task<Order> CreateOrderAsync(string userId, ShoppingCart shoppingCart, Address shippingAddress, Address billingAddress, PaymentMethod paymentMethod, ShippingMethod shippingMethod) { Order order = new Order { UserId = userId, ShoppingCart = shoppingCart, ShippingAddress = shippingAddress, BillingAddress = billingAddress, PaymentMethod = paymentMethod, ShippingMethod = shippingMethod }; order.Id = await _orderService.CreateOrderAsync(order, _accountService.ServerCookieHeader); return order; }
private CheckoutDataViewModel CreateCheckoutData(PaymentMethod paymentMethod) { return new CheckoutDataViewModel(paymentMethod.Id, _resourceLoader.GetString("PaymentMethod"), string.Format(CultureInfo.CurrentUICulture, _resourceLoader.GetString("CardEndingIn"), paymentMethod.CardNumber.Substring(paymentMethod.CardNumber.Length - 4)), string.Format(CultureInfo.CurrentUICulture, _resourceLoader.GetString("CardExpiringOn"), string.Format(CultureInfo.CurrentCulture, "{0}/{1}", paymentMethod.ExpirationMonth, paymentMethod.ExpirationYear)), paymentMethod.CardholderName, new Uri(Constants.PaymentMethodLogo, UriKind.Absolute), Constants.PaymentMethod, paymentMethod); }
public PaymentMethodUserControlViewModel(ICheckoutDataRepository checkoutDataRepository) { _paymentMethod = new PaymentMethod(); _checkoutDataRepository = checkoutDataRepository; }
public void SetDefaultPaymentMethod(PaymentMethod paymentMethod) { throw new NotImplementedException(); }
public async Task CreateBasicOrderAsync(string userId, ShoppingCart shoppingCart, Address shippingAddress, Address billingAddress, PaymentMethod paymentMethod) { var basicShippingMethod = await _shippingMethodService.GetBasicShippingMethodAsync(); _currentOrder = await CreateOrderAsync(userId, shoppingCart, shippingAddress, billingAddress, paymentMethod, basicShippingMethod); _suspensionManagerState.SessionState[OrderKey] = _currentOrder; }
public Task<PaymentMethod> SavePaymentMethodAsync(PaymentMethod paymentMethod) { throw new NotImplementedException(); }
public Task<Order> CreateOrderAsync(string userId, ShoppingCart shoppingCart, Address shippingAddress, Address billingAddress, PaymentMethod paymentMethod, ShippingMethod shippingMethod) { return CreateOrderAsyncDelegate(userId, shoppingCart, shippingAddress, billingAddress, paymentMethod, shippingMethod); }
private static bool IsMatchingPaymentMethod(PaymentMethod firstPaymentMethod, PaymentMethod secondPaymentMethod) { if (firstPaymentMethod.CardNumber != secondPaymentMethod.CardNumber) return false; if (firstPaymentMethod.CardVerificationCode != secondPaymentMethod.CardVerificationCode) return false; if (firstPaymentMethod.CardholderName != secondPaymentMethod.CardholderName) return false; if (firstPaymentMethod.ExpirationMonth != secondPaymentMethod.ExpirationMonth) return false; if (firstPaymentMethod.ExpirationYear != secondPaymentMethod.ExpirationYear) return false; if (firstPaymentMethod.Phone != secondPaymentMethod.Phone) return false; return true; }
public void SetDefaultPaymentMethod(PaymentMethod paymentMethod) { if (paymentMethod == null) { throw new ArgumentNullException("paymentMethod", "paymentMethod is null"); } _settingsStoreService.SaveValue(Constants.Default, Constants.PaymentMethod, paymentMethod.Id); }
// </snippet502> public async Task<PaymentMethod> SavePaymentMethodAsync(PaymentMethod paymentMethod) { paymentMethod.Id = Guid.NewGuid().ToString(); PaymentMethod savedPaymentMethod = (await GetAllPaymentMethodsAsync()).FirstOrDefault(c => IsMatchingPaymentMethod(c, paymentMethod)); if (savedPaymentMethod == null) { paymentMethod.CardNumberBuffer = await _encryptionService.EncryptMessage(paymentMethod.CardNumber); _paymentMethods.Add(paymentMethod); _settingsStoreService.SaveEntity(Constants.PaymentMethod, paymentMethod.Id, paymentMethod); savedPaymentMethod = paymentMethod; } // If no default value is stored, use this one if (GetDefaultPaymentMethodAsync() == null) { SetDefaultPaymentMethod(savedPaymentMethod); } return savedPaymentMethod; }