Esempio n. 1
0
        public void AddItemToShoppingCart()
        {
            var controller = GetCartController();
            var result     = controller.GetCurrentCart("testSite", null) as OkNegotiatedContentResult <webModel.ShoppingCart>;
            var cart       = result.Content;

            var item = new webModel.LineItem
            {
                CatalogId   = "Samsung",
                CategoryId  = "100df6d5-8210-4b72-b00a-5003f9dcb79d",
                ProductId   = "v-b000bkzs9w",
                ListPrice   = 10.44m,
                PlacedPrice = 20.33m,
                Quantity    = 1,
                Name        = "Samsung YP-T7JX 512 MB Digital Audio Player with FM Tuner & Recorder",
                Currency    = cart.Currency
            };

            cart.Items.Add(item);

            controller.Update(cart);

            result = controller.GetCartById(cart.Id) as OkNegotiatedContentResult <webModel.ShoppingCart>;
            cart   = result.Content;
        }
		public void AddItemToShoppingCart()
		{
			var controller = GetCartController();
			var result = controller.GetCurrentCart("testSite", null) as OkNegotiatedContentResult<webModel.ShoppingCart>;
			var cart = result.Content;

			var item = new webModel.LineItem
			{
				CatalogId = "Samsung",
				CategoryId = "100df6d5-8210-4b72-b00a-5003f9dcb79d",
				ProductId = "v-b000bkzs9w",
				ListPrice = 10.44m,
				PlacedPrice = 20.33m,
				Quantity = 1,
				Name = "Samsung YP-T7JX 512 MB Digital Audio Player with FM Tuner & Recorder",
				Currency = cart.Currency
			};
			cart.Items.Add(item);

			controller.Update(cart);

			result = controller.GetCartById(cart.Id) as OkNegotiatedContentResult<webModel.ShoppingCart>;
			cart = result.Content;


			Assert.IsNotNull(result.Content);
		}
		public static webModel.LineItem ToWebModel(this coreModel.LineItem cartItem)
		{
			var retVal = new webModel.LineItem();
			retVal.InjectFrom(cartItem);
			retVal.Currency = cartItem.Currency;
			if (cartItem.Discounts != null)
				retVal.Discounts = cartItem.Discounts.Select(x => x.ToWebModel()).ToList();

			retVal.TaxDetails = cartItem.TaxDetails;
			return retVal;
		}
        public static webModel.LineItem ToWebModel(this coreModel.LineItem cartItem)
        {
            var retVal = new webModel.LineItem();

            retVal.InjectFrom(cartItem);
            retVal.Currency = cartItem.Currency;
            if (cartItem.Discounts != null)
            {
                retVal.Discounts = cartItem.Discounts.Select(x => x.ToWebModel()).ToList();
            }

            retVal.TaxDetails = cartItem.TaxDetails;
            return(retVal);
        }
Esempio n. 5
0
        public void CreateMultishipmentCart()
        {
            var controller = GetCartController();

            var cart = new webModel.ShoppingCart
            {
                Currency     = "USD",
                CustomerId   = "et",
                CustomerName = "et",
                Name         = "default",
                StoreId      = "Clothing"
            };
            var item = new webModel.LineItem
            {
                CatalogId   = "Samsung",
                CategoryId  = "100df6d5-8210-4b72-b00a-5003f9dcb79d",
                ProductId   = "v-b000bkzs9w",
                ListPrice   = 10.44m,
                PlacedPrice = 20.33m,
                Quantity    = 1,
                Sku         = "v-b000bkzs9w",
                Name        = "Samsung YP-T7JX 512 MB Digital Audio Player with FM Tuner & Recorder",
                Currency    = cart.Currency
            };

            cart.Items = new List <webModel.LineItem>();
            cart.Items.Add(item);
            var deliveryAddress = new webModel.Address
            {
                Type         = AddressType.Shipping,
                City         = "london",
                Phone        = "+68787687",
                PostalCode   = "2222",
                CountryCode  = "ENG",
                CountryName  = "England",
                Email        = "*****@*****.**",
                FirstName    = "first name",
                LastName     = "last name",
                Organization = "org1",
                Line1        = "sss"
            };
            //Select appropriate shipment method
            var shipment = new webModel.Shipment
            {
                DeliveryAddress    = deliveryAddress,
                Currency           = "USD",
                ShipmentMethodCode = "",
                ShippingPrice      = 10
            };

            cart.Shipments = new List <webModel.Shipment>();
            cart.Shipments.Add(shipment);
            shipment.Items = new List <webModel.ShipmentItem>();
            shipment.Items.Add(new Web.Model.ShipmentItem {
                Quantity = 10, LineItem = item
            });

            cart = (controller.Create(cart) as OkNegotiatedContentResult <webModel.ShoppingCart>).Content;

            //Add exist line items in cart
            var existLineItem = cart.Items.First();
            var shipment2     = new webModel.Shipment
            {
                DeliveryAddress    = deliveryAddress,
                Currency           = "USD",
                ShipmentMethodCode = "sss",
                ShippingPrice      = 11
            };

            cart.Shipments.Add(shipment2);
            shipment2.Items = new List <webModel.ShipmentItem>();
            shipment2.Items.Add(new Web.Model.ShipmentItem {
                Quantity = 5, LineItem = existLineItem
            });
            existLineItem.Quantity += 5;

            cart = (controller.Update(cart) as OkNegotiatedContentResult <webModel.ShoppingCart>).Content;

            //Add new item to exist shipment
            var item2 = new webModel.LineItem
            {
                CatalogId   = "Sony",
                CategoryId  = "100df6d5-8210-4b72-b00a-5003f9dcb79d",
                ProductId   = "v-sssss",
                ListPrice   = 10.44m,
                PlacedPrice = 20.33m,
                Quantity    = 1,
                Sku         = "v-ssss",
                Name        = "Sony",
                Currency    = cart.Currency
            };

            cart.Items.Add(item2);
            cart.Shipments.First().Items.Add(new Web.Model.ShipmentItem {
                Quantity = 3, LineItem = item2
            });
            cart = (controller.Update(cart) as OkNegotiatedContentResult <webModel.ShoppingCart>).Content;
        }
        public void CreateMultishipmentCart()
        {
            var controller = GetCartController();
       
            var cart = new webModel.ShoppingCart
            {
                Currency = Platform.Core.Common.CurrencyCodes.USD,
                CustomerId = "et",
                CustomerName = "et",
                Name = "default",
                StoreId = "Clothing"
            };
            var item = new webModel.LineItem
            {
                CatalogId = "Samsung",
                CategoryId = "100df6d5-8210-4b72-b00a-5003f9dcb79d",
                ProductId = "v-b000bkzs9w",
                ListPrice = 10.44m,
                PlacedPrice = 20.33m,
                Quantity = 1,
                Sku = "v-b000bkzs9w",
                Name = "Samsung YP-T7JX 512 MB Digital Audio Player with FM Tuner & Recorder",
                Currency = cart.Currency
            };
            cart.Items = new List<webModel.LineItem>();
            cart.Items.Add(item);
            var deliveryAddress = new webModel.Address
            {
                Type = AddressType.Shipping,
                City = "london",
                Phone = "+68787687",
                PostalCode = "2222",
                CountryCode = "ENG",
                CountryName = "England",
                Email = "*****@*****.**",
                FirstName = "first name",
                LastName = "last name",
                Organization = "org1",
                Line1 = "sss"
            }; 
            //Select appropriate shipment method
            var shipment = new webModel.Shipment
            {
                DeliveryAddress = deliveryAddress,
                Currency = Platform.Core.Common.CurrencyCodes.USD,
                ShipmentMethodCode = "",
                ShippingPrice = 10
            };
            cart.Shipments = new List<webModel.Shipment>();
            cart.Shipments.Add(shipment);
            shipment.Items = new List<webModel.ShipmentItem>();
            shipment.Items.Add(new Web.Model.ShipmentItem { Quantity = 10, LineItem = item });

            cart = (controller.Create(cart) as OkNegotiatedContentResult<webModel.ShoppingCart>).Content;

            //Add exist line items in cart
            var existLineItem = cart.Items.First();
            var shipment2 = new webModel.Shipment
            {
                DeliveryAddress = deliveryAddress,
                Currency = Platform.Core.Common.CurrencyCodes.USD,
                ShipmentMethodCode = "sss",
                ShippingPrice = 11
            };
            cart.Shipments.Add(shipment2);
            shipment2.Items = new List<webModel.ShipmentItem>();
            shipment2.Items.Add(new Web.Model.ShipmentItem { Quantity = 5, LineItem = existLineItem });
            existLineItem.Quantity += 5;

            cart = (controller.Update(cart) as OkNegotiatedContentResult<webModel.ShoppingCart>).Content;

            //Add new item to exist shipment
            var item2 = new webModel.LineItem
            {
                CatalogId = "Sony",
                CategoryId = "100df6d5-8210-4b72-b00a-5003f9dcb79d",
                ProductId = "v-sssss",
                ListPrice = 10.44m,
                PlacedPrice = 20.33m,
                Quantity = 1,
                Sku = "v-ssss",
                Name = "Sony",
                Currency = cart.Currency
            };
            cart.Items.Add(item2);
            cart.Shipments.First().Items.Add(new Web.Model.ShipmentItem { Quantity = 3, LineItem = item2 });
            cart = (controller.Update(cart) as OkNegotiatedContentResult<webModel.ShoppingCart>).Content;
        }