public async Task <ServiceResponse <bool> > RespondToRequest(ResponseFriendshipDto response) { ServiceResponse <bool> serviceResponse = new ServiceResponse <bool>(); try { Friendship dbFriendship = await _context.Friendships .FirstOrDefaultAsync(fs => fs.UserId2 == GetUserId() && fs.UserId1 == response.UserId1 && fs.Status == 0); if (dbFriendship != null) { int newStatus = response.Decision ? 1 : 0; if (newStatus == 0) { _context.Friendships.Remove(dbFriendship); await _context.SaveChangesAsync(); } else { dbFriendship.Status = newStatus; _context.Friendships.Update(dbFriendship); await _context.SaveChangesAsync(); } serviceResponse.Data = true; //samo da je uspesno izvrseno, posle mogu da dodam listu prijatelja npr.. ili prijateljstvo sklopljeno serviceResponse.Message = "Your response: " + newStatus.ToString(); serviceResponse.Success = true; } else { serviceResponse.Message = "Friend request not found."; serviceResponse.Success = false; } } catch (Exception ex) { serviceResponse.Success = false; serviceResponse.Message = ex.Message; } return(serviceResponse); }
public async Task <IActionResult> RespondToRequest(ResponseFriendshipDto response) //nepotvrdjena { return(Ok(await _friendshipService.RespondToRequest(response))); }