コード例 #1
0
        public async Task <IActionResult> AddComment([FromBody] CommentBindingModel model)
        {
            if (ModelState.IsValid)
            {
                var userId = HttpContext.User.GetUserId();
                var user   = _context.User.FirstOrDefault(x => x.Id == userId);
                _context.Comment.Add(
                    new Comment()
                {
                    Content = model.Content,
                    UserId  = userId,
                    User    = user,
                    PostId  = model.PostId
                });
                await _context.SaveChangesAsync();

                //var comment = _context.Comment.LastOrDefault();
                //var post = _context.Post.FirstOrDefault(x => x.Id == model.PostId);
                //post.Comments.Add(comment);
                await _context.SaveChangesAsync();

                return(Ok());
            }
            return(HttpBadRequest());
        }
コード例 #2
0
        public async Task <IActionResult> AddPost([FromBody] PostBindingModel model)
        {
            if (ModelState.IsValid)
            {
                var userId  = HttpContext.User.GetUserId();
                var user    = _context.User.FirstOrDefault(x => x.Id == userId);
                var newPost = new Post()
                {
                    Title       = model.Title,
                    Description = model.Description,
                    AddDate     = DateTime.Now,
                    Latitude    = model.Latitude,
                    Longitude   = model.Longitude,
                    _UserId     = userId,
                    user        = user
                };
                _context.Post.Add(newPost);
                _context.SaveChanges();
                var addedPost = _context.Post.Last();
                foreach (var item in model.Tags)
                {
                    var tag = _context.Tag.FirstOrDefault(x => x.Id == item);
                    if (tag == null)
                    {
                        tag = new Tag
                        {
                            Id = item
                        };
                        _context.Tag.Add(tag);
                    }
                    addedPost.PostTags.Add(new PostTags
                    {
                        PostId = addedPost.Id,
                        TagId  = tag.Id
                    });
                }
                await _context.SaveChangesAsync();

                return(Ok());
            }
            return(HttpBadRequest());
        }
コード例 #3
0
        public async Task <IActionResult> AddFriend([FromBody] UserBindingModel model)
        {
            if (ModelState.IsValid)
            {
                var userId = HttpContext.User.GetUserId();
                var user   = _context.User.FirstOrDefault(x => x.Id == userId);
                var friend = _context.User.FirstOrDefault(x => x.Id == model.Id);
                if (user != null && friend != null)
                {
                    _context.UserFriends.Add(new UserFriends()
                    {
                        FriendId = friend.Id,
                        UserId   = user.Id
                    });
                }
                await _context.SaveChangesAsync();

                return(Ok());
            }
            return(HttpBadRequest());
        }
コード例 #4
0
        public async Task <IActionResult> Users([FromBody] UserBindingModel model)
        //public async Task<IActionResult> Users()
        {
            if (ModelState.IsValid)
            {
                var userId = HttpContext.User.GetUserId();
                var user   = _context.User.FirstOrDefault(x => x.Id == userId);
                if (user != null)
                {
                    user.Name        = model.Name;
                    user.Surname     = model.Surname;
                    user.SearchRange = model.SearchRange;
                    user.Avatar      = model.Avatar;
                    //await _userManager.ChangePasswordAsync(User, model.OldPassword, model.NewPassword);
                    await _context.SaveChangesAsync();

                    return(Ok());
                }
            }
            return(HttpBadRequest());
        }