public async Task <ResultDTO> setFavorite([FromBody] NewsDTO model, string id)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(new ResultDTO
                    {
                        Status = 400,
                        Message = "model is not valit"
                    });
                }
                var userEmail = _eFContext.Users.FirstOrDefault(x => x.Id == id).UserName;

                var currentNews     = _newsService.GetAllNews().FirstOrDefault(x => x.DatePost == model.DatePost);
                var allfavorite     = _newsService.GetAllFavorite().ToList();
                var currentFavorite = allfavorite.FirstOrDefault(x => x.NewsId == currentNews.Id);
                if (currentFavorite == null)
                {
                    var isFavorite = new UserIsFavorite
                    {
                        Id         = Guid.NewGuid().ToString(),
                        News       = currentNews,
                        NewsId     = currentNews.Id,
                        UserEmail  = userEmail,
                        IsFavorite = true
                    };
                    _newsService.addFavorite(isFavorite);
                }
                else
                {
                    currentFavorite.IsFavorite = !currentFavorite.IsFavorite;
                    _newsService.setFavorite(currentFavorite);
                }

                return(new ResultDTO
                {
                    Status = 200,
                    Message = "Ok"
                });
            }
            catch (Exception e)
            {
                return(new ResultDTO
                {
                    Status = 500,
                    Message = e.Message
                });
            }
        }
示例#2
0
 public void deleteFavorite(UserIsFavorite model)
 {
     _repoFavorite.Delete(model);
 }
示例#3
0
 public void setFavorite(UserIsFavorite model)
 {
     _repoFavorite.setFavorite(model);
 }
示例#4
0
 public void addFavorite(UserIsFavorite model)
 {
     _repoFavorite.Create(model);
 }