Ejemplo n.º 1
0
        public bool AddToShoppingCart(AddToShoppingCartDto item, string userID)
        {
            var user = this._userRepository.Get(userID);

            var userShoppingCard = user.UserCart;

            if (item.TicketId != null && userShoppingCard != null)
            {
                var ticket = this.GetDetailsForTicket(item.TicketId);

                if (ticket != null)
                {
                    TicketInShoppingCart itemToAdd = new TicketInShoppingCart
                    {
                        Id             = Guid.NewGuid(),
                        Ticket         = ticket,
                        TicketId       = ticket.Id,
                        ShoppingCart   = userShoppingCard,
                        ShoppingCartId = userShoppingCard.Id,
                        Quantity       = item.Quantity
                    };

                    this._ticketInShoppingCartRepository.Insert(itemToAdd);
                    _logger.LogInformation("Ticket was successfully added into ShoppingCart");
                    return(true);
                }
                return(false);
            }
            _logger.LogInformation("Something was wrong. TicketId or UserShoppingCard may be unavailable!");
            return(false);
        }
Ejemplo n.º 2
0
        public AddToShoppingCartDto GetShoppingCartInfo(Guid?id)
        {
            var ticket = this.GetDetailsForTicket(id);
            AddToShoppingCartDto model = new AddToShoppingCartDto
            {
                SelectedTicket = ticket,
                TicketId       = ticket.Id,
                Quantity       = 1
            };

            return(model);
        }
Ejemplo n.º 3
0
        public IActionResult AddTicketToCart([Bind("TicketId", "Quantity")] AddToShoppingCartDto item)
        {
            var userId = User.FindFirstValue(ClaimTypes.NameIdentifier);

            var result = this._ticketService.AddToShoppingCart(item, userId);

            if (result)
            {
                return(RedirectToAction("Index", "Tickets"));
            }

            return(View(item));
        }