private void btnOk_Click(object sender, RoutedEventArgs e) { RecordData user = (RecordData)gridUser.DataContext; if (isAdd) { if (bll.AddRecord(user)) { MessageBox.Show("添加成功!"); } } else { if (bll.UpdateRecord(user)) { MessageBox.Show("修改成功!"); } } this.Close(); }
public HttpResponseMessage PatientUpload([FromBody] dynamic credentials) { HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Unauthorized); string jwt; string deviceID; string retrievedNRIC; AccountBLL accountBLL = new AccountBLL(); JWTBLL jwtBll = new JWTBLL(); HttpContext httpContext = HttpContext.Current; string authHeader = httpContext.Request.Headers["Authorization"]; // Ensure Authorization Header exists if (authHeader != null && authHeader.StartsWith("Bearer")) { string authHeaderValue = authHeader.Substring("Bearer ".Length).Trim(); string authHeaderValueDecoded = Encoding.UTF8.GetString(Convert.FromBase64String(authHeaderValue)); string[] authHeaderParts = authHeaderValueDecoded.Split(':'); jwt = authHeaderParts[0]; deviceID = authHeaderParts[1]; } else { return(response); } // Ensure jwt, deviceID exists if (!(!string.IsNullOrEmpty(jwt) && AccountBLL.IsDeviceIDValid(deviceID))) { return(response); } // Validate jwt if (!jwtBll.ValidateJWT(jwt)) { return(response); } else { retrievedNRIC = jwtBll.getNRIC(jwt); } // Validate deviceID for retrievedNRIC if (!(accountBLL.IsValid(retrievedNRIC, deviceID))) { return(response); } // Upload record accountBLL.SetRole(retrievedNRIC, "Patient"); Account account = accountBLL.GetStatus(retrievedNRIC); if (account.status == 1) { try { Record record = new Record(); record.patientNRIC = retrievedNRIC; record.creatorNRIC = retrievedNRIC; record.title = System.Text.Encoding.Default.GetString(Convert.FromBase64String(Convert.ToString(credentials.title))); record.description = System.Text.Encoding.Default.GetString(Convert.FromBase64String(Convert.ToString(credentials.description))); record.type = RecordType.Get(Convert.ToString(credentials.type)); record.content = string.Empty; if (!record.IsTitleValid()) { return(Request.CreateResponse(HttpStatusCode.Forbidden, "Invalid record title")); } if (!record.IsDescriptionValid()) { return(Request.CreateResponse(HttpStatusCode.Forbidden, "Invalid record description")); } if (record.type.isContent) { record.content = credentials.content; if (!record.IsContentValid()) { return(Request.CreateResponse(HttpStatusCode.Forbidden, "Invalid record content")); } } else { record.fileName = System.Text.Encoding.Default.GetString(Convert.FromBase64String(Convert.ToString(credentials.fileName))); record.fileExtension = System.Text.Encoding.Default.GetString(Convert.FromBase64String(Convert.ToString(credentials.fileExtension))); byte[] fileContent = Convert.FromBase64String(Convert.ToString(credentials.fileContent)); record.fileSize = fileContent.Length; if (Convert.ToInt64(record.fileSize) > Convert.ToInt64(credentials.fileSize)) { return(Request.CreateResponse(HttpStatusCode.Forbidden, "Record file size mismatch")); } if (!record.IsFileValid()) { return(Request.CreateResponse(HttpStatusCode.Forbidden, "Invalid record file")); } record.createTime = DateTime.Now; Directory.CreateDirectory(record.GetFileServerPath() + "\\" + record.GetFileDirectoryNameHash()); File.WriteAllBytes(record.fullpath, fileContent); } recordBLL.AddRecord(record); response = Request.CreateResponse(HttpStatusCode.OK); response.Headers.Add("Authorization", "Bearer " + jwtBll.UpdateJWT(jwt)); } catch { response = Request.CreateResponse(HttpStatusCode.InternalServerError); } return(response); } return(response); }
protected void buttonSubmit_ServerClick(object sender, EventArgs e) { #region Page Validation if (HttpContext.Current.Request.QueryString["Patient-NRIC"] == null) { Server.TransferRequest("~/Errors/401.aspx"); return; } // todo check if patient is in rtp table Classes.Entity.Patient patient = new TherapistBLL().GetPatientPermissions(Convert.ToString(HttpContext.Current.Request.QueryString["Patient-NRIC"])); if (!AccountBLL.IsNRICValid(patient.nric) || patient.permissionApproved == 0) { Server.TransferRequest("~/Errors/401.aspx"); return; } #endregion Record record = new Record(); record.creatorNRIC = AccountBLL.GetNRIC(); record.patientNRIC = patient.nric; record.title = inputTitle.Value.Trim(); record.description = inputDescription.Value.Trim(); record.content = string.Empty; record.type = GetSelectedType(); record.isEmergency = patient.isEmergency; #region Validation bool[] validate = Enumerable.Repeat(true, 3).ToArray(); // If any fields are empty if (!record.IsTitleValid()) { validate[0] = false; inputTitle.Attributes.Add("class", "form-control form-control-sm is-invalid"); } else { inputTitle.Attributes.Add("class", "form-control form-control-sm is-valid"); } if (!record.IsDescriptionValid()) { validate[1] = false; inputDescription.Attributes.Add("class", "form-control form-control-sm is-invalid"); } else { inputDescription.Attributes.Add("class", "form-control form-control-sm is-valid"); } if (record.type.isContent) { record.content = inputContent.Value.Trim(); if (!record.IsContentValid()) { validate[2] = false; inputContent.Attributes.Add("class", "form-control form-control-sm is-invalid"); } else { inputContent.Attributes.Add("class", "form-control form-control-sm is-valid"); } } else { inputContent.Attributes.Add("class", "form-control form-control-sm is-invalid"); record.fileName = Path.GetFileNameWithoutExtension(inputFile.FileName); record.fileExtension = Path.GetExtension(inputFile.FileName); record.fileSize = inputFile.PostedFile.ContentLength; if (!inputFile.HasFile) { validate[2] = false; LabelFileError.Visible = true; LabelFileError.Text = "<i class=\"fas fa-fw fa-exclamation-circle\"></i>No file chosen."; } else if (!record.IsFileValid()) { validate[2] = false; LabelFileError.Visible = true; LabelFileError.Text = "<i class=\"fas fa-fw fa-exclamation-circle\"></i>Chosen file is of incorrect format or exceeding size for this type of record."; } else { LabelFileError.Visible = false; } } #endregion if (validate.Contains(false)) { spanMessage.Visible = true; } else { spanMessage.Visible = false; try { if (!record.type.isContent) { record.createTime = DateTime.Now; Directory.CreateDirectory(record.GetFileServerPath() + "\\" + record.GetFileDirectoryNameHash()); inputFile.SaveAs(record.fullpath); } recordBLL.AddRecord(record); Session["NewRecordSuccess"] = "success"; } catch { Session["NewRecordSuccess"] = "error"; } if (Master.IsLocalUrl(Request.RawUrl)) { Response.Redirect(Request.RawUrl); } } }
protected void buttonSubmit_ServerClick(object sender, EventArgs e) { Record record = new Record(); record.patientNRIC = AccountBLL.GetNRIC(); record.title = inputTitle.Value.Trim(); record.description = inputDescription.Value.Trim(); record.content = string.Empty; record.type = GetSelectedType(); #region Validation bool[] validate = Enumerable.Repeat(true, 3).ToArray(); // If any fields are empty if (!record.IsTitleValid()) { validate[0] = false; inputTitle.Attributes.Add("class", "form-control form-control-sm is-invalid"); } else { inputTitle.Attributes.Add("class", "form-control form-control-sm is-valid"); } if (!record.IsDescriptionValid()) { validate[1] = false; inputDescription.Attributes.Add("class", "form-control form-control-sm is-invalid"); } else { inputDescription.Attributes.Add("class", "form-control form-control-sm is-valid"); } if (record.type.isContent) { record.content = inputContent.Value.Trim(); if (!record.IsContentValid()) { validate[2] = false; inputContent.Attributes.Add("class", "form-control form-control-sm is-invalid"); } else { inputContent.Attributes.Add("class", "form-control form-control-sm is-valid"); } } else { inputContent.Attributes.Add("class", "form-control form-control-sm is-invalid"); record.fileName = Path.GetFileNameWithoutExtension(inputFile.FileName); record.fileExtension = Path.GetExtension(inputFile.FileName); record.fileSize = inputFile.PostedFile.ContentLength; if (!inputFile.HasFile) { validate[2] = false; LabelFileError.Visible = true; LabelFileError.Text = "<i class=\"fas fa-fw fa-exclamation-circle\"></i>No file chosen."; } else if (!record.IsFileValid()) { validate[2] = false; LabelFileError.Visible = true; LabelFileError.Text = "<i class=\"fas fa-fw fa-exclamation-circle\"></i>Chosen file is of incorrect format or exceeding size for this type of record."; } else { LabelFileError.Visible = false; } } #endregion if (validate.Contains(false)) { spanMessage.Visible = true; } else { spanMessage.Visible = false; try { if (!record.type.isContent) { record.createTime = DateTime.Now; Directory.CreateDirectory(record.GetFileServerPath() + "\\" + record.GetFileDirectoryNameHash()); inputFile.SaveAs(record.fullpath); } recordBLL.AddRecord(record); Session["NewRecordSuccess"] = "success"; } catch { Session["NewRecordSuccess"] = "error"; } Response.Redirect(Request.RawUrl); } }