示例#1
0
        public Wishlists SaveActivities(List <WishlistViewModel> wishlist, Reservations reservation, Wishlists wishlistInSession)
        {
            Wishlists wislistToSave;

            //als de wishlist al een keer is opgehaald uit de db, update deze dan.
            if (wishlistInSession != null)
            {
                wislistToSave = wishlistInSession;
                wislistToSave.WishlistItems = null;
                ctx.SaveChanges();
            }
            else
            {
                wislistToSave = new Wishlists();
            }

            wislistToSave.paid = false;
            foreach (WishlistViewModel activity in wishlist)
            {
                WishlistItems wishitems = new WishlistItems();
                //check of de activity daadwerkelijk in db staat
                Activities activiteit = activity.Activity;
                wishitems.activityId      = activiteit.id;
                wishitems.numberOfPersons = activity.NumberOfPersons;
                wislistToSave.WishlistItems.Add(wishitems);
                //wislist.totalPrice = wislist.totalPrice + activiteit.price;
            }
            if (reservation != null)
            {
                wislistToSave.paid = true;
                wislistToSave.Reservations.Add(reservation);
            }
            wislistToSave.token      = Crypto.HashPassword(Crypto.GenerateSalt() + DateTime.Now.Ticks.ToString());
            wislistToSave.totalPrice = wishlist.Sum(w => w.totalprice);
            if (wishlistInSession == null)
            {
                ctx.Wishlists.Add(wislistToSave);
            }
            ctx.SaveChanges();
            return(wislistToSave);
        }
        public void ToggleWishlistItem(int userId, int bookId)
        {
            string        wishlistId           = GetWishlistId(userId);
            WishlistItems existingWishlistItem = _dbContext.WishlistItems.FirstOrDefault(x => x.ProductId == bookId && x.WishlistId == wishlistId);

            if (existingWishlistItem != null)
            {
                _dbContext.WishlistItems.Remove(existingWishlistItem);
                _dbContext.SaveChanges();
            }
            else
            {
                WishlistItems wishlistItem = new WishlistItems
                {
                    WishlistId = wishlistId,
                    ProductId  = bookId,
                };
                _dbContext.WishlistItems.Add(wishlistItem);
                _dbContext.SaveChanges();
            }
        }