コード例 #1
0
        public void StoreEbayFeedbackData(IDatabaseCustomerMarketPlace databaseCustomerMarketPlace, DatabaseEbayFeedbackData data, MP_CustomerMarketplaceUpdatingHistory historyRecord)
        {
            if (data == null)
            {
                WriteToLog("StoreEbayUserData: invalid data to store", WriteLogType.Error);
                return;
            }

            MP_CustomerMarketPlace customerMarketPlace = GetCustomerMarketPlace(databaseCustomerMarketPlace.Id);

            var feedBack = new MP_EbayFeedback
            {
                CustomerMarketPlace = customerMarketPlace,
                Created             = data.Submitted,
                RepeatBuyerCount    = data.RepeatBuyerCount,
                RepeatBuyerPercent  = data.RepeatBuyerPercent,
                TransactionPercent  = data.TransactionPercent,
                UniqueBuyerCount    = data.UniqueBuyerCount,
                UniqueNegativeCount = data.UniqueNegativeCount,
                UniqueNeutralCount  = data.UniqueNeutralCount,
                UniquePositiveCount = data.UniquePositiveCount,
                HistoryRecord       = historyRecord
            };

            if (data.FeedbackByPeriod != null && data.FeedbackByPeriod.Count > 0)
            {
                feedBack.FeedbackByPeriodItems.AddAll(data.FeedbackByPeriod.Values.Select(f => new MP_EbayFeedbackItem
                {
                    EbayFeedback = feedBack,
                    Negative     = f.Negative,
                    Positive     = f.Positive,
                    Neutral      = f.Neutral,
                    TimePeriod   = GetTimePeriod(TimePeriodFactory.Create(f.TimePeriod))
                }).ToList());
            }

            if (data.RaitingByPeriod != null && data.RaitingByPeriod.Count > 0)
            {
                feedBack.RaitingByPeriodItems.AddAll(data.RaitingByPeriod.Values.Select(r => new MP_EbayRaitingItem
                {
                    EbayFeedback               = feedBack,
                    Communication              = r.Communication,
                    ItemAsDescribed            = r.ItemAsDescribed,
                    ShippingAndHandlingCharges = r.ShippingAndHandlingCharges,
                    ShippingTime               = r.ShippingTime,
                    TimePeriod = GetTimePeriod(TimePeriodFactory.Create(r.TimePeriod))
                }).ToList());
            }

            customerMarketPlace.EbayFeedback.Add(feedBack);

            _CustomerMarketplaceRepository.Update(customerMarketPlace);
        }
コード例 #2
0
		} // BuildEBay

		private static void BuildEbayFeedbackData(MP_EbayFeedback ebayFeedBack, EBayModel model) {
			if (ebayFeedBack == null)
				return;

			model.NegativeFeedbackCount = Convert.ToString(ebayFeedBack.FeedbackByPeriodItems.Sum(x => x.Negative));
			model.NeutralFeedbackCount = Convert.ToString(ebayFeedBack.FeedbackByPeriodItems.Sum(x => x.Neutral));
			model.PositiveFeedbackCount = Convert.ToString(ebayFeedBack.FeedbackByPeriodItems.Sum(x => x.Positive));
			model.UniqueNegativeFeedbackCount = Convert.ToString(ebayFeedBack.UniqueNegativeCount);
			model.UniqueNeutralFeedbackCount = Convert.ToString(ebayFeedBack.UniqueNeutralCount);
			model.UniqueBuyerCount = Convert.ToString(ebayFeedBack.UniqueBuyerCount);
			model.UniquePositiveFeedbackCount = Convert.ToString(ebayFeedBack.UniquePositiveCount);
			model.TransactionPercent = Convert.ToString(ebayFeedBack.TransactionPercent, CultureInfo.InvariantCulture);
			model.RepeatBuyerCount = Convert.ToString(ebayFeedBack.RepeatBuyerCount);
			model.RepeatBuyerPercent = Convert.ToString(ebayFeedBack.RepeatBuyerPercent, CultureInfo.InvariantCulture);
		} // BuildEbayFeedbackData
コード例 #3
0
		} // 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