public IActionResult Post([FromBody] LabReportViewModel m) { // return generic HTTP Status 500 if client payload is invalid if (m == null) { return(new StatusCodeResult(500)); } var labReport = DbContext.LabReports.Where(q => q.Id == m.Id).FirstOrDefault(); //handle if the patient does not exist if (labReport == null) { return(NotFound(new { Error = $"Patient ID {m.Id} is not found" })); } //properties taken from request labReport.PatientId = m.PatientId; labReport.Result = m.Result; labReport.Status = m.Status; labReport.Physician = m.Physician; labReport.LabReportType = m.LabReportType; labReport.LabTestTime = m.LabTestTime; //set on serverside labReport.LastModifiedDate = DateTime.Now; //persist to DB DbContext.SaveChanges(); // return updated patient back to client return(new JsonResult(labReport.Adapt <LabReportViewModel>(), new JsonSerializerOptions { WriteIndented = true })); }
public IActionResult Put([FromBody] LabReportViewModel m) { // return generic HTTP Status 500 if client payload is invalid if (m == null) { return(new StatusCodeResult(500)); } var labReport = new LabReport(); //properties taken from request labReport.PatientId = m.PatientId; labReport.Result = m.Result; labReport.Status = m.Status; labReport.Physician = m.Physician; labReport.LabReportType = m.LabReportType; labReport.CreatedByUserId = m.CreatedByUserId; labReport.LabTestTime = m.LabTestTime; //server side properties labReport.Id = Guid.NewGuid(); labReport.CreatedDate = DateTime.Now; labReport.LastModifiedDate = DateTime.Now; //Created by admin labReport.CreatedByUserId = DbContext.Users.Where(u => u.UserName == "Admin") .FirstOrDefault().Id; //adding the patient to the database DbContext.LabReports.Add(labReport); //persist to DB DbContext.SaveChanges(); // return created patient back to client return(new JsonResult(labReport.Adapt <LabReportViewModel>(), new JsonSerializerOptions { WriteIndented = true })); }