示例#1
0
        public virtual Task <PaymentMethod> SetDefaultCustomerPaymentMethod(SetDefaultCustomerPaymentMethodParam param)
        {
            if (param == null)
            {
                throw new ArgumentNullException(nameof(param), "param is required");
            }
            if (param.CustomerId == Guid.Empty)
            {
                throw new ArgumentException("param.CustomerId is required", nameof(param.CustomerId));
            }
            if (param.PaymentMethodId == Guid.Empty)
            {
                throw new ArgumentException("param.PaymentMethodId is required", nameof(param.PaymentMethodId));
            }
            if (string.IsNullOrWhiteSpace(param.PaymentProviderName))
            {
                throw new ArgumentException("param.PaymentProviderName", nameof(param.PaymentProviderName));
            }
            if (string.IsNullOrWhiteSpace(param.ScopeId))
            {
                throw new ArgumentException("param.ScopeId is required", nameof(param.ScopeId));
            }

            var request = new SetDefaultCustomerPaymentMethodRequest
            {
                CustomerId          = param.CustomerId,
                Default             = true,
                PaymentMethodId     = param.PaymentMethodId,
                PaymentProviderName = param.PaymentProviderName,
                ScopeId             = param.ScopeId
            };

            return(OvertureClient.SendAsync(request));
        }
示例#2
0
        public virtual async Task <IPaymentMethodViewModel> SetDefaultCustomerPaymentMethod(SetDefaultCustomerPaymentMethodParam param)
        {
            if (param == null)
            {
                throw new ArgumentNullException(nameof(param));
            }
            if (param.CustomerId == Guid.Empty)
            {
                throw new ArgumentException(GetMessageOfEmpty(nameof(param.CustomerId)), nameof(param));
            }
            if (param.PaymentMethodId == Guid.Empty)
            {
                throw new ArgumentException(GetMessageOfEmpty(nameof(param.PaymentMethodId)), nameof(param));
            }
            if (string.IsNullOrWhiteSpace(param.PaymentProviderName))
            {
                throw new ArgumentException(GetMessageOfNullWhiteSpace(nameof(param.PaymentProviderName)), nameof(param));
            }

            var paymentMethod = await CartRepository.SetDefaultCustomerPaymentMethod(param).ConfigureAwait(false);

            return(await MapPaymentMethodToViewModel(paymentMethod, param.Culture));
        }
 public Task <PaymentMethod> SetDefaultCustomerPaymentMethod(SetDefaultCustomerPaymentMethodParam param)
 {
     throw new NotImplementedException();
 }