示例#1
0
        public static BasketWithProductObjects GetBasketByCheckoutId(IProduct _product, IBasket _basket, ResolveFieldContext <object> context)
        {
            string checkoutId = context.GetArgument <string>("checkoutId");
            Basket basket     = _basket.GetBasketByCheckoutId(checkoutId);


            BasketWhitoutCheckOutId basketWhitoutCheckOutId = ConvertBasketToBasketWithProductObjects.BasketConverter(_product, basket);

            return(new BasketWithProductObjects(checkoutId, basketWhitoutCheckOutId.BasketItemsWhitProduct));
        }
        public static BasketWhitoutCheckOutId BasketConverter(IProduct _product, Basket basket)
        {
            BasketWhitoutCheckOutId basketWhitoutCheckOutId = new BasketWhitoutCheckOutId(new List <BasketItemWithProduct>());

            foreach (BasketItem item in basket.BasketItems)
            {
                Product product = _product.AllProducts.SingleOrDefault(prod => prod.Id == item.ProductId);
                if (product != null)
                {
                    basketWhitoutCheckOutId.BasketItemsWhitProduct.Add(new BasketItemWithProduct(item.Id, product, item.Quantity));
                }
            }

            return(basketWhitoutCheckOutId);
        }