public ApiResultModel EditPatientFile(long fileID, EditFilesModel oModel) { var strContent = JsonConvert.SerializeObject(oModel); var request = ApiConsumerHelper.PostData("api/editPatientFile?fileID" + fileID, strContent); var result = JsonConvert.DeserializeObject <ApiResultModel>(request); return(result); }
public async Task <HttpResponseMessage> EditPatientFile(long fileID, EditFilesModel model) { UserFile patFile = new UserFile(); try { if (fileID == 0) { response = Request.CreateResponse(HttpStatusCode.BadRequest, new ApiResultModel { ID = 0, message = "Invalid file ID." }); return(response); } if (model.FileName == null || model.FileName == "" || !Regex.IsMatch(model.FileName.Trim(), "^[0-9a-zA-Z ]+$")) { response = Request.CreateResponse(HttpStatusCode.BadRequest, new ApiResultModel { ID = 0, message = "Invalid file name. Only letters and numbers are allowed." }); return(response); } if (model.patientID == null || model.patientID == 0) { response = Request.CreateResponse(HttpStatusCode.BadRequest, new ApiResultModel { ID = 0, message = "Invalid patient ID." }); return(response); } if (model.fileContent == null) { response = Request.CreateResponse(HttpStatusCode.BadRequest, new ApiResultModel { ID = 0, message = "File is empty. " }); return(response); } if (model.documentType == null || model.documentType == "") { response = Request.CreateResponse(HttpStatusCode.BadRequest, new ApiResultModel { ID = 0, message = "Please provide document type. " }); return(response); } //check for duplicate names patFile = db.UserFiles.Where(m => m.fileID != fileID && m.patientID == model.patientID && m.FileName == model.FileName.Trim() && m.active == true).FirstOrDefault(); if (patFile != null) { response = Request.CreateResponse(HttpStatusCode.BadRequest, new ApiResultModel { ID = 0, message = "File name already taken." }); return(response); } patFile = db.UserFiles.Where(m => m.fileID == fileID).FirstOrDefault(); if (patFile == null) { response = Request.CreateResponse(HttpStatusCode.BadRequest, new ApiResultModel { ID = 0, message = "File not found." }); return(response); } else { patFile.active = true; patFile.FileName = model.FileName; patFile.md = System.DateTime.Now; patFile.fileContent = model.fileContent; patFile.documentType = model.documentType; patFile.mb = model.patientID.ToString(); db.Entry(patFile).State = EntityState.Modified; await db.SaveChangesAsync(); response = Request.CreateResponse(HttpStatusCode.OK, new ApiResultModel { ID = fileID, message = "" }); return(response); } } catch (Exception ex) { return(ThrowError(ex, "EditPatientCondition in PatientFileController.")); } }