/// <summary> /// Performs get wishlist operation. /// </summary> /// <param name="args">The args.</param> public override void Process([NotNull] ServicePipelineArgs args) { Assert.ArgumentNotNull(args, "args"); // Gets id of castomer to load from NopCommerce instance. var request = (GetWishListRequest)args.Request; var result = (GetWishListResult)args.Result; // Creates instance of WCF service client. using (var client = this.GetClient()) { Guid userGuid; string userId = request.UserId; if (!Guid.TryParse(userId, out userGuid)) { var idGenerator = new Md5IdGenerator(); userGuid = Guid.Parse(idGenerator.StringToID(userId, string.Empty).ToString()); } ShoppingCartModel wishlistModel = client.GetWishlist(userGuid); if (wishlistModel == null) { return; } var wishlist = new WishList { ExternalId = request.WishListId }; wishlist.MapWishlistFromModel(wishlistModel); result.WishList = wishlist; } }
/// <summary> /// Performs load cart operation. /// </summary> /// <param name="args">The args.</param> public override void Process([NotNull] ServicePipelineArgs args) { Assert.ArgumentNotNull(args, "args"); var request = (LoadCartRequest)args.Request; // Gets id of cart to load from NopCommerce instance. var cartId = request.CartId; // Creates instance of WCF service client. using (var client = this.GetClient()) { Guid nopCartId; if (!Guid.TryParse(cartId, out nopCartId)) { var idGenerator = new Md5IdGenerator(); nopCartId = Guid.Parse(idGenerator.StringToID(cartId, string.Empty).ToString()); } // Check that NopCommerce instance contains cart with specified id and if not stops loading operation. var cartModel = client.GetCart(nopCartId, request.Shop.Name); if (cartModel != null) { // Creates OBEC cart with specified id. var cart = new Cart { ExternalId = cartId }; // Maps cart lines from NopCommerce cart model to OBEC cart. cart.MapCartFromModel(cartModel); // Sets loaded cart to result property. ((CartResult)args.Result).Cart = cart; } } }