public async Task <PostPicture> AddPostPicture(PostPicture picture) { if (!await _context.Posts.AnyAsync(p => p.Id.Equals(picture.Post.Id))) { throw new PostNotFoundException(Constants.Errors.PostNotFound); } _context.Entry(picture.Post).State = EntityState.Unchanged; _context.PostPictures.Add(picture); await _context.SaveChangesAsync(); return(picture); }
/// <summary> /// Updates a post picture /// </summary> /// <param name="postPicture">Post picture</param> public virtual void UpdatePostPicture(PostPicture postPicture) { if (postPicture == null) { throw new ArgumentNullException("postPicture"); } _postPictureRepository.Update(postPicture); //event notification _eventPublisher.EntityUpdated(postPicture); }
public async Task AddAlbumPictures(string id, string[] modelPictures) { var pictures = new List <PostPicture>(); foreach (var b in modelPictures) { var picture = new PostPicture { Id = Guid.NewGuid().ToString(), userId = id, postId = id, pictureLink = b, }; pictures.Add(picture); } await _pictureRepository.AddPictures(pictures); }
public async Task <IActionResult> AddPostPicture([FromBody] PostPicture model) { return(Ok(await _postPictureService.AddPostPicture(model))); }
public bool Add(PostPicture picture) { _context.Add(picture); return(_context.SaveChanges() > 0); }
public async Task SendPost(string postText, string[] pictureLink, string id, string groupId) { string name = ""; string avatar = ""; string link; if (groupId != null && _context.Groups.FirstOrDefault(x => x.userId == id && x.Id == groupId) != null) { id = groupId; Group group = await _context.Groups.FindAsync(id); name = group.name; avatar = group.avatarLink; link = $"/Group/{group.Id}"; } else { if (_context.Subscribers.FirstOrDefault(x => x.userId == id && x.groupId == groupId && x.isAdmin == true) != null) { id = groupId; Group group = await _context.Groups.FindAsync(id); name = group.name; avatar = group.avatarLink; link = $"/Group/{group.Id}"; } else { UserInfo user = await _context.UserInfo.FindAsync(id); name = $"{user.FirstName} {user.SecondName}"; avatar = user.Avatar; link = $"/Profile/{user.Id}"; } } try { if (postText == "") { throw new Exception(); } Post newPost = new Post { Id = Guid.NewGuid().ToString(), userId = id, postText = postText, createDate = DateTime.Now }; await _context.Posts.AddAsync(newPost); List <Picture> pictures = new List <Picture>(); if (pictureLink.Count() != 0) { foreach (var b in pictureLink) { PostPicture picture = new PostPicture { Id = Guid.NewGuid().ToString(), userId = id, postId = newPost.Id, pictureLink = b, }; pictures.Add(new Picture { Id = picture.Id, pictureLink = picture.pictureLink }); await _context.Pictures.AddAsync(picture); } } await _context.SaveChangesAsync(); Posts post = new Posts { Id = newPost.Id, userId = name, postText = postText, createDate = DateTime.Now, pictureLink = pictures, likes = 0, avatar = avatar, link = link, }; await Clients.All.SendAsync("NewPost", post); } catch { } }