Ejemplo n.º 1
0
        //Kullanıcının daha önce like ve ya dislike tutup tutmadığı kontrol edilir.+++
        public string LikePostExists(LikePostCreateDto likePost)
        {
            //sonuc==0 ise yeni gelen datayı ekle
            //sonuc==1 ise güncelleme yap.(eski datayı sil yenisini ekle)
            //sonuc==2 ise hiçbirşey yapma
            var sonuc = "";
            //postId ve userId göndererek daha önce işlem yapılıp yaplmadığını döndüm.
            var isThere = _likePostDal.GetList(w => w.PostId == likePost.PostId && w.UserId == likePost.UserId).Count();

            //kayıt yoksa yeni gelen değeri ekle
            if (isThere == 0)
            {
                sonuc = "0";
                return(sonuc);
            }
            //postId userId ve likestatu durular gönderilir.
            var likestatu = _likePostDal.GetList(w => w.PostId == likePost.PostId && w.UserId == likePost.UserId && w.LikeStatus == likePost.LikeStatus).Count();

            //eğer gelen data db yoksa güncelleme yap
            if (likestatu == 0)
            {
                sonuc = "1";
                return(sonuc);
            }
            //eğer ikisine de girmezse hiç birişlem yapma diyeceğiz
            sonuc = "2";
            return(sonuc);
        }
Ejemplo n.º 2
0
 //+++
 public IResult Delete(LikePostCreateDto likePost)
 {
     //userId ve postId değerlerine göre girilen kayıt silinir.
     //var entity= _likePostDal.Get(w => w.PostId == likePost.PostId && w.UserId == likePost.UserId && w.LikeStatus == likePost.LikeStatus);
     _likePostDal.DeleteById(w => w.PostId == likePost.PostId && w.UserId == likePost.UserId);
     return(new SuccessResult());
 }
Ejemplo n.º 3
0
        //+++
        public IResult Add(LikePostCreateDto likePost)
        {
            var lpost = new LikePost {
                PostId     = likePost.PostId,
                UserId     = likePost.UserId,
                LikeStatus = likePost.LikeStatus
            };

            _likePostDal.Add(lpost);
            return(new SuccessResult(Messages.LikePostAdded));
        }
Ejemplo n.º 4
0
        [HttpPost("add")]//++++
        public IActionResult Add(LikePostCreateDto likePostCreateDto)
        {
            var gonder = _likePostService.LikePostExists(likePostCreateDto);

            /*var updateNumber2 = _likePostService.GetNumberStatus(likePostCreateDto.PostId);
             * if (gonder=="2")return Ok(updateNumber2.Data);*/

            if (gonder == "2")
            {
                var delete = _likePostService.Delete(likePostCreateDto);
                if (delete.Success)
                {
                    var updateNumber = _likePostService.GetNumberStatus(likePostCreateDto.PostId);
                    if (likePostCreateDto.LikeStatus == true)
                    {
                        updateNumber.Data.Message = "Beğeni kaldırıldı.";
                    }
                    else
                    {
                        updateNumber.Data.Message = "Beğenmeme geri kaldırıldı.";
                    }
                    return(Ok(updateNumber.Data));
                }
            }

            //Hiç kayıt yok yeni kayıt ekle
            if (gonder == "0")
            {
                var result       = _likePostService.Add(likePostCreateDto);
                var updateNumber = _likePostService.GetNumberStatus(likePostCreateDto.PostId);
                if (result.Success)
                {
                    if (likePostCreateDto.LikeStatus == true)
                    {
                        updateNumber.Data.Message = "Bu postu beğendiniz";
                    }
                    else
                    {
                        updateNumber.Data.Message = "Bu postu beğenmediniz";
                    }
                    return(Ok(updateNumber.Data));
                }
            }

            //kayıt var ama güncelleme işlemi yapılacak.
            if (gonder == "1")
            {
                var delete = _likePostService.Delete(likePostCreateDto);
                if (delete.Success)
                {
                    var result       = _likePostService.Add(likePostCreateDto);
                    var updateNumber = _likePostService.GetNumberStatus(likePostCreateDto.PostId);

                    if (likePostCreateDto.LikeStatus == true)
                    {
                        updateNumber.Data.Message = "Bu postu beğendiniz";
                    }
                    else
                    {
                        updateNumber.Data.Message = "Bu postu beğenmediniz.";
                    }

                    if (result.Success)
                    {
                        return(Ok(updateNumber.Data));
                    }
                }
            }

            /*
             * var result= _likePostService.Add(likePostCreateDto);
             * var updateNumber = _likePostService.GetNumberStatus(likePostCreateDto.PostId);
             * if(result.Success)
             * {
             *  return Ok(updateNumber.Data);
             * }
             * return BadRequest(result.Message);
             */
            return(BadRequest());
        }