Ejemplo n.º 1
0
        public ActionResult AddToWishList(int productid, int size = 0, string attributes = "")
        {
            var currentUserId = Convert.ToInt32(GlobalUser.getGlobalUser().UserId);
            var productSize   = _productSizeBusiness.GetListWT(c => c.ProductId == productid).FirstOrDefault();
            var defaultSize   = productSize == null ? 0 : productSize.Id;

            if (size == 0)
            {
                size = defaultSize;
            }
            if (currentUserId > 0)
            {
                var count = _WishListBusiness.GetListWT(c => c.UserId == currentUserId && c.ProductId == productid).Count();
                if (count <= 0)
                {
                    WishList wishList = new WishList();
                    wishList.ProductId = productid;
                    wishList.UserId    = currentUserId;
                    _WishListBusiness.Insert(wishList);
                    _unitOfWork.SaveChanges();
                }
            }
            else
            {
                CookieStore mycookie = new CookieStore();
                var         products = mycookie.GetCookie(Enumerator.CustomerAction.WishList.ToString());
                var         value    = string.Empty;
                if (string.IsNullOrEmpty(products))
                {
                    value = productid.ToString() + "~" + size.ToString() + "~" + attributes.ToString();
                }
                else
                {
                    if (!products.Split(',').Select(c => c.Split('~')[0]).Contains(productid.ToString()))
                    {
                        value = products + "," + productid.ToString() + "~" + size.ToString() + "~" + attributes.ToString();
                    }
                }
                var expireCookieTimeHr = Convert.ToInt32(ReadConfigData.GetAppSettingsValue("ExpireCookieTimeHr"));
                mycookie.SetCookie(Enumerator.CustomerAction.WishList.ToString(), value, expireCookieTimeHr);
            }

            return(new EmptyResult());
        }