Ejemplo n.º 1
0
        //[ResponseType(typeof(PromotionItem))]
        public async Task <IHttpActionResult> GetLike(long id)
        {
            try
            {
                PromotionItem item = _ctx.PromotionItems.Find(id);
                if (item == null)
                {
                    throw new BusinessLogicException("не удается найти акцию");
                }

                if (item.GetUserLike(UserId)?.Value == LikeType.Like)
                {
                    return(Ok(new { item.LikeCount, item.DislikeCount }));
                }
                ;


                if (item.GetUserLike(UserId)?.Value == LikeType.Dislike)
                {
                    Like like = item.GetUserLike(UserId);
                    like.Value = LikeType.Like;

                    item.DislikeCount = item.DislikeCount - 1;
                    item.LikeCount    = item.LikeCount + 1;
                }

                if (item.GetUserLike(UserId) == null)
                {
                    _ctx.Likes.Add(new Like(UserId, item.Id, LikeType.Like));
                    item.LikeCount = item.LikeCount + 1;
                }

                /*
                 * The INSERT statement conflicted with the FOREIGN KEY constraint "FK_dbo.Like_dbo.User_UserId". The conflict occurred in database "tukiflydatabase", table "dbo.User", column 'Id'.
                 * The statement has been terminated.
                 */
                if (_ctx.ChangeTracker.HasChanges())
                {
                    await _ctx.SaveChangesAsync();
                }

                return(Ok(new { item.LikeCount, item.DislikeCount }));;
            }
            catch (Exception ex)
            {
                Log.Error(ex.Message); throw;
            }
        }
Ejemplo n.º 2
0
 public ActionResult UpdatePromotionItem(long Id, long?imgId, string Title, string btnSubmit)
 {
     if (btnSubmit == "Thêm mục khuyến mãi")
     {
         PromotionItem imgPromotionItem = new PromotionItem();
         imgPromotionItem.Title       = Title;
         imgPromotionItem.PromotionID = Id;
         promotionItemBusiness.AddNew(imgPromotionItem);
     }
     else if (btnSubmit == "Cập nhật mục khuyến mãi")
     {
         PromotionItem imgimgPromotionItem = promotionItemBusiness.GetById((long)imgId);
         imgimgPromotionItem.Title = Title;
         promotionItemBusiness.Edit(imgimgPromotionItem);
     }
     Response.Redirect("~/Manage/PromotionList/Edit/" + Id);
     return(View());
 }
Ejemplo n.º 3
0
        //[ResponseType(typeof(PromotionItem))]
        public async Task <IHttpActionResult> GetDislike(long id)
        {
            try
            {
                PromotionItem item = _ctx.PromotionItems.Find(id);
                if (item == null)
                {
                    throw new BusinessLogicException("не удается найти акцию");
                }

                if (item.GetUserLike(UserId)?.Value == LikeType.Dislike)
                {
                    return(Ok(new { item.LikeCount, item.DislikeCount }));
                }


                if (item.GetUserLike(UserId)?.Value == LikeType.Like)
                {
                    Like like = item.GetUserLike(UserId);
                    like.Value = LikeType.Dislike;

                    item.LikeCount    = item.LikeCount - 1;
                    item.DislikeCount = item.DislikeCount + 1;
                }

                if (item.GetUserLike(UserId) == null)
                {
                    _ctx.Likes.Add(new Like(UserId, item.Id, LikeType.Dislike));
                    item.DislikeCount = item.DislikeCount + 1;
                }

                if (_ctx.ChangeTracker.HasChanges())
                {
                    await _ctx.SaveChangesAsync();
                }

                return(Ok(new { item.LikeCount, item.DislikeCount }));
            }
            catch (Exception ex)
            {
                Log.Error(ex.Message); throw;
            }
        }
        public PromotionItemNoChildrenDto(PromotionItem m)
        {
            m.Promotion.PromotionItems = new List <PromotionItem>();

            Id                        = m.Id;
            CategoryId                = m.CategoryId;
            PromotionId               = m.PromotionId;
            Name                      = m.Name;
            BeginPrice                = m.BeginPrice;
            PromotionalPrice          = m.PromotionalPrice;
            Discount                  = m.Discount;
            LikeCount                 = m.LikeCount;
            DislikeCount              = m.DislikeCount;
            FolderWithImagePathSimple = m.FolderWithImagePathSimple;
            FolderWithImagePath       = m.FolderWithImagePath;
            DefaultImage              = m.DefaultImage;
            DefaultImageFullPath      = m.DefaultImageFullPath;
            ImageWidth                = m.ImageWidth;
            ImageHeight               = m.ImageHeight;
            Promotion                 = m.Promotion;
        }