public void StoreEbayUserAccountData(IDatabaseCustomerMarketPlace databaseCustomerMarketPlace, IDatabaseEbayAccountInfo data, MP_CustomerMarketplaceUpdatingHistory historyRecord) { if (data == null) { WriteToLog("StoreEbayUserData: invalid data to store", WriteLogType.Error); return; } MP_CustomerMarketPlace customerMarketPlace = GetCustomerMarketPlace(databaseCustomerMarketPlace.Id); try { var accountData = new MP_EbayUserAccountData { CustomerMarketPlace = customerMarketPlace, Created = data.SubmittedDate.ToUniversalTime(), Currency = data.Currency, Id = 0, PaymentMethod = data.PaymentMethod, AccountId = data.AccountId, AccountState = data.AccountState, AmountPastDueValue = data.AmountPastDueValue, BankAccountInfo = data.BankAccountInfo, BankModifyDate = data.BankModifyDate, CreditCardExpiration = data.CreditCardExpiration, CreditCardInfo = data.CreditCardInfo, CreditCardModifyDate = data.CreditCardModifyDate, CurrentBalance = data.CurrentBalance, PastDue = data.PastDue, HistoryRecord = historyRecord }; if (data.AdditionalAccount != null && data.AdditionalAccount.Length > 0) { data.AdditionalAccount.ForEach( a => accountData.EbayUserAdditionalAccountData.Add( new MP_EbayUserAdditionalAccountData { Currency = a.Currency, AccountCode = a.AccountCode, Balance = a.Balance.Value, EbayUserAccountData = accountData })); } customerMarketPlace.EbayUserAccountData.Add(accountData); _CustomerMarketplaceRepository.Update(customerMarketPlace); } catch (Exception ex) { WriteToLog("StoreEbayUserData: failed to store data", WriteLogType.Error, ex); } }
} // BuildEbayAdditionalAccountData private static void BuildEbayAccountData(MP_EbayUserAccountData ebayAccount, EBayModel model) { if (ebayAccount == null) return; model.AccountId = ebayAccount.AccountId; model.AccountState = ebayAccount.AccountState; model.AmountPastDueAmount = ebayAccount.AmountPastDueValue != null ? ebayAccount.AmountPastDueValue.Value.ToString(CultureInfo.InvariantCulture) : "-"; model.BankAccountInfo = ebayAccount.BankAccountInfo ?? "-"; model.BankModifyDate = FormattingUtils.FormatDateTimeToString(ebayAccount.BankModifyDate, "-"); model.CreditCardExpiration = FormattingUtils.FormatDateTimeToString(ebayAccount.CreditCardExpiration, "-"); model.CreditCardInfo = ebayAccount.CreditCardInfo; model.CreditCardModifyDate = FormattingUtils.FormatDateTimeToString(ebayAccount.CreditCardModifyDate, "-"); model.CurrentBalance = ebayAccount.CurrentBalance.ToString(); model.PastDue = ((bool?)ebayAccount.PastDue).ToString(); model.PaymentMethod = ebayAccount.PaymentMethod; model.Currency = ebayAccount.Currency; } // BuildEbayAccountData
} // GetFeedbackData private static EBayModel BuildEBay( MP_EbayUserData ebayUserData, MP_EbayUserAccountData ebayAccount, MP_EbayFeedback ebayFeedBack ) { var ebayFeedBackScore = ebayUserData != null ? ebayUserData.FeedbackScore : 0; var ebayAdditionalAccount = ebayAccount != null ? ebayAccount.EbayUserAdditionalAccountData.LastOrDefault() : null; var model = new EBayModel { EBayFeedBackScore = ebayFeedBackScore.ToString(), }; BuildEbayUserData(ebayUserData, model); BuildEbayAccountData(ebayAccount, model); BuildEbayAdditionalAccountData(model, ebayAdditionalAccount); BuildEbayFeedbackData(ebayFeedBack, model); return model; } // BuildEBay