Beispiel #1
0
        public void StoreAmazonOrdersDetailsData(IDatabaseCustomerMarketPlace databaseCustomerMarketPlace, IEnumerable <AmazonOrderItem> ordersData)
        {
            MP_CustomerMarketPlace customerMarketPlace = GetCustomerMarketPlace(databaseCustomerMarketPlace.Id);

            foreach (var amazonOrderItem in ordersData)
            {
                if (amazonOrderItem.OrderedItemsList == null || amazonOrderItem.OrderedItemsList.Count == 0)
                {
                    continue;
                }

                var orderItem = customerMarketPlace.AmazonOrders.SelectMany(x => x.OrderItems).FirstOrDefault(x => x.OrderId == amazonOrderItem.OrderId);
                if (orderItem != null)
                {
                    orderItem.OrderItemDetails.AddAll(amazonOrderItem.OrderedItemsList.Select(
                                                          i => {
                        var mpAmazonOrderItemDetail = new MP_AmazonOrderItemDetail {
                            OrderItem         = orderItem,
                            SellerSKU         = i.SellerSKU,
                            Title             = i.Title,
                            ASIN              = i.ASIN,
                            CODFee            = i.CODFee,
                            CODFeeDiscount    = i.CODFeeDiscount,
                            GiftMessageText   = i.GiftMessageText,
                            GiftWrapLevel     = i.GiftWrapLevel,
                            GiftWrapPrice     = i.GiftWrapPrice,
                            GiftWrapTax       = i.GiftWrapTax,
                            ItemPrice         = i.ItemPrice,
                            ItemTax           = i.ItemTax,
                            OrderItemId       = i.OrderItemId,
                            PromotionDiscount = i.PromotionDiscount,
                            QuantityOrdered   = i.QuantityOrdered,
                            QuantityShipped   = i.QuantityShipped,
                            ShippingDiscount  = i.ShippingDiscount,
                            ShippingPrice     = i.ShippingPrice,
                            ShippingTax       = i.ShippingTax
                        };

                        mpAmazonOrderItemDetail.OrderItemCategories = CreateLinkCollection(mpAmazonOrderItemDetail, i.Categories);
                        return(mpAmazonOrderItemDetail);
                    }).ToArray());
                }
            }

            _CustomerMarketplaceRepository.Update(customerMarketPlace);
        }
Beispiel #2
0
 private Iesi.Collections.Generic.ISet <MP_AmazonOrderItemDetailCatgory> CreateLinkCollection(MP_AmazonOrderItemDetail orderItemDetail, ICollection <MP_EbayAmazonCategory> categories)
 {
     if (categories == null)
     {
         return(null);
     }
     return(new HashedSet <MP_AmazonOrderItemDetailCatgory>(
                categories.Select(c =>
                                  new MP_AmazonOrderItemDetailCatgory
     {
         Category = _EbayAmazonCategoryRepository.Get(c.Id),
         OrderItemDetail = orderItemDetail
     }).ToArray()));
 }