public ApiListsController(WorkContext workContext, ICatalogSearchService catalogSearchService, ICartBuilder cartBuilder,
                           IStorefrontUrlBuilder urlBuilder)
     : base(workContext, urlBuilder)
 {
     _wishlistBuilder      = cartBuilder;
     _catalogSearchService = catalogSearchService;
 }
        public CartService(
            ICartBuilder <Connect.Cart> cartBuilder,
            ICartManager cartManager,
            IInventoryManager inventoryManager,
            ICatalogContext catalogContext,
            ICatalogService catalogService,
            IStorefrontContext storefrontContext,
            IVisitorContext visitorContext)
        {
            Assert.ArgumentNotNull(cartBuilder, nameof(cartBuilder));
            Assert.ArgumentNotNull(cartManager, nameof(cartManager));
            Assert.ArgumentNotNull(inventoryManager, nameof(inventoryManager));
            Assert.ArgumentNotNull(catalogContext, nameof(catalogContext));
            Assert.ArgumentNotNull(catalogService, nameof(catalogService));
            Assert.ArgumentNotNull(storefrontContext, nameof(storefrontContext));
            Assert.ArgumentNotNull(visitorContext, nameof(visitorContext));

            this.cartBuilder       = cartBuilder;
            this.cartManager       = cartManager;
            this.inventoryManager  = inventoryManager;
            this.catalogContext    = catalogContext;
            this.catalogService    = catalogService;
            this.storefrontContext = storefrontContext;
            this.visitorContext    = visitorContext;
        }
Exemple #3
0
        private async Task <OrderCreatedInfo> CreateOrderFromCartAsync(ICartBuilder cartBuilder, BankCardInfo bankCardInfo, bool removeCart)
        {
            var orderDto = await _orderApi.CreateOrderFromCartAsync(cartBuilder.Cart.Id);

            var order = orderDto.ToCustomerOrder(WorkContext.AllCurrencies, WorkContext.CurrentLanguage);

            var taskList = new List <Task>
            {
                //Raise domain event asynchronously
                _publisher.Publish(new OrderPlacedEvent(WorkContext, orderDto.ToCustomerOrder(WorkContext.AllCurrencies, WorkContext.CurrentLanguage), cartBuilder.Cart)),
                //Remove the cart asynchronously
                removeCart ? cartBuilder.RemoveCartAsync() : Task.CompletedTask
            };
            //Process order asynchronously
            var incomingPaymentDto = orderDto.InPayments?.FirstOrDefault();
            Task <orderModel.ProcessPaymentRequestResult> processPaymentTask = null;

            if (incomingPaymentDto != null)
            {
                processPaymentTask = _orderApi.ProcessOrderPaymentsAsync(orderDto.Id, incomingPaymentDto.Id, bankCardInfo?.ToBankCardInfoDto());
                taskList.Add(processPaymentTask);
            }
            await Task.WhenAll(taskList.ToArray());

            return(new OrderCreatedInfo
            {
                Order = order,
                OrderProcessingResult = processPaymentTask != null ? (await processPaymentTask).ToProcessPaymentResult(order) : null,
                PaymentMethod = incomingPaymentDto?.PaymentMethod.ToPaymentMethod(order),
            });
        }
 public ShopifyCompatibilityController(WorkContext workContext, IStorefrontUrlBuilder urlBuilder, ICartBuilder cartBuilder, ICatalogSearchService catalogService)
     : base(workContext, urlBuilder)
 {
     _workContext    = workContext;
     _cartBuilder    = cartBuilder;
     _catalogService = catalogService;
 }
Exemple #5
0
 public ApiListsController(IWorkContextAccessor workContextAccessor, ICatalogService catalogService, ICartService cartService, ICartBuilder cartBuilder, IStorefrontUrlBuilder urlBuilder)
     : base(workContextAccessor, urlBuilder)
 {
     _cartBuilder    = cartBuilder;
     _catalogService = catalogService;
     _cartService    = cartService;
 }
 public ApiQuoteRequestController(WorkContext workContext, IStorefrontUrlBuilder urlBuilder, ICartBuilder cartBuilder, IQuoteRequestBuilder quoteRequestBuilder, ICatalogSearchService catalogSearchService)
     : base(workContext, urlBuilder)
 {
     _quoteRequestBuilder  = quoteRequestBuilder;
     _cartBuilder          = cartBuilder;
     _catalogSearchService = catalogSearchService;
 }
        public CartServiceTests()
        {
            this.cartBuilder      = Substitute.For <ICartBuilder <Connect.Cart> >();
            this.cartManager      = Substitute.For <ICartManager>();
            this.inventoryManager = Substitute.For <IInventoryManager>();
            var catalogContext = Substitute.For <ICatalogContext>();

            this.catalogService = Substitute.For <ICatalogService>();
            var storefrontContext = Substitute.For <IStorefrontContext>();

            this.visitorContext = Substitute.For <IVisitorContext>();

            this.cartService = new CartService(
                this.cartBuilder,
                this.cartManager,
                this.inventoryManager,
                catalogContext,
                catalogService,
                storefrontContext,
                this.visitorContext);

            this.fixture = new Fixture().Customize(new OmitOnRecursionCustomization());

            this.cartResult      = this.fixture.Create <CartResult>();
            this.commerceCart    = this.fixture.Create <CommerceCart>();
            this.cartResult.Cart = this.commerceCart;
            this.cartManager.LoadCart(Arg.Any <string>(), Arg.Any <string>()).Returns(this.cartResult);
        }
 public CartItemManager(ICartBuilder cartBuilder, ISession session, IGetUserGuid getUserGuid, IGetExistingCartItem getExistingCartItem)
 {
     _cartBuilder         = cartBuilder;
     _session             = session;
     _getUserGuid         = getUserGuid;
     _getExistingCartItem = getExistingCartItem;
 }
 public ShopifyCompatibilityController(WorkContext workContext, IStorefrontUrlBuilder urlBuilder, ICartBuilder cartBuilder, ICatalogSearchService catalogService)
     : base(workContext, urlBuilder)
 {
     _workContext = workContext;
     _urlBuilder = urlBuilder;
     _cartBuilder = cartBuilder;
     _catalogService = catalogService;
 }
        public OrderBuilder(ICartBuilder <Cart> cartBuilder, IOrderMapper orderMapper)
        {
            Assert.ArgumentNotNull(orderMapper, nameof(orderMapper));
            Assert.ArgumentNotNull(cartBuilder, nameof(cartBuilder));

            this.orderMapper = orderMapper;
            this.cartBuilder = cartBuilder;
        }
Exemple #11
0
 public ApiQuoteRequestController(IWorkContextAccessor workContextAccessor, IStorefrontUrlBuilder urlBuilder, ICartBuilder cartBuilder, IQuoteRequestBuilder quoteRequestBuilder, ICatalogService catalogService, IQuoteService quoteService)
     : base(workContextAccessor, urlBuilder)
 {
     _quoteRequestBuilder = quoteRequestBuilder;
     _cartBuilder         = cartBuilder;
     _catalogService      = catalogService;
     _quoteService        = quoteService;
 }
Exemple #12
0
 public GetPaypalShippingOptions(IPaypalExpressCartLoader paypalExpressCartLoader, ICartManager cartManager,
                                 ICartBuilder cartBuilder, IShippingMethodUIService shippingMethodUiService)
 {
     _paypalExpressCartLoader = paypalExpressCartLoader;
     _cartManager             = cartManager;
     _cartBuilder             = cartBuilder;
     _shippingMethodUIService = shippingMethodUiService;
 }
 public GetPaypalShippingOptions(IPaypalExpressCartLoader paypalExpressCartLoader, ICartManager cartManager,
     ICartBuilder cartBuilder, IShippingMethodUIService shippingMethodUiService)
 {
     _paypalExpressCartLoader = paypalExpressCartLoader;
     _cartManager = cartManager;
     _cartBuilder = cartBuilder;
     _shippingMethodUIService = shippingMethodUiService;
 }
Exemple #14
0
 public CartItemManagerTests()
 {
     _cartModel = new CartModel();
     Session.Transact(session => session.SaveOrUpdate(_productVariant));
     _getUserGuid = A.Fake <IGetUserGuid>();
     _cartBuilder = A.Fake <ICartBuilder>();
     A.CallTo(() => _cartBuilder.BuildCart()).Returns(_cartModel);
     _cartItemManager = new CartItemManager(_cartBuilder, Session, _getUserGuid);
 }
 public CartItemManagerTests()
 {
     _cartModel = new CartModel();
     Session.Transact(session => session.SaveOrUpdate(_productVariant));
     _getUserGuid = A.Fake<IGetUserGuid>();
     _cartBuilder = A.Fake<ICartBuilder>();
     A.CallTo(() => _cartBuilder.BuildCart()).Returns(_cartModel);
     _cartItemManager = new CartItemManager(_cartBuilder, Session, _getUserGuid);
 }
        public OrderBuilderTests()
        {
            this.fixture = new Fixture().Customize(new OmitOnRecursionCustomization());

            this.cartBuilder = Substitute.For <ICartBuilder <Cart> >();
            this.orderMapper = Substitute.For <IOrderMapper>();

            this.orderBuilder = new OrderBuilder(this.cartBuilder, this.orderMapper);
        }
 public ApiQuoteRequestController(WorkContext workContext, IStorefrontUrlBuilder urlBuilder, ICartBuilder cartBuilder,
     IQuoteModuleApi quoteApi, IQuoteRequestBuilder quoteRequestBuilder, ICatalogSearchService catalogSearchService)
     : base(workContext, urlBuilder)
 {
     _quoteApi = quoteApi;
     _quoteRequestBuilder = quoteRequestBuilder;
     _cartBuilder = cartBuilder;
     _catalogSearchService = catalogSearchService;
 }
Exemple #18
0
        public OrderBuilderTests()
        {
            this.fixture = this.CreateOmitOnRecursionFixture();

            this.cartBuilder = Substitute.For <ICartBuilder <Cart> >();
            this.orderMapper = Substitute.For <IOrderMapper>();

            this.orderBuilder = new OrderBuilder(this.cartBuilder, this.orderMapper);
        }
Exemple #19
0
 public EmptyBasketTests()
 {
     _cartModel = new CartModel();
     Session.Transact(session => session.SaveOrUpdate(_productVariant));
     _cartBuilder = A.Fake<ICartBuilder>();
     A.CallTo(() => _cartBuilder.BuildCart()).Returns(_cartModel);
     _clearCartSessionKeys = A.Fake<IClearCartSessionKeys>();
     _emptyBasket = new EmptyBasket(_cartBuilder, Session, _clearCartSessionKeys);
 }
Exemple #20
0
 public EmptyBasketTests()
 {
     _cartModel = new CartModel();
     Session.Transact(session => session.SaveOrUpdate(_productVariant));
     _cartBuilder = A.Fake <ICartBuilder>();
     A.CallTo(() => _cartBuilder.BuildCart()).Returns(_cartModel);
     _clearCartSessionKeys = A.Fake <IClearCartSessionKeys>();
     _emptyBasket          = new EmptyBasket(_cartBuilder, Session, _clearCartSessionKeys);
 }
 public QuoteRequestController(WorkContext workContext, IStorefrontUrlBuilder urlBuilder, IQuoteRequestBuilder quoteRequestBuilder,
                               ICatalogSearchService catalogSearchService, IQuoteModuleApi quoteApi, ICartBuilder cartBuilder)
     : base(workContext, urlBuilder)
 {
     _quoteApi             = quoteApi;
     _quoteRequestBuilder  = quoteRequestBuilder;
     _catalogSearchService = catalogSearchService;
     _cartBuilder          = cartBuilder;
 }
 public BulkOrderController(
     WorkContext workContext,
     IStorefrontUrlBuilder urlBuilder,
     ICartBuilder cartBuilder,
     ICatalogSearchService catalogSearchService)
     : base(workContext, urlBuilder)
 {
     _cartBuilder          = cartBuilder;
     _catalogSearchService = catalogSearchService;
 }
 public ApiCartController(WorkContext workContext, ICatalogSearchService catalogSearchService, ICartBuilder cartBuilder,
                          IOrdersModuleApiClient orderApi, IStorefrontUrlBuilder urlBuilder,
                          IEventPublisher <OrderPlacedEvent> orderPlacedEventPublisher, ISubscriptionModuleApiClient subscriptionApi)
     : base(workContext, urlBuilder)
 {
     _cartBuilder               = cartBuilder;
     _orderApi                  = orderApi;
     _catalogSearchService      = catalogSearchService;
     _orderPlacedEventPublisher = orderPlacedEventPublisher;
     _subscriptionApi           = subscriptionApi;
 }
 public ApiCartController(WorkContext workContext, ICatalogSearchService catalogSearchService, ICartBuilder cartBuilder,
                          IOrderModuleApi orderApi, ICartValidator cartValidator, IStorefrontUrlBuilder urlBuilder,
                          IEventPublisher<OrderPlacedEvent> orderPlacedEventPublisher)
     : base(workContext, urlBuilder)
 {
     _cartBuilder = cartBuilder;
     _orderApi = orderApi;
     _cartValidator = cartValidator;
     _catalogSearchService = catalogSearchService;
     _orderPlacedEventPublisher = orderPlacedEventPublisher;
 }
Exemple #25
0
 public CartController(WorkContext workContext, IOrderModuleApi orderApi, IStorefrontUrlBuilder urlBuilder,
                       ICartBuilder cartBuilder, IMarketingModuleApi marketingApi, ICommerceCoreModuleApi commerceApi,
                       ICartValidator cartValidator)
     : base(workContext, urlBuilder)
 {
     _cartBuilder   = cartBuilder;
     _orderApi      = orderApi;
     _marketingApi  = marketingApi;
     _commerceApi   = commerceApi;
     _cartValidator = cartValidator;
 }
Exemple #26
0
 public ApiCartController(WorkContext workContext, ICatalogSearchService catalogSearchService, ICartBuilder cartBuilder,
                          IVirtoCommerceOrdersApi orderApi, ICartValidator cartValidator, IStorefrontUrlBuilder urlBuilder,
                          IEventPublisher <OrderPlacedEvent> orderPlacedEventPublisher)
     : base(workContext, urlBuilder)
 {
     _cartBuilder               = cartBuilder;
     _orderApi                  = orderApi;
     _cartValidator             = cartValidator;
     _catalogSearchService      = catalogSearchService;
     _orderPlacedEventPublisher = orderPlacedEventPublisher;
 }
 public ApiCartController(IWorkContextAccessor workContextAccessor, ICatalogService catalogService, ICartBuilder cartBuilder,
                          IOrderModule orderApi, IStorefrontUrlBuilder urlBuilder,
                          IEventPublisher publisher, ISubscriptionService subscriptionService)
     : base(workContextAccessor, urlBuilder)
 {
     _cartBuilder         = cartBuilder;
     _orderApi            = orderApi;
     _catalogService      = catalogService;
     _publisher           = publisher;
     _subscriptionService = subscriptionService;
 }
Exemple #28
0
 public AccountController(WorkContext workContext, IStorefrontUrlBuilder urlBuilder, ICommerceCoreModuleApi commerceCoreApi,
                          ICustomerManagementModuleApi customerApi, IAuthenticationManager authenticationManager, IVirtoCommercePlatformApi platformApi,
                          IOrderModuleApi orderApi, ICartBuilder cartBuilder)
     : base(workContext, urlBuilder)
 {
     _commerceCoreApi       = commerceCoreApi;
     _customerApi           = customerApi;
     _authenticationManager = authenticationManager;
     _platformApi           = platformApi;
     _orderApi    = orderApi;
     _cartBuilder = cartBuilder;
 }
 public WorkContextOwinMiddleware(OwinMiddleware next, UnityContainer container)
     : base(next)
 {
     _storeApi = container.Resolve<IStoreModuleApi>();
     _platformApi = container.Resolve<IVirtoCommercePlatformApi>();
     _customerApi = container.Resolve<ICustomerManagementModuleApi>();
     _cartBuilder = container.Resolve<ICartBuilder>();
     _cmsApi = container.Resolve<ICMSContentModuleApi>();
     _pricingModuleApi = container.Resolve<IPricingModuleApi>();
     _cacheManager = container.Resolve<ICacheManager<object>>();
     _container = container;
 }
 public WorldPayPaymentService(WorldPaySettings worldPaySettings, CartModel cart,
     EcommerceSettings ecommerceSettings, ICartBuilder cartBuilder,
     ISession session, IOrderPlacementService orderPlacementService, Site site)
 {
     _worldPaySettings = worldPaySettings;
     _cart = cart;
     _ecommerceSettings = ecommerceSettings;
     _cartBuilder = cartBuilder;
     _session = session;
     _orderPlacementService = orderPlacementService;
     _site = site;
 }
 public WorkContextOwinMiddleware(OwinMiddleware next, UnityContainer container)
     : base(next)
 {
     _storeApi         = container.Resolve <IStoreModuleApi>();
     _platformApi      = container.Resolve <IVirtoCommercePlatformApi>();
     _customerApi      = container.Resolve <ICustomerManagementModuleApi>();
     _cartBuilder      = container.Resolve <ICartBuilder>();
     _cmsApi           = container.Resolve <ICMSContentModuleApi>();
     _pricingModuleApi = container.Resolve <IPricingModuleApi>();
     _cacheManager     = container.Resolve <ICacheManager <object> >();
     _container        = container;
 }
Exemple #32
0
 public ApiCartController(WorkContext workContext, ICatalogSearchService catalogSearchService, ICartBuilder cartBuilder,
                          IShoppingCartModuleApi cartApi, IOrderModuleApi orderApi, ICartValidator cartValidator, IStorefrontUrlBuilder urlBuilder,
                          IEventPublisher <OrderPlacedEvent> orderPlacedEventPublisher)
     : base(workContext, urlBuilder)
 {
     _cartBuilder               = cartBuilder;
     _cartApi                   = cartApi;
     _orderApi                  = orderApi;
     _cartValidator             = cartValidator;
     _catalogSearchService      = catalogSearchService;
     _orderPlacedEventPublisher = orderPlacedEventPublisher;
 }
Exemple #33
0
 public WorldPayPaymentService(WorldPaySettings worldPaySettings, CartModel cart,
                               EcommerceSettings ecommerceSettings, ICartBuilder cartBuilder,
                               ISession session, IOrderPlacementService orderPlacementService, Site site)
 {
     _worldPaySettings      = worldPaySettings;
     _cart                  = cart;
     _ecommerceSettings     = ecommerceSettings;
     _cartBuilder           = cartBuilder;
     _session               = session;
     _orderPlacementService = orderPlacementService;
     _site                  = site;
 }
 public AccountController(WorkContext workContext, IStorefrontUrlBuilder urlBuilder, ICommerceCoreModuleApi commerceCoreApi,
     ICustomerManagementModuleApi customerApi, IAuthenticationManager authenticationManager, IVirtoCommercePlatformApi platformApi,
     IOrderModuleApi orderApi, ICartBuilder cartBuilder)
     : base(workContext, urlBuilder)
 {
     _commerceCoreApi = commerceCoreApi;
     _customerApi = customerApi;
     _authenticationManager = authenticationManager;
     _platformApi = platformApi;
     _orderApi = orderApi;
     _cartBuilder = cartBuilder;
 }
Exemple #35
0
 public CartController(WorkContext workContext, IShoppingCartModuleApi cartApi, IOrderModuleApi orderApi, IStorefrontUrlBuilder urlBuilder,
                       ICartBuilder cartBuilder, ICatalogSearchService catalogService, IMarketingModuleApi marketingApi, ICommerceCoreModuleApi commerceApi,
                       ICustomerManagementModuleApi customerApi)
     : base(workContext, urlBuilder)
 {
     _cartBuilder    = cartBuilder;
     _catalogService = catalogService;
     _cartApi        = cartApi;
     _orderApi       = orderApi;
     _marketingApi   = marketingApi;
     _commerceApi    = commerceApi;
     _customerApi    = customerApi;
 }
 public CharityClearPaymentService(CartModel cart,
     EcommerceSettings ecommerceSettings, ICartBuilder cartBuilder,
     ISession session, IOrderPlacementService orderPlacementService, Site site, CharityClearSettings charityClearSettings, ILogAdminService logService)
 {
     _cart = cart;
     _ecommerceSettings = ecommerceSettings;
     _cartBuilder = cartBuilder;
     _session = session;
     _orderPlacementService = orderPlacementService;
     _site = site;
     _charityClearSettings = charityClearSettings;
     _logService = logService;
 }
 public CartController(WorkContext workContext, IShoppingCartModuleApi cartApi, IOrderModuleApi orderApi, IStorefrontUrlBuilder urlBuilder,
                       ICartBuilder cartBuilder, ICatalogSearchService catalogService, IMarketingModuleApi marketingApi, ICommerceCoreModuleApi commerceApi,
                       ICustomerManagementModuleApi customerApi)
     : base(workContext, urlBuilder)
 {
     _cartBuilder = cartBuilder;
     _catalogService = catalogService;
     _cartApi = cartApi;
     _orderApi = orderApi;
     _marketingApi = marketingApi;
     _commerceApi = commerceApi;
     _customerApi = customerApi;
 }
Exemple #38
0
 public CharityClearPaymentService(CartModel cart,
                                   EcommerceSettings ecommerceSettings, ICartBuilder cartBuilder,
                                   ISession session, IOrderPlacementService orderPlacementService, Site site, CharityClearSettings charityClearSettings, ILogAdminService logService)
 {
     _cart = cart;
     _ecommerceSettings     = ecommerceSettings;
     _cartBuilder           = cartBuilder;
     _session               = session;
     _orderPlacementService = orderPlacementService;
     _site = site;
     _charityClearSettings = charityClearSettings;
     _logService           = logService;
 }
Exemple #39
0
 public CartController(WorkContext workContext, IOrderModuleApi orderApi, IStorefrontUrlBuilder urlBuilder,
                       ICartBuilder cartBuilder, ICatalogSearchService catalogService, IMarketingModuleApi marketingApi, ICommerceCoreModuleApi commerceApi,
                       ICustomerManagementModuleApi customerApi, ICartValidator cartValidator, IEventPublisher <OrderPlacedEvent> orderPlacedEventPublisher)
     : base(workContext, urlBuilder)
 {
     _cartBuilder               = cartBuilder;
     _catalogService            = catalogService;
     _orderApi                  = orderApi;
     _marketingApi              = marketingApi;
     _commerceApi               = commerceApi;
     _customerApi               = customerApi;
     _cartValidator             = cartValidator;
     _orderPlacedEventPublisher = orderPlacedEventPublisher;
 }
 public CartController(WorkContext workContext, IOrderModuleApi orderApi, IStorefrontUrlBuilder urlBuilder,
                       ICartBuilder cartBuilder, ICatalogSearchService catalogService, IMarketingModuleApi marketingApi, ICommerceCoreModuleApi commerceApi,
                       ICustomerManagementModuleApi customerApi, ICartValidator cartValidator, IEventPublisher<OrderPlacedEvent> orderPlacedEventPublisher)
     : base(workContext, urlBuilder)
 {
     _cartBuilder = cartBuilder;
     _catalogService = catalogService;
     _orderApi = orderApi;
     _marketingApi = marketingApi;
     _commerceApi = commerceApi;
     _customerApi = customerApi;
     _cartValidator = cartValidator;
     _orderPlacedEventPublisher = orderPlacedEventPublisher;
 }
        public void CheckoutQuoteRequest()
        {
            WorkContext          workContext         = GetTestWorkContext();
            IQuoteRequestBuilder quoteRequestBuilder = GetQuoteRequestBuilder();
            var customer = new CustomerInfo
            {
                Id = Guid.NewGuid().ToString(),
                IsRegisteredUser = false
            };

            workContext.CurrentCustomer = customer;

            QuoteRequest quoteRequest = quoteRequestBuilder.GetOrCreateNewTransientQuoteRequestAsync(workContext.CurrentStore, customer, workContext.CurrentLanguage, workContext.CurrentCurrency).Result.QuoteRequest;

            ICatalogSearchService catalogSearchService = GetCatalogSearchService();

            Product[] searchResult = catalogSearchService.GetProductsAsync(new[] { "217be9f3d9064075821f6785dca658b9" }, ItemResponseGroup.ItemLarge).Result;
            quoteRequestBuilder.AddItem(searchResult.First(), 1);
            quoteRequestBuilder.SaveAsync().Wait();

            var quoteItem = quoteRequestBuilder.QuoteRequest.Items.First();

            quoteItem.ProposalPrices.Add(new TierPrice(quoteItem.SalePrice * 0.7, 5));
            quoteItem.ProposalPrices.Add(new TierPrice(quoteItem.SalePrice * 0.5, 10));
            quoteRequestBuilder.SaveAsync().Wait();
            quoteRequest = quoteRequestBuilder.GetOrCreateNewTransientQuoteRequestAsync(workContext.CurrentStore, customer, workContext.CurrentLanguage, workContext.CurrentCurrency).Result.QuoteRequest;

            Assert.NotNull(quoteRequest.Items);
            Assert.Equal(quoteRequest.Items.Count, 1);

            var requestItem = quoteRequest.Items.First();

            foreach (var proposalPrice in requestItem.ProposalPrices)
            {
                requestItem.SelectedTierPrice = proposalPrice;

                ICartBuilder cartBuilder = GetCartBuilder();
                cartBuilder.LoadOrCreateNewTransientCartAsync("default", workContext.CurrentStore, customer, workContext.CurrentLanguage, workContext.CurrentCurrency).Wait();
                cartBuilder.FillFromQuoteRequestAsync(quoteRequest).Wait();
                cartBuilder.SaveAsync().Wait();

                cartBuilder.LoadOrCreateNewTransientCartAsync("default", workContext.CurrentStore, customer, workContext.CurrentLanguage, workContext.CurrentCurrency).Wait();
                var cart = cartBuilder.Cart;
                var item = cart.Items.First();

                Assert.Equal(requestItem.SelectedTierPrice.ActualPrice, item.SalePrice);
                Assert.Equal(requestItem.SelectedTierPrice.Quantity, item.Quantity);
            }
        }
 public AccountController(WorkContext workContext, IStorefrontUrlBuilder urlBuilder, ICommerceCoreModuleApi commerceCoreApi,
                          IAuthenticationManager authenticationManager, IVirtoCommercePlatformApi platformApi,
                          ICartBuilder cartBuilder, ICustomerService customerService, IOrderModuleApi orderApi, IEventPublisher <UserLoginEvent> userLoginEventPublisher,
                          ICacheManager <object> cacheManager)
     : base(workContext, urlBuilder)
 {
     _commerceCoreApi       = commerceCoreApi;
     _customerService       = customerService;
     _authenticationManager = authenticationManager;
     _platformApi           = platformApi;
     _cartBuilder           = cartBuilder;
     _cacheManager          = cacheManager;
     _orderApi = orderApi;
     _userLoginEventPublisher = userLoginEventPublisher;
 }
Exemple #43
0
 public CopyCartToUser(ISession session, ICartBuilder cartBuilder)
 {
     _session = session;
     _cartBuilder = cartBuilder;
 }
Exemple #44
0
 public SagePayCartLoader(ISession session, ICartBuilder cartBuilder)
 {
     _session = session;
     _cartBuilder = cartBuilder;
 }
 public PaypalExpressCartLoader(ISession session, ICartBuilder cartBuilder)
 {
     _session = session;
     _cartBuilder = cartBuilder;
 }
Exemple #46
0
 public CartItemManager(ICartBuilder cartBuilder, ISession session, IGetUserGuid getUserGuid)
 {
     _cartBuilder = cartBuilder;
     _session = session;
     _getUserGuid = getUserGuid;
 }
Exemple #47
0
 public EmptyBasket(ICartBuilder cartBuilder, ISession session, IClearCartSessionKeys clearCartSessionKeys)
 {
     _cartBuilder = cartBuilder;
     _session = session;
     _clearCartSessionKeys = clearCartSessionKeys;
 }
Exemple #48
0
 public CartManager(ICartBuilder cartBuilder, ICartSessionManager cartSessionManager, IGetUserGuid getUserGuid)
 {
     _cartBuilder = cartBuilder;
     _cartSessionManager = cartSessionManager;
     _getUserGuid = getUserGuid;
 }