private CreditCardAddressDto CreateCreditCardAddress(Customer customer, CreditCardDto creditCard = null) { CreditCardAddressDto creditCardAddressDto1 = new CreditCardAddressDto() { Company = customer.CompanyName, FirstName = customer.FirstName, MiddleName = customer.MiddleName, LastName = customer.LastName, Email = customer.Email, Phone = customer.Phone }; if (creditCard != null && !creditCard.UseBillingAddress) { creditCardAddressDto1.Address1 = creditCard.Address1; creditCardAddressDto1.City = creditCard.City; creditCardAddressDto1.State = creditCard.StateAbbreviation; creditCardAddressDto1.PostalCode = creditCard.PostalCode; creditCardAddressDto1.Country = creditCard.CountryAbbreviation; } else { bool isNewUser = false; if (SiteContext.Current.UserProfile != null) { isNewUser = (SiteContext.Current.UserProfileDto != null && !SiteContext.Current.UserProfileDto.IsGuest && customer.CustomerNumber.ContainsIgnoreCase("1055357")); } creditCardAddressDto1.Address1 = isNewUser ? SiteContext.Current.UserProfile.CustomProperties.Where(x => x.Name == "NewUsrBTAddress1").Select(x => x.Value).FirstOrDefault().ToString() : customer.Address1; creditCardAddressDto1.Address2 = isNewUser ? SiteContext.Current.UserProfile.CustomProperties.Where(x => x.Name == "NewUsrBTAddress2").Select(x => x.Value).FirstOrDefault().ToString() : customer.Address2; creditCardAddressDto1.City = isNewUser ? SiteContext.Current.UserProfile.CustomProperties.Where(x => x.Name == "NewUsrBTCity").Select(x => x.Value).FirstOrDefault().ToString() : customer.City; CreditCardAddressDto creditCardAddressDto2 = creditCardAddressDto1; var customerState = isNewUser ? SiteContext.Current.UserProfile.CustomProperties.Where(x => x.Name == "NewUsrBTState").Select(x => x.Value).FirstOrDefault().ToString() : string.Empty; State state = isNewUser ? UnitOfWork.GetRepository <State>().GetTable().FirstOrDefault(s => s.Name == customerState) ?? customer.State : customer.State; string str1 = (state != null ? state.Abbreviation : (string)null) ?? string.Empty; creditCardAddressDto2.State = str1; creditCardAddressDto1.PostalCode = isNewUser ? SiteContext.Current.UserProfile.CustomProperties.Where(x => x.Name == "NewUsrBTPostalCode").Select(x => x.Value).FirstOrDefault().ToString() : customer.PostalCode; CreditCardAddressDto creditCardAddressDto3 = creditCardAddressDto1; var customerCountry = isNewUser ? SiteContext.Current.UserProfile.CustomProperties.Where(x => x.Name == "NewUsrBTCountry").Select(x => x.Value).FirstOrDefault().ToString() : string.Empty; Country country = isNewUser ? UnitOfWork.GetRepository <Country>().GetTable().FirstOrDefault(s => s.Name == customerCountry) ?? customer.Country : customer.Country; string str2 = (country != null ? country.Abbreviation : (string)null) ?? string.Empty; creditCardAddressDto3.Country = str2; } return(creditCardAddressDto1); }
private CreditCardTransaction CreateCreditCardTransaction(SubmitTransactionParameter submitTransactionParameter) { CreditCardTransaction creditCardTransaction = this.UnitOfWork.GetRepository <CreditCardTransaction>().Create(); creditCardTransaction.TransactionType = submitTransactionParameter.TransactionType == TransactionType.Authorization ? "A" : (submitTransactionParameter.TransactionType == TransactionType.Sale ? "S" : (submitTransactionParameter.TransactionType == TransactionType.Capture ? "D" : (submitTransactionParameter.TransactionType == TransactionType.Void ? "V" : (submitTransactionParameter.TransactionType == TransactionType.Reversal ? "R" : "C")))); creditCardTransaction.TransactionDate = DateTimeProvider.Current.Now; creditCardTransaction.Amount = submitTransactionParameter.Amount; creditCardTransaction.CustomerNumber = submitTransactionParameter.CustomerNumber; creditCardTransaction.OrderNumber = submitTransactionParameter.ReferenceNumber; CreditCardDto creditCard1 = submitTransactionParameter.CreditCard; creditCardTransaction.Name = (creditCard1 != null ? creditCard1.CardHolderName : (string)null) ?? string.Empty; creditCardTransaction.AvsAddr = this.GetAvsAddr(submitTransactionParameter); CreditCardAddressDto billToAddress = submitTransactionParameter.BillToAddress; creditCardTransaction.AvsZip = (billToAddress != null ? billToAddress.PostalCode : (string)null) ?? string.Empty; CreditCardDto creditCard2 = submitTransactionParameter.CreditCard; string str1 = (creditCard2 != null ? creditCard2.CardNumber : (string)null) ?? string.Empty; CreditCardDto creditCard3 = submitTransactionParameter.CreditCard; int num; string str2; if (creditCard3 == null) { str2 = (string)null; } else { num = creditCard3.ExpirationMonth; str2 = num.ToString("00"); } if (str2 == null) { str2 = string.Empty; } string str3 = "/"; CreditCardDto creditCard4 = submitTransactionParameter.CreditCard; string str4; if (creditCard4 == null) { str4 = (string)null; } else { num = creditCard4.ExpirationYear; str4 = num.ToString(); } if (str4 == null) { str4 = string.Empty; } creditCardTransaction.ExpirationDate = str2 + str3 + str4; string str5; if (str1.Length <= 4) { str5 = str1; } else { string str6 = str1; str5 = str6.Substring(str6.Length - 4); } creditCardTransaction.CreditCardNumber = str5; creditCardTransaction.OrigId = submitTransactionParameter.OriginalRequestNumber; creditCardTransaction.Site = SiteContext.Current.WebsiteDto.Name; return(creditCardTransaction); }