public async Task <GetUserBasketItemsResponse> Get()
 {
     return(await _authorizationLayer.ExecuteAuthorizedAction(User.Identity,
                                                              id => _basketItemsRepository.GetBasketItems(id),
                                                              e => GetUserBasketItemsResponse.CreateFailedResult(e),
                                                              "An error occurred while trying to fetch the users basket items."));
 }
Example #2
0
        /// <summary>
        /// Retrieves all the items from the basket of the given user.
        /// </summary>
        /// <param name="userId">The user ID for whom to retrieve the basket items for.</param>
        /// <returns>
        /// A response containing the items of the users basket as well as a flag for success/failure (in which an error message will also exist).
        /// </returns>
        public async Task <GetUserBasketItemsResponse> GetBasketItems(int userId)
        {
            var basket = GetOrCreateAndGetBasket(userId);

            return(GetUserBasketItemsResponse.CreateSuccessfulResult(basket.Select(i => i.Value).ToList()));
        }
Example #3
0
 /// <summary>
 /// List all the items currently in the user's basket.
 /// </summary>
 /// <returns>
 /// A list of items in the user's basket and a flag to denote if the operation
 /// was successful or not - in which case an error message will be included.
 /// </returns>
 public async Task <GetUserBasketItemsResponse> ListBasketItems()
 {
     return(await GetCall(
                $"{EnvironmentService.ServiceEndpoints[KnownService.BasketService]}",
                e => { return GetUserBasketItemsResponse.CreateFailedResult(e.Message); }));
 }