Esempio n. 1
0
        public IActionResult GetUserCart(int uid)
        {
            // 1. Get cart id fron uid
            var cartId = _cartRepository.GetUsersCartId(uid);
            // 2. Use cart id to get line items
            var lineItems     = _lineItemRepository.GetLineItemsByCartId(cartId);
            var shows         = new List <ShowLineItem>();
            var subscriptions = new List <SubscriptionLineItem>();

            // 3. use LineItemTypeId and ProductIds to get Show and Subscription LineItems
            foreach (LineItem item in lineItems) // Loop through List with foreach
            {
                if (item.LineItemType == "Show")
                {
                    //Push Quantity and and LineItemId to LineItem Class
                    ShowLineItem show = _lineItemRepository.GetShowLineItem(item.ProductId);
                    shows.Add(show);
                }
                else if (item.LineItemType == "Subscription")
                {
                    SubscriptionLineItem subscription = _lineItemRepository.GetSubscriptionLineItem(item.ProductId);
                    subscriptions.Add(subscription);
                }
            }
            //4. Put it all in the Cart class
            var cart = Cart.BuildCart(uid, cartId, shows, subscriptions);

            return(Ok(cart));
        }
Esempio n. 2
0
        public IActionResult GetShowLineItemsByCartId(int id)
        {
            var lineItems = _lineItemRepository.GetLineItemsByCartId(id);
            var shows     = new List <ShowLineItem>();

            foreach (LineItem item in lineItems)
            {
                if (item.LineItemType == "Show")
                {
                    ShowLineItem show = _lineItemRepository.GetShowLineItem(item.ProductId);
                    shows.Add(show);
                }
            }
            return(Ok(shows));
        }