private async void btnGetUserFingerprint_ClickAsync(object sender, EventArgs e) { try { // Get user from local db DAL_User dalUser = new DAL_User(); Trinity.DAL.DBContext.Membership_Users user = dalUser.GetByNRIC(txtNRIC.Text); if (user != null) { // Get user from Backend API UserModel userModel = await GetUserAsync(txtURL.Text); if (userModel != null) { _leftFingerprint = user.LeftThumbFingerprint; _rightFingerprint = user.RightThumbFingerprint; byte[] leftFingerprint = user.LeftThumbFingerprint; byte[] leftFingerprint2 = userModel.Left; byte[] rightFingerprint = user.RightThumbFingerprint; byte[] rightFingerprint2 = userModel.Right; // Now compare leftFingerprint and leftFingerprint2, rightFingerprint and rightFingerprint2 for (int i = 0; i < leftFingerprint.Length; i++) { if (leftFingerprint[i] != leftFingerprint2[i]) { MessageBox.Show("Lef Fingerprint is different"); return; } if (rightFingerprint[i] != rightFingerprint2[i]) { MessageBox.Show("Right Fingerprint is different"); return; } } MessageBox.Show("Verified"); } else { MessageBox.Show("Not verified"); } btnSaveToFile.Enabled = true; } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public async System.Threading.Tasks.Task <IHttpActionResult> SSPPostNotification([FromBody] SSPNotificationModel data) { try { LogManager.Debug(string.Format("Begin SSPPostNotification, NRIC:{0}, Type:{1}, Datetime:{2}, Notification_Code:{3}, Content:{4}", data.NRIC, data.Type, data.Datetime, data.notification_code, data.Content)); Trinity.DAL.DBContext.Membership_Users user = null; if (!string.IsNullOrEmpty(data.NRIC)) { user = new DAL.DAL_User().GetByNRIC(data.NRIC); } string Subject = data.Content; if (Subject.Length > 100) { Subject = Subject.Substring(0, 96) + " ..."; } string IDNoti = new DAL.DAL_Notification().InsertNotification(user != null ? user.UserId : null, null, Subject, data.Content, false, data.Datetime, data.notification_code, data.Type, EnumStation.SSP); if (!string.IsNullOrEmpty(IDNoti)) { if (data.Type == EnumNotificationTypes.Error && user != null) { new DAL.DAL_QueueNumber().UpdateQueueStatusByUserId(user.UserId, EnumStation.SSP, EnumQueueStatuses.Errors, EnumStation.DUTYOFFICER, EnumQueueStatuses.Finished, EnumMessage.LeakageDeletected, EnumQueueOutcomeText.Processing); await System.Threading.Tasks.Task.Run(() => Trinity.SignalR.Client.Instance.BackendAPISend(NotificationNames.SSP_ERROR, data.NRIC)); } await System.Threading.Tasks.Task.Run(() => Trinity.SignalR.Client.Instance.SendToAppDutyOfficers((user != null ? user.UserId : null), Subject, data.Content, data.Type, EnumStation.SSP, false, IDNoti)); LogManager.Debug("SSPPostNotification completed successfully"); return(Ok(true)); } else { LogManager.Error("SSPPostNotification failed."); return(Ok(false)); } } catch (Exception) { return(Ok(false)); } }