public ResponseBase ReplyWith(Guid userId, ProjectUserReplyRequest req) { var res = new ResponseBase(); var pur = _projectUserReqRepository.FindById(req.RequestId); if (pur == null) { return(res.ReturnErrorResponseWith("Specified request for project not found.")); } if (!pur.UserAssigned.Id.Equals(userId)) { return(res.ReturnErrorResponseWith("Request is not yours.")); } if (req.IsAccepted) { //update pur.Accepted = req.IsAccepted; _projectUserReqRepository.Update(pur); } else { _projectUserReqRepository.Delete(pur); } pur.Validate(); if (pur.GetBrokenRules().Count > 0) { return(res.ReturnErrorResponseWithMultiple(pur.GetBrokenRules())); } try { _uow.Commit(); } catch (Exception ex) { return(res.ReturnErrorResponseWith(ex.Message)); } res.Success = true; return(res); }