public async Task <IActionResult> LikeUser(int id, int recipientId) { if (id != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value)) { return(Unauthorized()); } var like = await _likeService.GetLike(id, recipientId); if (like != null) { return(BadRequest("You already like this user")); } if (await _datingService.GetUser(recipientId) == null) { return(NotFound()); } like = new Like { LikerId = id, LikeeId = recipientId }; try { _likeService.Add(like); return(Ok()); } catch { return(BadRequest("Failed to like user")); } }
public async Task <LikeDto> Handle(GetLikeQuery request, CancellationToken cancellationToken) { var like = await _likeService.GetLike(request.Id); if (like == null) { throw new NotFoundException(nameof(Like)); } var response = _mapper.Map <LikeDto>(like); return(response); }