public void Menu() { int flag = 1; while (flag != 0) { Console.WriteLine("\nType keywords to perform Action\n Add \tDisplay \tUpdate \tSearch \tDelete \tExit"); string choice = Console.ReadLine(); switch (choice.ToLower()) { case "add": contactDB.Insert(ContactDetails()); break; case "display": contactDB.Display(); break; case "update": Console.WriteLine("Enter the name whose Constact is to be Updated"); contactDB.Update(Console.ReadLine()); break; case "search": contactDB.SearchByName(Console.ReadLine()); break; case "delete": contactDB.Delete(Console.ReadLine()); break; case "exit": flag = 0; break; default: Console.WriteLine("Enter Proper KeyWord"); break; } } }
public bool DeleteContact(Contact contacts) { return(contact.Delete(contacts)); }
protected void CreatePatientButton_Click(object sender, EventArgs e) { if (!ddlDOBValidateAllSet.IsValid) { return; } int person_id = -1; int patient_id = -1; int register_patient_id = -1; bool patient_added = false; int mainDbUserID = -1; int phone_id = -1; int email_id = -1; bool contacts_added = false; try { string[] clinicInfo = ddlClinic.SelectedValue.Split(new string[] { "__" }, StringSplitOptions.None); string dbID = clinicInfo[0]; int siteID = Convert.ToInt32(clinicInfo[1]); int orgID = Convert.ToInt32(clinicInfo[2]); Session["DB"] = dbID; Session["SystemVariables"] = SystemVariableDB.GetAll(); txtEmailAddr.Text = txtEmailAddr.Text.Trim(); txtPhoneNumber.Text = txtPhoneNumber.Text.Trim(); if (!Utilities.IsValidEmailAddress(txtEmailAddr.Text)) { throw new CustomMessageException("Email must be in valid email format."); } txtLogin.Text = txtLogin.Text.Trim(); txtPwd.Text = txtPwd.Text.Trim(); txtFirstname.Text = txtFirstname.Text.Trim(); txtSurname.Text = txtSurname.Text.Trim(); // check if patient exists in the system, if so use existing patietn bool patientAlreadyExists = false; // check if email exists in the system if (!patientAlreadyExists) { if (ExistsAndCreatedLogin_FromEmail(orgID, txtPhoneNumber.Text, txtEmailAddr.Text, siteID, ref register_patient_id, ref phone_id, ref email_id)) { patientAlreadyExists = true; patient_added = true; contacts_added = true; this.lblErrorMessage.Text = "Your email alrady exist in this sytem.<br/>An email has been sent with new login details.<br/>When you receieve it, use the login link below."; } } // check if firstname / surname / DOB exists in the system if (!patientAlreadyExists) { if (ExistsAndCreatedLogin_FromNameAndDOB(orgID, txtPhoneNumber.Text, txtEmailAddr.Text, txtFirstname.Text, txtSurname.Text, GetDOBFromForm(), siteID, ref register_patient_id, ref phone_id, ref email_id)) { patientAlreadyExists = true; patient_added = true; contacts_added = true; this.lblErrorMessage.Text = "You alrady exist in this sytem.<br/>An email has been sent with new login details.<br/>When you receieve it, use the login link below."; } } if (!patientAlreadyExists) { if (!Convert.ToBoolean(ConfigurationManager.AppSettings["UseConfigDB"]) && UserDatabaseMapperDB.UsernameExists(txtLogin.Text)) { throw new CustomMessageException("Login name already in use. Please choose another"); } if (PatientDB.LoginExists(txtLogin.Text)) { throw new CustomMessageException("Login name already in use. Please choose another"); } // 1. Create Patient Staff loggedInStaff = StaffDB.GetByID(-6); person_id = PersonDB.Insert(loggedInStaff.Person.PersonID, Convert.ToInt32(ddlTitle.SelectedValue), Utilities.FormatName(txtFirstname.Text), "", Utilities.FormatName(txtSurname.Text), "", ddlGender.SelectedValue, GetDOBFromForm()); patient_id = PatientDB.Insert(person_id, true, false, false, "", -1, DateTime.MinValue, "", "", DateTime.MinValue, false, false, DateTime.MinValue, -1, -1, txtLogin.Text, txtPwd.Text, false, "", "", "", ""); register_patient_id = RegisterPatientDB.Insert(orgID, patient_id); patient_added = true; // added this because was throwing a thread aborted exception after patient added before Response.Redirect if (!Convert.ToBoolean(ConfigurationManager.AppSettings["UseConfigDB"])) { if (txtLogin.Text.Length > 0) { mainDbUserID = UserDatabaseMapperDB.Insert(txtLogin.Text, Session["DB"].ToString()); } } // 2. Add Contact Info Patient patient = PatientDB.GetByID(patient_id); phone_id = AddPhoneNbrIfNotExists(patient, siteID, txtPhoneNumber.Text); email_id = AddEmailIfNotExists(patient, siteID, txtEmailAddr.Text); register_patient_id = AddOrgIfNotExists(patient, siteID, orgID); contacts_added = true; SendInfoEmail(txtEmailAddr.Text, txtLogin.Text, txtPwd.Text); this.lblErrorMessage.Text = "An email has been sent with new login details.<br />When you receieve it, use the login link below."; } } catch (Exception ex) { if (!patient_added || !contacts_added) { // roll back - backwards of creation order if (Utilities.GetAddressType().ToString() == "Contact") { ContactDB.Delete(phone_id); ContactDB.Delete(email_id); } else if (Utilities.GetAddressType().ToString() == "ContactAus") { ContactAusDB.Delete(phone_id); ContactAusDB.Delete(email_id); } else { throw new Exception("Unknown AddressType in config: " + Utilities.GetAddressType().ToString().ToString()); } RegisterPatientDB.Delete(register_patient_id); PatientDB.Delete(patient_id); PersonDB.Delete(person_id); if (!Convert.ToBoolean(ConfigurationManager.AppSettings["UseConfigDB"])) { UserDatabaseMapperDB.Delete(mainDbUserID); } if (ex is CustomMessageException) { this.lblErrorMessage.Text = ex.Message; } else { lblErrorMessage.Text = ex.ToString(); } } } finally { //Session["DB"] = curDbName; //Session["SystemVariables"] = SystemVariableDB.GetAll(); Session.Remove("DB"); Session.Remove("SystemVariables"); } }
protected void btnSubmit_Click(object sender, EventArgs e) { // need to be able to roll back .. so keep id's same as invoice int person_id = -1; int referrer_id = -1; int new_org_id = 0; bool referrer_added = false; int address_id = -1; int phone_id1 = -1; int phone_id2 = -1; int email_id = -1; bool contacts_added = false; try { // add referrer if (lblId.Text == "-1") // add new referrer { Staff loggedInStaff = StaffDB.GetByID(Convert.ToInt32(Session["StaffID"])); person_id = PersonDB.Insert(loggedInStaff.Person.PersonID, Convert.ToInt32(ddlTitle.SelectedValue), Utilities.FormatName(txtFirstname.Text), Utilities.FormatName(txtMiddlename.Text), Utilities.FormatName(txtSurname.Text), "", ddlGender.SelectedValue, new DateTime(1900, 1, 1)); referrer_id = ReferrerDB.Insert(person_id); } else // set existing referrer { referrer_id = Convert.ToInt32(lblId.Text); } // get org (or add new org) int org_id = 0; if (orgsListRow.Visible) { org_id = Convert.ToInt32(ddlOrgsList.SelectedValue); } else { org_id = new_org_id = OrganisationDB.InsertExtOrg(191, txtOrgName.Text, txtOrgACN.Text, txtOrgABN.Text, false, false, "", txtOrgComments.Text); // add contact info Organisation org = OrganisationDB.GetByID(org_id); if (Utilities.GetAddressType().ToString() == "Contact") { if (txtAddressAddrLine1.Text.Trim().Length > 0 || txtAddressAddrLine2.Text.Trim().Length > 0) { address_id = ContactDB.Insert(org.EntityID, Convert.ToInt32(ddlAddressContactType.SelectedValue), txtAddressFreeText.Text, txtAddressAddrLine1.Text, txtAddressAddrLine2.Text, Convert.ToInt32(ddlAddressAddressChannel.SelectedValue), //Convert.ToInt32(ddlAddressSuburb.SelectedValue), Convert.ToInt32(suburbID.Value), Convert.ToInt32(ddlAddressCountry.SelectedValue), Convert.ToInt32(Session["SiteID"]), true, true); } if (txtPhoneNumber1.Text.Trim().Length > 0) { phone_id1 = ContactDB.Insert(org.EntityID, Convert.ToInt32(ddlPhoneNumber1.SelectedValue), txtPhoneNumber1FreeText.Text, System.Text.RegularExpressions.Regex.Replace(txtPhoneNumber1.Text, "[^0-9]", ""), string.Empty, -1, -1, -1, Convert.ToInt32(Session["SiteID"]), true, true); } if (txtPhoneNumber2.Text.Trim().Length > 0) { phone_id2 = ContactDB.Insert(org.EntityID, Convert.ToInt32(ddlPhoneNumber2.SelectedValue), txtPhoneNumber2FreeText.Text, System.Text.RegularExpressions.Regex.Replace(txtPhoneNumber2.Text, "[^0-9]", ""), string.Empty, -1, -1, -1, Convert.ToInt32(Session["SiteID"]), true, true); } if (txtEmailAddrLine1.Text.Trim().Length > 0) { email_id = ContactDB.Insert(org.EntityID, Convert.ToInt32(ddlEmailContactType.SelectedValue), "", txtEmailAddrLine1.Text, string.Empty, -1, -1, -1, Convert.ToInt32(Session["SiteID"]), true, true); } } else if (Utilities.GetAddressType().ToString() == "ContactAus") { if (txtAddressAddrLine1.Text.Trim().Length > 0 || txtAddressAddrLine2.Text.Trim().Length > 0) { address_id = ContactAusDB.Insert(org.EntityID, Convert.ToInt32(ddlAddressContactType.SelectedValue), txtAddressFreeText.Text, txtAddressAddrLine1.Text, txtAddressAddrLine2.Text, txtStreet.Text, Convert.ToInt32(ddlAddressAddressChannelType.SelectedValue), //Convert.ToInt32(ddlAddressSuburb.SelctedValue), Convert.ToInt32(suburbID.Value), Convert.ToInt32(ddlAddressCountry.SelectedValue), Convert.ToInt32(Session["SiteID"]), true, true); } if (txtPhoneNumber1.Text.Trim().Length > 0) { phone_id1 = ContactAusDB.Insert(org.EntityID, Convert.ToInt32(ddlPhoneNumber1.SelectedValue), txtPhoneNumber1FreeText.Text, System.Text.RegularExpressions.Regex.Replace(txtPhoneNumber1.Text, "[^0-9]", ""), string.Empty, string.Empty, -1, -1, -1, Convert.ToInt32(Session["SiteID"]), true, true); } if (txtPhoneNumber2.Text.Trim().Length > 0) { phone_id2 = ContactAusDB.Insert(org.EntityID, Convert.ToInt32(ddlPhoneNumber2.SelectedValue), txtPhoneNumber2FreeText.Text, System.Text.RegularExpressions.Regex.Replace(txtPhoneNumber2.Text, "[^0-9]", ""), string.Empty, string.Empty, -1, -1, -1, Convert.ToInt32(Session["SiteID"]), true, true); } if (txtEmailAddrLine1.Text.Trim().Length > 0) { email_id = ContactAusDB.Insert(org.EntityID, Convert.ToInt32(ddlEmailContactType.SelectedValue), "", txtEmailAddrLine1.Text, string.Empty, string.Empty, -1, -1, -1, Convert.ToInt32(Session["SiteID"]), true, true); } } else { throw new Exception("Unknown AddressType in config: " + Utilities.GetAddressType().ToString().ToString()); } } contacts_added = true; // join association RegisterReferrerDB.Insert(org_id, referrer_id, txtProviderNumber.Text, chkIsReportEveryVisit.Checked, chkIsBatchSendAllPatientsTreatmentNotes.Checked); referrer_added = true; if (GetUrlIsPopup()) { Page.ClientScript.RegisterStartupScript(this.GetType(), "close", "<script language=javascript>window.returnValue=false;self.close();</script>"); } else { Response.Redirect("~/ReferrerList_DoctorClinicV2.aspx?surname_search=" + Utilities.FormatName(txtSurname.Text) + "&surname_starts_with=1", false); return; } } catch (Exception) { // roll back - backwards of creation order if (Utilities.GetAddressType().ToString() == "Contact") { ContactDB.Delete(address_id); ContactDB.Delete(phone_id1); ContactDB.Delete(phone_id2); ContactDB.Delete(email_id); } else if (Utilities.GetAddressType().ToString() == "ContactAus") { ContactAusDB.Delete(address_id); ContactAusDB.Delete(phone_id1); ContactAusDB.Delete(phone_id2); ContactAusDB.Delete(email_id); } else { throw new Exception("Unknown AddressType in config: " + Utilities.GetAddressType().ToString().ToString()); } OrganisationDB.Delete(new_org_id); ReferrerDB.Delete(referrer_id); PersonDB.Delete(person_id); throw; } }