public HttpResponseMessage GetProjectTimeRecords([FromBody] int projectId) { if (projectId != 0) { var records = repo.GetProjectTimeRecords(projectId); List <TimeDTO> ProjectTimeRecords = new List <TimeDTO>(); if (records == null || records.Count() == 0) { return(Request.CreateResponse(HttpStatusCode.NotFound, "No Records were found.")); } else { EntityToDTO etd = new EntityToDTO(); foreach (var r in records) { r.TimeSpent = CalculateProjectHours(r); TimeDTO timeDTO = etd.TimeEntityToDTO(r); if (timeDTO != null) { ProjectTimeRecords.Add(timeDTO); } } ; return(Request.CreateResponse(HttpStatusCode.OK, ProjectTimeRecords)); } } else { return(Request.CreateResponse(HttpStatusCode.BadRequest, "An error Occured")); } }
public HttpResponseMessage DeleteProject([FromBody] int projectId) { if (projectId != 0) { var projectToDelete = repo.GetProjectById(projectId); var projectOwners = repo.GetProjectOwnersByProjectId(projectToDelete.Id); var projectTimes = repo.GetProjectTimeRecords(projectToDelete.Id); if (projectOwners.Count() > 0) { foreach (var owner in projectOwners) { repo.deleteOwner(owner); } } if (projectTimes.Count() > 0) { foreach (var time in projectTimes) { repo.DeleteTime(time); } } if (projectToDelete != null) { repo.DeleteProject(projectToDelete); return(Request.CreateResponse(HttpStatusCode.OK, "Project deleted successfully.")); } else { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, "No project found. Please try again.")); } } else { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, "An error occured.")); } }