public async Task <IActionResult> CancelInvitationProject([FromBody] CancelInvitationProjectViewModel model) { if (model.UserInvitedId == 0) { model.UserInvitedId = Convert.ToInt32(HttpContext.User.FindFirstValue(ClaimTypes.NameIdentifier)); } if (model.UserAuthorId == 0) { model.UserAuthorId = Convert.ToInt32(HttpContext.User.FindFirstValue(ClaimTypes.NameIdentifier)); } if (!HttpContext.User.IsInRole("admin") && !_getAccessUser.UserCookieIs(HttpContext, model.UserAuthorId.ToString()) && !_getAccessUser.UserCookieIs(HttpContext, model.UserInvitedId.ToString())) { return(StatusCode(403, "Access Denied !")); } Result resultDeleteInvitationProject = await _projectGateway.DeleteUserInvitationInProject(model.UserAuthorId, model.UserInvitedId, model.ProjectId); if (resultDeleteInvitationProject.ErrorMessage == "No invitation with this user author id, user invited id and project id exists") { return(BadRequest(resultDeleteInvitationProject.ErrorMessage)); } return(Ok("Cancel invitation success")); }