private CartCollection GetBaskedSetFromCookie(string cookieName) { var basketSet = new CartCollection(); var itemsJson = _httpContextAccessor.HttpContext.Request.Cookies[cookieName]; if (!string.IsNullOrEmpty(itemsJson)) { var itemsInCart = JsonConvert.DeserializeObject <List <string> >(itemsJson); foreach (var item in itemsInCart) { if (int.TryParse(item, out var eventId)) { var temp = _eventRepository.FindById(eventId); if (temp != null) { basketSet.AddToBasket(temp); } } } } foreach (var cartPosition in basketSet.BasketPositions) { cartPosition.CurrentlyAvailableTickets = cartPosition.Event.NumberOfAvailableTickets - _orderEventRepository.CountSoldTickets(cartPosition.Event.Id); } return(basketSet); }
public int CountSoldTickets(int eventId) { return(_orderEventRepository.CountSoldTickets(eventId)); }