private async Task <string> LoginServer(List <KeyValuePair <string, string> > values) { if (ExtraModules.IsInternet()) { var httpClient = new HttpClient(); var response = await httpClient.PostAsync(ExtraModules.domain_address + "/login.php", new FormUrlEncodedContent(values)); var responseString = await response.Content.ReadAsStringAsync(); Debug.WriteLine("MainPage" + responseString); JsonObject root = Windows.Data.Json.JsonValue.Parse(responseString).GetObject(); string error = root.GetNamedString("error"); if (error.Equals("Success")) { string username = root.GetNamedString("Username"); string userid = root.GetNamedString("UserId").ToString(); string auth_token = root.GetNamedString("Auth_Token"); string organisation = root.GetNamedString("Organisation"); string login_time = DateTime.Now.ToUniversalTime().ToString("yyyyMMddHHmmssfff"); this.database = App.database; await Insert_UserDetails_In_Database(userid, username, organisation, login_time, auth_token); return("success"); } else { return(error); } } return("Check internet Connection"); }
private async void SendMailClicked(object sender, RoutedEventArgs e) { if (isEmailInfoFilled()) { AnalysisSampleDataItem selectedItem = RecordGrid.SelectedItem as AnalysisSampleDataItem; if (selectedItem != null) { Windows.Storage.StorageFolder temporaryFolder = ApplicationData.Current.TemporaryFolder; StorageFile sampleFile = await temporaryFolder.CreateFileAsync(selectedItem.Name.Trim() + ".csv", CreationCollisionOption.ReplaceExisting); EmailInfoForm.IsOpen = false; AnalysisPageCmdbar.IsOpen = false; await FileIO.WriteTextAsync(sampleFile, ExtraModules.getFileDataForAnalysisItem(selectedItem)); AnalysisExportProgressRing.IsActive = true; AnalysisExportProgressRing.Visibility = Windows.UI.Xaml.Visibility.Visible; await ExtraModules.Send_Email(FromEmail.Text, FromPassword.Password, ToEmail.Text, Subject.Text, "Check from Health Organiser", sampleFile.Path); await sampleFile.DeleteAsync(StorageDeleteOption.PermanentDelete); AnalysisExportProgressRing.IsActive = false; AnalysisExportProgressRing.Visibility = Windows.UI.Xaml.Visibility.Collapsed; this.clearEmailInfoFields(); } else { EmailInfoForm.IsOpen = false; } } AnalysisPageCmdbar.IsOpen = false; }
private async Task <bool> checkLogin() { if (ExtraModules.IsInternet()) { var data = new List <KeyValuePair <string, string> > { new KeyValuePair <string, string>("username", MainPageUsername.Text.ToString()), new KeyValuePair <string, string>("password", MainPagePassword.Password.ToString()) }; string output = await LoginServer(data); if (output.Equals("success")) { return(true); } else { var messageDialog = new MessageDialog(output, "Error"); messageDialog.Commands.Add(new Windows.UI.Popups.UICommand("OK", null)); var dialogResult = await messageDialog.ShowAsync(); } } return(false); //this shud be uncommented for running with server //return true; }
private async Task Uploadtoserver(List <KeyValuePair <string, string> > values) { if (ExtraModules.IsInternet()) { var httpClient = new HttpClient(); var response = await httpClient.PostAsync(ExtraModules.domain_address + "/UpdateServerdata.php", new FormUrlEncodedContent(values)); var responseString = await response.Content.ReadAsStringAsync(); try { Debug.WriteLine("Sync Output" + responseString); // JsonObject root = Windows.Data.Json.JsonValue.Parse(responseString).GetObject(); // string error = root.GetNamedString("error"); } catch (Exception ex) { Debug.WriteLine("Exception in Sync"); Debug.WriteLine(ex.Message.ToString()); } } else { Debug.WriteLine("Check internet Connection"); } }
///////////////////This are the methods used to update the display immideately after updating private async Task <bool> UpdateDiseaseData(BasicDiseases tempDisease) { docKitName.Text = tempDisease.Name; docKitDescription.Text = "\n" + tempDisease.Description; docKitImage.Source = await ImageMethods.Base64StringToBitmap(tempDisease.Image); docKitSymptomsPanel.Children.Clear(); foreach (var i in tempDisease.Symptoms.Split(',')) { if (i.Equals("")) { continue; } StackPanel docKitSymptomsStackPanels = new StackPanel(); docKitSymptomsStackPanels.Margin = new Thickness(0, 15, 0, 0); docKitSymptomsStackPanels.Orientation = Orientation.Horizontal; TextBlock dot = new TextBlock(); dot.Width = 15; dot.FontSize = 20; dot.Text = "•"; docKitSymptomsStackPanels.Children.Add(dot); TextBlock Symptom = new TextBlock(); Symptom.Width = 650; Symptom.Text = ExtraModules.RemoveStringSpace(i).Replace(",", ""); Symptom.TextWrapping = TextWrapping.Wrap; Symptom.FontSize = 20; docKitSymptomsStackPanels.Children.Add(Symptom); docKitSymptomsPanel.Children.Add(docKitSymptomsStackPanels); } return(true); }
private async Task <string> SignupServer(List <KeyValuePair <string, string> > values) { if (ExtraModules.IsInternet()) { var httpClient = new HttpClient(); var response = await httpClient.PostAsync(ExtraModules.domain_address + "/signup.php", new FormUrlEncodedContent(values)); var responseString = await response.Content.ReadAsStringAsync(); Debug.WriteLine("Signup Output" + responseString); JsonObject root = Windows.Data.Json.JsonValue.Parse(responseString).GetObject(); string error = root.GetNamedString("error"); return(error); } return("Check internet Connection"); }
//sync functions private async void SettingsSynClicked(object sender, RoutedEventArgs e) { SettingsWaitTextBlock.Text = "Syncing"; SettingsWaitTextBlock.Visibility = Windows.UI.Xaml.Visibility.Visible; SettingsSyncButton.Visibility = Windows.UI.Xaml.Visibility.Collapsed; settingsProgress.Visibility = Windows.UI.Xaml.Visibility.Visible; if (ExtraModules.IsInternet()) { string timestamp = await getTimeStamp();//"1/25/2014 3:34:06 AM"; string userid = await getUserId(); string auth_token = await getAuthToken(); string statements = await sendToServer(timestamp, userid); var data = new List <KeyValuePair <string, string> > { new KeyValuePair <string, string>("userid", userid), new KeyValuePair <string, string>("auth_token", auth_token), new KeyValuePair <string, string>("updatestatements", statements) }; var datatorecieve = new List <KeyValuePair <string, string> > { new KeyValuePair <string, string>("userid", userid), new KeyValuePair <string, string>("auth_token", auth_token), new KeyValuePair <string, string>("timestamp", timestamp) }; await Uploadtoserver(data); await getfromserver(datatorecieve); SettingsWaitTextBlock.Text = "Done"; } else { SettingsWaitTextBlock.Text = "Failed"; } SettingsSyncButton.IsEnabled = true; settingsProgress.Visibility = Windows.UI.Xaml.Visibility.Collapsed; SettingsSyncButton.Visibility = Windows.UI.Xaml.Visibility.Visible; // SettingsWaitTextBlock.Visibility = Windows.UI.Xaml.Visibility.Collapsed; }
private async Task SignUpNewUser() { if (ExtraModules.IsInternet()) { var data = new List <KeyValuePair <string, string> > { new KeyValuePair <string, string>("username", MainPageSignUpUsername.Text), new KeyValuePair <string, string>("password", MainPageSignUpPassword.Password.ToString()), new KeyValuePair <string, string>("organisation", MainPageSignUpNGOName.Text), new KeyValuePair <string, string>("email", MainPageSignUpEmail.Text) }; string output = await SignupServer(data); var messageDialog = new MessageDialog(output, ""); messageDialog.Commands.Add(new Windows.UI.Popups.UICommand("OK", null)); var dialogResult = await messageDialog.ShowAsync(); } return; }
private async void ExportProfileClicked(object sender, RoutedEventArgs e) { AnalysisSampleDataItem selectedItem = RecordGrid.SelectedItem as AnalysisSampleDataItem; FileSavePicker savePicker = new FileSavePicker(); savePicker.SuggestedStartLocation = PickerLocationId.DocumentsLibrary; // Dropdown of file types the user can save the file as savePicker.FileTypeChoices.Add("Tabular Data", new List <string>() { ".csv" }); // Default file name if the user does not type one in or select a file to replace savePicker.SuggestedFileName = selectedItem.Name; StorageFile file = await savePicker.PickSaveFileAsync(); if (file != null && selectedItem != null) { CachedFileManager.DeferUpdates(file); // write to file AnalysisExportProgressRing.IsActive = true; AnalysisExportProgressRing.Visibility = Windows.UI.Xaml.Visibility.Visible; await FileIO.WriteTextAsync(file, ExtraModules.getFileDataForAnalysisItem(selectedItem)); AnalysisExportProgressRing.IsActive = false; AnalysisExportProgressRing.Visibility = Windows.UI.Xaml.Visibility.Collapsed; FileUpdateStatus status = await CachedFileManager.CompleteUpdatesAsync(file); if (status == FileUpdateStatus.Complete) { Debug.WriteLine("File " + file.Name + " was saved."); } else { Debug.WriteLine("File " + file.Name + " couldn't be saved."); } } }
private bool isEmailInfoFilled() { bool flag = true; if (!ExtraModules.isEmail(FromEmail.Text)) { FromEmail.BorderBrush = new SolidColorBrush(Windows.UI.Colors.Red); FromEmail.PlaceholderText = "Invalid Email"; FromEmail.Text = ""; flag = false; } if (!ExtraModules.isEmail(ToEmail.Text)) { ToEmail.BorderBrush = new SolidColorBrush(Windows.UI.Colors.Red); ToEmail.PlaceholderText = "Invalid Email"; ToEmail.Text = ""; flag = false; } return(flag); }
private async Task <string> getfromserver(List <KeyValuePair <string, string> > values) { if (ExtraModules.IsInternet()) { var httpClient = new HttpClient(); var response = await httpClient.PostAsync(ExtraModules.domain_address + "/updatetomachine.php", new FormUrlEncodedContent(values)); var responseString = await response.Content.ReadAsStringAsync(); //Debug.WriteLine("Sync Output" + responseString); string error = responseString.ToString(); //JsonObject root = Windows.Data.Json.JsonValue.Parse(responseString).GetObject(); //string error = root.GetNamedString("query"); await aftergetFromServer(error); string userid = await getUserId(); updateTimeStamp(userid); return("done"); } return("Check internet Connection"); }
private async void UpdateEditedDetails() { if (VisitListBox.SelectedItem != null) { try { string query = "SELECT * FROM MedicalDetails WHERE PID = @pid AND DateVisited = @dv"; Statement statement = await this.database.PrepareStatementAsync(query); statement.BindTextParameterWithName("@pid", this.PID); statement.BindTextParameterWithName("@dv", VisitListBox.Items[VisitListBox.SelectedIndex].ToString()); statement.EnableColumnsProperty(); if (await statement.StepAsync()) { VisitSymptomsPanel.Children.Clear(); foreach (string str in statement.Columns["Symptoms"].Split(',')) { StackPanel VisitSymptomsStackPanels = new StackPanel(); VisitSymptomsStackPanels.Margin = new Thickness(0, 15, 0, 0); VisitSymptomsStackPanels.Orientation = Orientation.Horizontal; TextBlock dot = new TextBlock(); dot.Width = 10; dot.FontSize = 15; dot.Text = "•"; VisitSymptomsStackPanels.Children.Add(dot); TextBlock vaccineName = new TextBlock(); vaccineName.Width = 280; vaccineName.Text = ExtraModules.RemoveExtraCommas(ExtraModules.RemoveStringSpace(str)); vaccineName.TextWrapping = TextWrapping.Wrap; vaccineName.FontSize = 15; VisitSymptomsStackPanels.Children.Add(vaccineName); VisitSymptomsPanel.Children.Add(VisitSymptomsStackPanels); } VisitTextDisease.Text = "\n" + statement.Columns["DiseaseFound"]; VisitTextBG.Text = statement.Columns["BloodGlucose"]; VisitTextBP.Text = statement.Columns["SystolicBP"] + "/" + statement.Columns["DiastolicBP"]; double BMIDouble = Convert.ToDouble(statement.Columns["BMI"]); Double BMIRounded3 = Math.Round(BMIDouble, 3); VisitTextBMI.Text = BMIRounded3.ToString(); VisitTextWeight.Text = statement.Columns["Weight"]; VisitTextHeight.Text = statement.Columns["Height"]; } } catch (Exception ex) { var result = SQLiteWinRT.Database.GetSqliteErrorCode(ex.HResult); Debug.WriteLine("CREATE_NEW_VISIT---UPDATE_EDITED_DETAILS" + "\n" + ex.Message + "\n" + result.ToString()); } try { string query = "SELECT * FROM MedicalDetailsMedicine WHERE PID = @pid AND DateVisited = @dv"; Statement statement = await this.database.PrepareStatementAsync(query); statement.BindTextParameterWithName("@pid", this.PID); statement.BindTextParameterWithName("@dv", VisitListBox.Items[VisitListBox.SelectedIndex].ToString()); statement.EnableColumnsProperty(); VisitTextMedicines.Children.Clear(); while (await statement.StepAsync()) { StackPanel VisitMedicineStackPanels = new StackPanel(); VisitMedicineStackPanels.Margin = new Thickness(0, 15, 0, 0); VisitMedicineStackPanels.Orientation = Orientation.Horizontal; TextBlock dot = new TextBlock(); dot.Width = 10; dot.FontSize = 15; dot.Text = "•"; VisitMedicineStackPanels.Children.Add(dot); TextBlock medicineName = new TextBlock(); medicineName.Width = 280; medicineName.Text = ExtraModules.RemoveExtraCommas(ExtraModules.RemoveStringSpace(statement.Columns["Medicine"])); medicineName.TextWrapping = TextWrapping.Wrap; medicineName.FontSize = 15; VisitMedicineStackPanels.Children.Add(medicineName); VisitTextMedicines.Children.Add(VisitMedicineStackPanels); } } catch (Exception ex) { var result = SQLiteWinRT.Database.GetSqliteErrorCode(ex.HResult); Debug.WriteLine("CREATE_NEW_VISIT---UPDATE_EDITED_DETAILS---MEDICINE" + "\n" + ex.Message + "\n" + result.ToString()); } try { string query = "SELECT * FROM MedicalDetailsVaccine WHERE PID = @pid AND DateVisited = @dv"; Statement statement = await this.database.PrepareStatementAsync(query); statement.BindTextParameterWithName("@pid", this.PID); statement.BindTextParameterWithName("@dv", VisitListBox.Items[VisitListBox.SelectedIndex].ToString()); statement.EnableColumnsProperty(); VisitTextVaccine.Children.Clear(); while (await statement.StepAsync()) { if (statement.Columns["Vaccine"].Equals("")) { break; } StackPanel VisitVaccineStackPanels = new StackPanel(); VisitVaccineStackPanels.Margin = new Thickness(0, 15, 0, 0); VisitVaccineStackPanels.Orientation = Orientation.Horizontal; TextBlock dot = new TextBlock(); dot.Width = 10; dot.FontSize = 15; dot.Text = "•"; VisitVaccineStackPanels.Children.Add(dot); TextBlock VaccineName = new TextBlock(); VaccineName.Width = 280; VaccineName.Text = ExtraModules.RemoveExtraCommas(ExtraModules.RemoveStringSpace(statement.Columns["Vaccine"])); VaccineName.TextWrapping = TextWrapping.Wrap; VaccineName.FontSize = 15; VisitVaccineStackPanels.Children.Add(VaccineName); VisitTextVaccine.Children.Add(VisitVaccineStackPanels); } } catch (Exception ex) { var result = SQLiteWinRT.Database.GetSqliteErrorCode(ex.HResult); Debug.WriteLine("CREATE_NEW_VISIT---UPDATE_EDITED_DETAILS---VACCINE" + "\n" + ex.Message + "\n" + result.ToString()); } this.visibleStackPanels(); } }
private async Task <int> UpdateDetails() { double height = ((VisitHeightFeet.SelectedIndex + 1) * 12 + VisitHeightInch.SelectedIndex) * 0.0254; int weight = Int32.Parse(VisitWeight.Text.ToString()); string DateVisited = VisitYearComboBox.Items[VisitYearComboBox.SelectedIndex].ToString() + "-" + VisitMonthComboBox.Items[VisitMonthComboBox.SelectedIndex].ToString() + "-" + VisitDayComboBox.Items[VisitDayComboBox.SelectedIndex].ToString(); double bmi = ExtraModules.CalculateBMI(VisitHeightFeet.SelectedIndex + 1, VisitHeightInch.SelectedIndex, weight); try { string updateQuery = "UPDATE MedicalDetails SET TimeStamp = @ts, BloodGlucose = @bg , SystolicBP = @sbp , DiastolicBP = @dbp , DiseaseFound = @disease , Height = @height , Weight = @weight , Symptoms = @symptoms , BMI = @bmi WHERE PID = @pid AND DateVisited = @dv"; Statement statement = await this.database.PrepareStatementAsync(updateQuery); statement.BindTextParameterWithName("@pid", this.PID); statement.BindTextParameterWithName("@ts", DateTime.Now.ToString(ExtraModules.datePatt)); statement.BindTextParameterWithName("@dv", DateVisited); if (!VisitBloodGlucose.Text.ToString().Equals("")) { statement.BindIntParameterWithName("@bg", Int32.Parse(VisitBloodGlucose.Text.ToString())); } else { statement.BindIntParameterWithName("@bg", 0); } if (!VisitDiastolicBP.Text.ToString().Equals("")) { statement.BindIntParameterWithName("@dbp", Int32.Parse(VisitDiastolicBP.Text.ToString())); } else { statement.BindIntParameterWithName("@dbp", 0); } if (!VisitSystolicBP.Text.ToString().Equals("")) { statement.BindIntParameterWithName("@sbp", Int32.Parse(VisitSystolicBP.Text.ToString())); } else { statement.BindIntParameterWithName("@sbp", 0); } statement.BindTextParameterWithName("@disease", ExtraModules.removesemicolon(VisitDiseasesDiagnosed.Text.ToString())); statement.BindDoubleParameterWithName("@height", height); statement.BindIntParameterWithName("@weight", weight); statement.BindTextParameterWithName("@symptoms", ExtraModules.removesemicolon(ExtraModules.RemoveExtraCommas(ExtraModules.RemoveStringNewLine(VisitSymptoms.Text.ToString())))); statement.BindDoubleParameterWithName("@bmi", bmi); await statement.StepAsync(); } catch (Exception ex) { var result = SQLiteWinRT.Database.GetSqliteErrorCode(ex.HResult); Debug.WriteLine("CREATE_NEW_VISIT---UPDATE_DETAILS---MEDIC_DETAILS" + "\n" + ex.Message + "\n" + result.ToString()); } //statement.Reset(); //string insertBMI = "UPDATE MedicalDetailsBMI SET BMI = @bmi WHERE Height = @height AND Weight = @weight"; //statement = await this.database.PrepareStatementAsync(insertBMI); //statement.BindDoubleParameterWithName("@height", height); //statement.BindIntParameterWithName("@weight", weight); //statement.BindDoubleParameterWithName("@bmi", bmi); //await statement.StepAsync(); try { string deleteMedicine = "DELETE FROM MedicalDetailsMedicine WHERE PID = @pid AND DateVisited = @dv"; Statement statement = await this.database.PrepareStatementAsync(deleteMedicine); statement.BindTextParameterWithName("@pid", this.PID); statement.BindTextParameterWithName("@dv", DateVisited); await statement.StepAsync(); } catch (Exception ex) { var result = SQLiteWinRT.Database.GetSqliteErrorCode(ex.HResult); Debug.WriteLine("CREATE_NEW_VISIT---UPDATE_DETAILS---MEDIC_DETAILS_DEL" + "\n" + ex.Message + "\n" + result.ToString()); } try { string deleteVaccine = "DELETE FROM MedicalDetailsVaccine WHERE PID = @pid AND DateVisited = @dv"; Statement statement = await this.database.PrepareStatementAsync(deleteVaccine); statement.BindTextParameterWithName("@pid", this.PID); statement.BindTextParameterWithName("@dv", DateVisited); await statement.StepAsync(); } catch (Exception ex) { var result = SQLiteWinRT.Database.GetSqliteErrorCode(ex.HResult); Debug.WriteLine("CREATE_NEW_VISIT---UPDATE_DETAILS---MEDIC_DETAILS_VACCINE_DEL" + "\n" + ex.Message + "\n" + result.ToString()); } try { string insertMedicine = "INSERT INTO MedicalDetailsMedicine (TimeStamp, PID, DateVisited, Medicine) VALUES (@ts, @pid, @dv, @medicine)"; foreach (string str in ExtraModules.RemoveExtraCommas(ExtraModules.RemoveStringNewLine(VisitMedicineGiven.Text.ToString())).Split(',')) { if (str != "") { Statement statement = await this.database.PrepareStatementAsync(insertMedicine); statement.BindTextParameterWithName("@pid", this.PID); statement.BindTextParameterWithName("@ts", DateTime.Now.ToString(ExtraModules.datePatt)); statement.BindTextParameterWithName("@dv", DateVisited); statement.BindTextParameterWithName("@medicine", ExtraModules.removesemicolon(str)); await statement.StepAsync(); statement.Reset(); } } } catch (Exception ex) { var result = SQLiteWinRT.Database.GetSqliteErrorCode(ex.HResult); Debug.WriteLine("CREATE_NEW_VISIT---UPDATE_DETAILS---MEDIC_DETAILS_MEDICINE_INSERT" + "\n" + ex.Message + "\n" + result.ToString()); } try { string insertVaccine = "INSERT INTO MedicalDetailsVaccine (TimeStamp, PID, DateVisited, Vaccine) VALUES (@ts, @pid, @dv, @vaccine)"; foreach (string str in ExtraModules.RemoveExtraCommas(ExtraModules.RemoveStringNewLine(VisitVaccine.Text.ToString())).Split(',')) { if (str != "") { Statement statement = await this.database.PrepareStatementAsync(insertVaccine); statement.BindTextParameterWithName("@pid", this.PID); statement.BindTextParameterWithName("@ts", DateTime.Now.ToString(ExtraModules.datePatt)); statement.BindTextParameterWithName("@dv", DateVisited); statement.BindTextParameterWithName("@vaccine", ExtraModules.removesemicolon(str)); await statement.StepAsync(); statement.Reset(); } } } catch (Exception ex) { var result = SQLiteWinRT.Database.GetSqliteErrorCode(ex.HResult); Debug.WriteLine("CREATE_NEW_VISIT---UPDATE_DETAILS---MEDIC_DETAILS_VACCINE_INSERT" + "\n" + ex.Message + "\n" + result.ToString()); } this.ClearAllFields(); isUpdating = false; this.UpdateEditedDetails(); return(DBConnect.RESULT_OK); }
private void UpdateView() { resultList = new List <AnalysisSampleDataItem>(); foreach (AnalysisSampleDataItem item in mainItemList) { if (ByDateFlag) { this.checkSelectedDates(); int lastDateOn = item.DatesVisited.Count; if (lastDateOn > 0) { DateTime lastDate = ExtraModules.ConvertStringToDateTime(item.DatesVisited.ElementAt(lastDateOn - 1)); DateTime fromDate = new DateTime(Convert.ToInt32(AnalysisFromYearComboBox.SelectedItem), AnalysisFromMonthComboBox.SelectedIndex + 1, Convert.ToInt32(AnalysisFromDayComboBox.SelectedItem)); DateTime toDate = new DateTime(Convert.ToInt32(AnalysisToYearComboBox.SelectedItem), AnalysisToMonthComboBox.SelectedIndex + 1, Convert.ToInt32(AnalysisToDayComboBox.SelectedItem)); if (!(fromDate <= lastDate && toDate >= lastDate)) { continue; } } else { continue; } } if (CityFlag) { if (!AnalysisCityBox.SelectedItem.ToString().Equals(item.City)) { continue; } } if (StateFlag) { if (!AnalysisStateBox.SelectedItem.ToString().Equals(item.State)) { continue; } } if (SexFlag) { switch (sexMale) { case 1: if (item.Sex != 'M') { continue; } break; case -1: if (item.Sex != 'F') { continue; } break; } } if (StatusFlag) { switch (isMarried) { case 1: if (!item.Married) { continue; } break; case -1: if (item.Married) { continue; } break; } } if (BGFlag) { if (!AnalysisBloodGroupBox.SelectedItem.ToString().Equals(item.BloodGroup)) { continue; } } if (DiseaseFlag) { bool found = false; foreach (string disease in item.Diseases.Values) { if (AnalysisDiseaseBox.SelectedItem.ToString().Equals(disease)) { found = true; } } if (!found) { continue; } } if (AllergyFlag) { bool found = false; foreach (string allergy in item.Allergy) { if (AnalysisAllergyBox.SelectedItem.ToString().Equals(allergy)) { found = true; } } if (!found) { continue; } } if (AddictionFlag) { bool found = false; foreach (string addiction in item.Addiction) { if (AnalysisAddictionBox.SelectedItem.ToString().Equals(addiction)) { found = true; } } if (!found) { continue; } } if (VaccineFlag) { bool found = false; foreach (string vaccine in item.Vaccines.Values) { if (AnalysisVaccinationBox.SelectedItem.ToString().Equals(vaccine)) { found = true; } } if (!found) { continue; } } if (OperationFlag) { bool found = false; foreach (string operation in item.Operation) { if (AnalysisOperationsBox.SelectedItem.ToString().Equals(operation)) { found = true; } } if (!found) { continue; } } resultList.Add(item); } gridViewSource.Source = resultList; }
private async void AnalysisExportListClicked(object sender, RoutedEventArgs e) { AnalysisExportProgressRing.IsActive = true; AnalysisExportProgressRing.Visibility = Windows.UI.Xaml.Visibility.Visible; AnalysisMainGrid.Visibility = Windows.UI.Xaml.Visibility.Collapsed; //if (AnalysisDetailsGrid.Visibility == Windows.UI.Xaml.Visibility.Visible) // AnalysisDetailsGrid.Visibility = Windows.UI.Xaml.Visibility.Collapsed; //if (AnalysisGraphGridScrollViewer.Visibility == Windows.UI.Xaml.Visibility.Visible) // AnalysisGraphGridScrollViewer.Visibility = Windows.UI.Xaml.Visibility.Collapsed; this.AnalysisValidateFields(); this.AnalysisSetFlags(); this.UpdateView(); RecordGrid.SelectedItem = null; FileSavePicker savePicker = new FileSavePicker(); savePicker.SuggestedStartLocation = PickerLocationId.DocumentsLibrary; // Dropdown of file types the user can save the file as savePicker.FileTypeChoices.Add("Tabular Data", new List <string>() { ".csv" }); // Default file name if the user does not type one in or select a file to replace savePicker.SuggestedFileName = "New Document"; StorageFile file = await savePicker.PickSaveFileAsync(); if (file != null) { CachedFileManager.DeferUpdates(file); string data = ""; string columnSeparator = ", "; data += "Name, " + "Blood Group, " + "Sex, " + "Martial Status, " + "Occupation, " + "City, " + "State, " + "Addiction, " + "Operation, " + "Vaccination, " + "Family Background" + "\r\n"; foreach (AnalysisSampleDataItem item in resultList) { data += item.Name + columnSeparator; data += item.BloodGroup + columnSeparator; data += item.Sex + columnSeparator; data += ExtraModules.getMartialStatus(item.Married) + columnSeparator; data += item.Occupation + columnSeparator; data += item.City + columnSeparator; data += item.State + columnSeparator; foreach (string addiction in item.Addiction) { if (!addiction.Equals("")) { data += addiction + "; "; } } data += columnSeparator; foreach (string operation in item.Operation) { if (!operation.Equals("")) { data += operation + "; "; } } data += columnSeparator; foreach (string vaccine in item.Vaccines.Values) { if (!vaccine.Equals("")) { data += vaccine + "; "; } } data += columnSeparator; data += item.FamilyBG.Replace(",", "; ") + columnSeparator; data += "\r\n"; } // write to file await FileIO.WriteTextAsync(file, data); FileUpdateStatus status = await CachedFileManager.CompleteUpdatesAsync(file); if (status == FileUpdateStatus.Complete) { Debug.WriteLine("File " + file.Name + " was saved."); } else { Debug.WriteLine("File " + file.Name + " couldn't be saved."); } } AnalysisExportProgressRing.IsActive = false; AnalysisExportProgressRing.Visibility = Windows.UI.Xaml.Visibility.Collapsed; AnalysisMainGrid.Visibility = Windows.UI.Xaml.Visibility.Visible; //if (AnalysisDetailsGrid.Visibility == Windows.UI.Xaml.Visibility.Collapsed) //AnalysisDetailsGrid.Visibility = Windows.UI.Xaml.Visibility.Visible; //if (AnalysisGraphGridScrollViewer.Visibility == Windows.UI.Xaml.Visibility.Collapsed) // AnalysisGraphGridScrollViewer.Visibility = Windows.UI.Xaml.Visibility.Visible; AnalysisDetailsGridAnimation.Begin(); AnalysisGraphGridAnimation.Begin(); Debug.WriteLine("hi"); }
private async Task <int> InsertDetails() { double height = ((VisitHeightFeet.SelectedIndex + 1) * 12 + VisitHeightInch.SelectedIndex) * 0.0254; int weight = Int32.Parse(VisitWeight.Text.ToString()); string DateVisited = VisitYearComboBox.Items[VisitYearComboBox.SelectedIndex].ToString() + "-" + VisitMonthComboBox.Items[VisitMonthComboBox.SelectedIndex].ToString() + "-" + VisitDayComboBox.Items[VisitDayComboBox.SelectedIndex].ToString(); double bmi = ExtraModules.CalculateBMI(VisitHeightFeet.SelectedIndex + 1, VisitHeightInch.SelectedIndex, weight); try { string insertQuery = "INSERT INTO MedicalDetails (TimeStamp ,PID, DateVisited, Age, BloodGlucose, SystolicBP, DiastolicBP, DiseaseFound, Height, Weight, Symptoms, BMI) " + "VALUES (@ts, @pid, @dv, @age, @bg, @sbp, @dbp, @disease, @height, @weight, @symptoms, @bmi)"; Statement statement = await this.database.PrepareStatementAsync(insertQuery); statement.BindTextParameterWithName("@pid", this.PID); statement.BindTextParameterWithName("@ts", DateTime.Now.ToString(ExtraModules.datePatt)); statement.BindTextParameterWithName("@dv", DateVisited); statement.BindIntParameterWithName("@age", await this.GetPatientAge(this.PID)); if (!VisitBloodGlucose.Text.ToString().Equals("")) { statement.BindIntParameterWithName("@bg", Int32.Parse(VisitBloodGlucose.Text.ToString())); } else { statement.BindIntParameterWithName("@bg", 0); } if (!VisitDiastolicBP.Text.ToString().Equals("")) { statement.BindIntParameterWithName("@dbp", Int32.Parse(VisitDiastolicBP.Text.ToString())); } else { statement.BindIntParameterWithName("@dbp", 0); } if (!VisitSystolicBP.Text.ToString().Equals("")) { statement.BindIntParameterWithName("@sbp", Int32.Parse(VisitSystolicBP.Text.ToString())); } else { statement.BindIntParameterWithName("@sbp", 0); } statement.BindTextParameterWithName("@disease", VisitDiseasesDiagnosed.Text.ToString()); statement.BindDoubleParameterWithName("@height", height); statement.BindIntParameterWithName("@weight", weight); statement.BindTextParameterWithName("@symptoms", ExtraModules.RemoveExtraCommas(ExtraModules.RemoveStringNewLine(VisitSymptoms.Text.ToString()))); statement.BindDoubleParameterWithName("@bmi", bmi); await statement.StepAsync(); } catch (Exception ex) { var result = SQLiteWinRT.Database.GetSqliteErrorCode(ex.HResult); Debug.WriteLine("CREATE_NEW_VISIT---INSERT_DETAILS---MEDIC_DETAILS" + "\n" + ex.Message + "\n" + result.ToString()); } try { string insertMedicine = "INSERT INTO MedicalDetailsMedicine (TimeStamp, PID, DateVisited, Medicine) VALUES (@ts, @pid, @dv, @medicine)"; foreach (string str in ExtraModules.RemoveExtraCommas(ExtraModules.RemoveStringNewLine(VisitMedicineGiven.Text.ToString())).Split(',')) { Statement statement = await this.database.PrepareStatementAsync(insertMedicine); statement.BindTextParameterWithName("@pid", this.PID); statement.BindTextParameterWithName("@ts", DateTime.Now.ToString(ExtraModules.datePatt)); statement.BindTextParameterWithName("@dv", DateVisited); statement.BindTextParameterWithName("@medicine", ExtraModules.removesemicolon(str)); await statement.StepAsync(); statement.Reset(); } } catch (Exception ex) { var result = SQLiteWinRT.Database.GetSqliteErrorCode(ex.HResult); Debug.WriteLine("CREATE_NEW_VISIT---INSERT_DETAILS---MEDIC_DETAILS_MEDICINE" + "\n" + ex.Message + "\n" + result.ToString()); } try { string insertVaccine = "INSERT INTO MedicalDetailsVaccine (TimeStamp, PID, DateVisited, Vaccine) VALUES (@ts, @pid, @dv, @vaccine)"; foreach (string str in ExtraModules.RemoveExtraCommas(ExtraModules.RemoveStringNewLine(VisitVaccine.Text.ToString())).Split(',')) { Statement statement = await this.database.PrepareStatementAsync(insertVaccine); statement.BindTextParameterWithName("@pid", this.PID); statement.BindTextParameterWithName("@ts", DateTime.Now.ToString(ExtraModules.datePatt)); statement.BindTextParameterWithName("@dv", DateVisited); statement.BindTextParameterWithName("@vaccine", ExtraModules.removesemicolon(str)); await statement.StepAsync(); statement.Reset(); } this.ocString.Add(DateVisited); } catch (Exception ex) { var result = SQLiteWinRT.Database.GetSqliteErrorCode(ex.HResult); Debug.WriteLine("CREATE_NEW_VISIT---UPDATE_DETAILS---MEDIC_DETAILS_VACCINE" + "\n" + ex.Message + "\n" + result.ToString()); } this.ClearAllFields(); VisitListBox.SelectedIndex = this.ocString.IndexOf(DateVisited); if (this.ocString.Count() == 1) { this.visibleStackPanels(); } return(DBConnect.RESULT_OK); }
//////////////////////This methods are for Buttons click events in Dialog Box opened. private async void docKitDialogSave(object sender, RoutedEventArgs e) { if (isDiseaseSelected) { if (docKitDName.Text.Equals("") || docKitDSymptoms.Text.Equals("") || docKitDDescription.Text.Equals("") || docKitDImage.Text.Equals("")) { docKitErrorDescription.Visibility = Windows.UI.Xaml.Visibility.Visible; } else { if (decodedImage != null) { if (isUpdating == true) { //Find that object's instance and change its values if (docKitListBox.SelectedItem != null) { BasicDiseases tempDisease = await diseaseMethods.FindSingleDisease(this.ocString[docKitListBox.SelectedIndex].ToString()); tempDisease.Name = docKitDName.Text; tempDisease.Description = docKitDDescription.Text; tempDisease.Image = decodedImage; tempDisease.Symptoms = docKitDSymptoms.Text; docKitDSymptoms.Text = ExtraModules.RemoveExtraCommas(docKitDSymptoms.Text); tempDisease.Symptoms = docKitDSymptoms.Text; await diseaseMethods.UpdateDisease(tempDisease); isUpdating = false; docKitDName.IsReadOnly = false; await this.UpdateDiseaseData(tempDisease); } } else { await diseaseMethods.InsertDisease(new BasicDiseases() { Name = docKitDName.Text, Description = docKitDDescription.Text, Symptoms = ExtraModules.RemoveExtraCommas(docKitDSymptoms.Text), Image = decodedImage }); this.ocString.Add(docKitDName.Text); docKitListBox.SelectedIndex = this.ocString.IndexOf(docKitDName.Text); if (ocString.Count() == 1) { this.showDiseaseItems(); await this.UpdateDiseaseData(new BasicDiseases() { Name = docKitDName.Text, Description = docKitDDescription.Text, Symptoms = ExtraModules.RemoveExtraCommas(docKitDSymptoms.Text), Image = decodedImage }); docKitDelBut.IsEnabled = true; docKitEditBut.IsEnabled = true; } } docKitDialog.IsOpen = false; //After everything is stored/Updated in database we need to reset all the fields. this.ClearFormFields(); } } } else { if (docKitFAName.Text.Equals("") || docKitFASymptoms.Text.Equals("") || docKitFADescription.Text.Equals("") || docKitFAImage.Text.Equals("")) { docKitFAErrorDescription.Visibility = Windows.UI.Xaml.Visibility.Visible; } else { if (isUpdating == true) { if (docKitListBox.SelectedItem != null) { //Find that object's instance and change its values BasicFirstAid tempFirstAid = await firstAidMethods.FindSingleFirstAid(this.ocString[docKitListBox.SelectedIndex].ToString()); tempFirstAid.Name = docKitFAName.Text; tempFirstAid.FirstAid = docKitFADescription.Text; tempFirstAid.Image = decodedImage; tempFirstAid.DoNot = docKitFASymptoms.Text; await firstAidMethods.UpdateFirstAid(tempFirstAid); isUpdating = false; docKitFAName.IsReadOnly = false; await this.UpdateFirstAidData(tempFirstAid); } } else { await firstAidMethods.InsertFirstAid(new BasicFirstAid() { Name = docKitFAName.Text, FirstAid = docKitFADescription.Text, DoNot = docKitFASymptoms.Text, Image = decodedImage }); this.ocString.Add(docKitFAName.Text); docKitListBox.SelectedIndex = this.ocString.IndexOf(docKitFAName.Text); if (ocString.Count() == 1) { this.showFirstAidItems(); await this.UpdateFirstAidData(new BasicFirstAid() { Name = docKitFAName.Text, FirstAid = docKitFADescription.Text, DoNot = docKitFASymptoms.Text, Image = decodedImage }); docKitDelBut.IsEnabled = true; docKitEditBut.IsEnabled = true; } } docKitDialogFirstAid.IsOpen = false; //After everything is stored/Updated in database we need to reset all the fields. this.ClearFormFields(); } } }
public static string getFileDataForAnalysisItem(AnalysisSampleDataItem selectedItem) { if (selectedItem == null) { return ""; } string data = ""; string columnSeparator = ", "; string lineSeparator = "\r\n"; data += "Name" + columnSeparator; data += selectedItem.Name + columnSeparator + lineSeparator; data += "Blood Group" + columnSeparator; data += selectedItem.BloodGroup + columnSeparator + lineSeparator; data += "Sex " + columnSeparator; data += selectedItem.Sex + columnSeparator + lineSeparator; data += "Martial Status " + columnSeparator; data += ExtraModules.getMartialStatus(selectedItem.Married) + columnSeparator + lineSeparator; data += "Occupation" + columnSeparator; data += selectedItem.Occupation + columnSeparator + lineSeparator; data += lineSeparator + "Allergies"; foreach (string allergy in selectedItem.Allergy) { data += columnSeparator; data += allergy + columnSeparator + lineSeparator; } data += lineSeparator + "Addiction"; foreach (string addiction in selectedItem.Addiction) { data += columnSeparator; data += addiction + columnSeparator + lineSeparator; } data += lineSeparator + "Operation"; foreach (string operation in selectedItem.Operation) { data += columnSeparator; data += operation + columnSeparator + lineSeparator; } if (selectedItem.DatesVisited.Count > 0) { data += lineSeparator + "Visits" + lineSeparator; foreach (string date in selectedItem.DatesVisited) { data += date + columnSeparator; string disease = ""; selectedItem.Diseases.TryGetValue(date, out disease); string vaccine = ""; selectedItem.Vaccines.TryGetValue(date, out vaccine); data += disease + columnSeparator + vaccine + lineSeparator; } } return data; }