private void FillData() { Referral referral = Referrals.GetReferral(RefAttachCur.ReferralNum); textName.Text = referral.LName + ", " + referral.FName + " " + referral.MName; checkPatient.Checked = referral.PatNum > 0; textNotes.Text = referral.Note; if (RefAttachCur.IsFrom) { radioFrom.Checked = true; } else { radioTo.Checked = true; } if (RefAttachCur.RefDate.CompareTo(new DateTime(1880, 1, 1)) < 0) { textRefDate.Text = ""; } else { textRefDate.Text = RefAttachCur.RefDate.ToShortDateString(); } textOrder.Text = RefAttachCur.ItemOrder.ToString(); }
private void butSlip_Click(object sender, EventArgs e) { int idx = gridMain.GetSelectedIndex(); if (idx == -1) { MsgBox.Show(this, "Please select a referral first"); return; } Referral referral = Referrals.GetReferral(RefAttachList[idx].ReferralNum); SheetDef sheetDef; if (referral.Slip == 0) { sheetDef = SheetsInternal.GetSheetDef(SheetInternalType.ReferralSlip); } else { sheetDef = SheetDefs.GetSheetDef(referral.Slip); } Sheet sheet = SheetUtil.CreateSheet(sheetDef, PatNum); SheetParameter.SetParameter(sheet, "PatNum", PatNum); SheetParameter.SetParameter(sheet, "ReferralNum", referral.ReferralNum); SheetFiller.FillFields(sheet); SheetUtil.CalculateHeights(sheet, this.CreateGraphics()); FormSheetFillEdit FormS = new FormSheetFillEdit(sheet); FormS.ShowDialog(); //grid will not be refilled, so no need to reselect. }
private void FillData() { Referral referral = Referrals.GetReferral(RefAttachCur.ReferralNum); textName.Text = referral.LName + ", " + referral.FName + " " + referral.MName; checkPatient.Checked = referral.PatNum > 0; textReferralNotes.Text = referral.Note; if (RefAttachCur.IsFrom) { radioFrom.Checked = true; } else { radioTo.Checked = true; } if (RefAttachCur.RefDate.CompareTo(new DateTime(1880, 1, 1)) < 0) { textRefDate.Text = ""; } else { textRefDate.Text = RefAttachCur.RefDate.ToShortDateString(); } textOrder.Text = RefAttachCur.ItemOrder.ToString(); comboRefToStatus.Items.Clear(); for (int i = 0; i < Enum.GetNames(typeof(ReferralToStatus)).Length; i++) { comboRefToStatus.Items.Add(Lan.g("enumReferralToStatus", Enum.GetNames(typeof(ReferralToStatus))[i])); if ((int)RefAttachCur.RefToStatus == i) { comboRefToStatus.SelectedIndex = i; } } textNote.Text = RefAttachCur.Note; }
private void butEdit_Click(object sender, System.EventArgs e) { Referral referral = Referrals.GetReferral(RefAttachCur.ReferralNum); //if(referral.PatNum > 0){//moved to inside the class // FormRE.IsPatient=true; //} FormReferralEdit FormRE = new FormReferralEdit(referral); FormRE.ShowDialog(); Referrals.Refresh(); FillData(); }
private void FillData() { Referral referral = Referrals.GetReferral(RefAttachCur.ReferralNum); textName.Text = referral.GetNameFL(); labelPatient.Visible = referral.PatNum > 0; textReferralNotes.Text = referral.Note; if (RefAttachCur.IsFrom) { listFromTo.SelectedIndex = 0; } else { listFromTo.SelectedIndex = 1; } if (RefAttachCur.RefDate.Year < 1880) { textRefDate.Text = ""; } else { textRefDate.Text = RefAttachCur.RefDate.ToShortDateString(); } textOrder.Text = RefAttachCur.ItemOrder.ToString(); comboRefToStatus.Items.Clear(); for (int i = 0; i < Enum.GetNames(typeof(ReferralToStatus)).Length; i++) { comboRefToStatus.Items.Add(Lan.g("enumReferralToStatus", Enum.GetNames(typeof(ReferralToStatus))[i])); if ((int)RefAttachCur.RefToStatus == i) { comboRefToStatus.SelectedIndex = i; } } textNote.Text = RefAttachCur.Note; checkIsTransitionOfCare.Checked = RefAttachCur.IsTransitionOfCare; textProc.Text = ""; if (RefAttachCur.ProcNum != 0) { Procedure proc = Procedures.GetOneProc(RefAttachCur.ProcNum, false); textProc.Text = Procedures.GetDescription(proc); } if (RefAttachCur.DateProcComplete.Year < 1880) { textDateProcCompleted.Text = ""; } else { textDateProcCompleted.Text = RefAttachCur.DateProcComplete.ToShortDateString(); } }
private void butEdit_Click(object sender, System.EventArgs e) { try{ SaveData(); } catch (ApplicationException ex) { MessageBox.Show(ex.Message); return; } Referral referral = Referrals.GetReferral(RefAttachCur.ReferralNum); FormReferralEdit FormRE = new FormReferralEdit(referral); FormRE.ShowDialog(); Referrals.Refresh(); FillData(); }
///<summary>Pass in all the refattaches for the patient. This funtion finds the first referral from a Dr and returns that Dr's name. Used in specialty practices. Function is only used right now in the Dr. Ceph bridge.</summary> public static string GetReferringDr(RefAttach[] attachList) { if (attachList.Length == 0) { return(""); } if (!attachList[0].IsFrom) { return(""); } Referral referral = Referrals.GetReferral(attachList[0].ReferralNum); if (referral.PatNum != 0) { return(""); } string retVal = referral.FName + " " + referral.MName + " " + referral.LName; if (referral.Title != "") { retVal += ", " + referral.Title; } return(retVal); }
private void butPrint_Click(object sender, EventArgs e) { if (!TryToSaveData()) { return; } SheetCur = Sheets.GetSheet(SheetCur.SheetNum); //whether this is a new sheet, or one pulled from the database, //it will have the extra parameter we are looking for. //A new sheet will also have a PatNum parameter which we will ignore. FormSheetOutputFormat FormS = new FormSheetOutputFormat(); if (SheetCur.SheetType == SheetTypeEnum.ReferralSlip || SheetCur.SheetType == SheetTypeEnum.ReferralLetter) { FormS.PaperCopies = 2; } else { FormS.PaperCopies = 1; } if (SheetCur.PatNum != 0 && SheetCur.SheetType != SheetTypeEnum.DepositSlip) { Patient pat = Patients.GetPat(SheetCur.PatNum); if (SheetCur.SheetType == SheetTypeEnum.LabSlip) { FormS.IsForLab = true; //Changes label to "E-mail to Lab:" } else if (pat.Email != "") { FormS.EmailPatOrLabAddress = pat.Email; //No need to email to a patient for sheet types: LabelPatient (0), LabelCarrier (1), LabelReferral (2), ReferralSlip (3), LabelAppointment (4), Rx (5), Consent (6), ReferralLetter (8), ExamSheet (13), DepositSlip (14) //The data is too private to email unencrypted for sheet types: PatientForm (9), RoutingSlip (10), MedicalHistory (11), LabSlip (12) //A patient might want email for the following sheet types and the data is not very private: PatientLetter (7) if (SheetCur.SheetType == SheetTypeEnum.PatientLetter) { //This just defines the default selection. The user can manually change selections in FormSheetOutputFormat. FormS.EmailPatOrLab = true; FormS.PaperCopies--; } } } Referral referral = null; if (SheetCur.SheetType == SheetTypeEnum.ReferralSlip || SheetCur.SheetType == SheetTypeEnum.ReferralLetter) { FormS.Email2Visible = true; SheetParameter parameter = SheetParameter.GetParamByName(SheetCur.Parameters, "ReferralNum"); if (parameter == null) //it can be null sometimes because of old bug in db. { FormS.Email2Visible = false; //prevents trying to attach email to nonexistent referral. } else { long referralNum = PIn.Long(parameter.ParamValue.ToString()); referral = Referrals.GetReferral(referralNum); if (referral.EMail != "") { FormS.Email2Address = referral.EMail; FormS.Email2 = true; FormS.PaperCopies--; } } } else { FormS.Email2Visible = false; } FormS.ShowDialog(); if (FormS.DialogResult != DialogResult.OK) { return; } if (FormS.PaperCopies > 0) { SheetPrinting.Print(SheetCur, FormS.PaperCopies, RxIsControlled); } EmailMessage message; Random rnd = new Random(); string attachPath = EmailMessages.GetEmailAttachPath(); string fileName; string filePathAndName; EmailAddress emailAddress; Patient patCur = Patients.GetPat(SheetCur.PatNum); if (patCur == null) { emailAddress = EmailAddresses.GetByClinic(0); } else { emailAddress = EmailAddresses.GetByClinic(patCur.ClinicNum); } //Graphics g=this.CreateGraphics(); if (FormS.EmailPatOrLab) { fileName = DateTime.Now.ToString("yyyyMMdd") + "_" + DateTime.Now.TimeOfDay.Ticks.ToString() + rnd.Next(1000).ToString() + ".pdf"; filePathAndName = ODFileUtils.CombinePaths(attachPath, fileName); SheetPrinting.CreatePdf(SheetCur, filePathAndName); //Process.Start(filePathAndName); message = new EmailMessage(); message.PatNum = SheetCur.PatNum; message.ToAddress = FormS.EmailPatOrLabAddress; message.FromAddress = emailAddress.SenderAddress; //Can be blank just as it could with the old pref. message.Subject = SheetCur.Description.ToString(); //this could be improved EmailAttach attach = new EmailAttach(); string shortFileName = Regex.Replace(SheetCur.Description.ToString(), @"[^\w'@-_()&]", ""); attach.DisplayedFileName = shortFileName + ".pdf"; attach.ActualFileName = fileName; message.Attachments.Add(attach); FormEmailMessageEdit FormE = new FormEmailMessageEdit(message); FormE.IsNew = true; FormE.ShowDialog(); } if ((SheetCur.SheetType == SheetTypeEnum.ReferralSlip || SheetCur.SheetType == SheetTypeEnum.ReferralLetter) && FormS.Email2) { //email referral fileName = DateTime.Now.ToString("yyyyMMdd") + "_" + DateTime.Now.TimeOfDay.Ticks.ToString() + rnd.Next(1000).ToString() + ".pdf"; filePathAndName = ODFileUtils.CombinePaths(attachPath, fileName); SheetPrinting.CreatePdf(SheetCur, filePathAndName); //Process.Start(filePathAndName); message = new EmailMessage(); message.PatNum = SheetCur.PatNum; message.ToAddress = FormS.Email2Address; message.FromAddress = emailAddress.SenderAddress; //Can be blank just as it could with the old pref. message.Subject = Lan.g(this, "RE: ") + Patients.GetLim(SheetCur.PatNum).GetNameLF(); //works even if patnum invalid //SheetCur.Description.ToString()+" to "+Referrals.GetNameFL(referral.ReferralNum);//this could be improved EmailAttach attach = new EmailAttach(); string shortFileName = Regex.Replace(SheetCur.Description.ToString(), @"[^\w,'@-_()&]", ""); attach.DisplayedFileName = shortFileName + ".pdf"; attach.ActualFileName = fileName; message.Attachments.Add(attach); FormEmailMessageEdit FormE = new FormEmailMessageEdit(message); FormE.IsNew = true; FormE.ShowDialog(); } //g.Dispose(); DialogResult = DialogResult.OK; }
private void FillGrid() { RefAttachList = RefAttaches.RefreshFiltered(PatNum, checkShowAll.Checked, ProcNum); gridMain.BeginUpdate(); gridMain.Columns.Clear(); ODGridColumn col = new ODGridColumn(Lan.g("TableRefList", "From/To"), 50); gridMain.Columns.Add(col); col = new ODGridColumn(Lan.g("TableRefList", "Name"), 120); gridMain.Columns.Add(col); col = new ODGridColumn(Lan.g("TableRefList", "Date"), 70); gridMain.Columns.Add(col); col = new ODGridColumn(Lan.g("TableRefList", "Status"), 90); gridMain.Columns.Add(col); col = new ODGridColumn(Lan.g("TableRefList", "Proc"), 120); gridMain.Columns.Add(col); col = new ODGridColumn(Lan.g("TableRefList", "Note"), 200); gridMain.Columns.Add(col); col = new ODGridColumn(Lan.g("TableRefList", "Email"), 120); gridMain.Columns.Add(col); gridMain.Rows.Clear(); ODGridRow row; //Referral referral; for (int i = 0; i < RefAttachList.Count; i++) { row = new ODGridRow(); if (RefAttachList[i].IsFrom) { row.Cells.Add(Lan.g(this, "From")); } else { row.Cells.Add(Lan.g(this, "To")); } row.Cells.Add(Referrals.GetNameFL(RefAttachList[i].ReferralNum)); //referral=ReferralL.GetReferral(RefAttachList[i].ReferralNum); if (RefAttachList[i].RefDate.Year < 1880) { row.Cells.Add(""); } else { row.Cells.Add(RefAttachList[i].RefDate.ToShortDateString()); } row.Cells.Add(Lan.g("enumReferralToStatus", RefAttachList[i].RefToStatus.ToString())); if (RefAttachList[i].ProcNum == 0) { row.Cells.Add(""); } else { Procedure proc = Procedures.GetOneProc(RefAttachList[i].ProcNum, false); string str = Procedures.GetDescription(proc); row.Cells.Add(str); } row.Cells.Add(RefAttachList[i].Note); Referral referral = Referrals.GetReferral(RefAttachList[i].ReferralNum); row.Cells.Add(referral.EMail); gridMain.Rows.Add(row); } gridMain.EndUpdate(); }
private void butPrint_Click(object sender, EventArgs e) { if (!TryToSaveData()) { return; } SheetCur = Sheets.GetSheet(SheetCur.SheetNum); //whether this is a new sheet, or one pulled from the database, //it will have the extra parameter we are looking for. //A new sheet will also have a PatNum parameter which we will ignore. FormSheetOutputFormat FormS = new FormSheetOutputFormat(); if (SheetCur.SheetType == SheetTypeEnum.ReferralSlip || SheetCur.SheetType == SheetTypeEnum.ReferralLetter) { FormS.PaperCopies = 2; } else { FormS.PaperCopies = 1; } if (SheetCur.PatNum != 0 && SheetCur.SheetType != SheetTypeEnum.DepositSlip) { Patient pat = Patients.GetPat(SheetCur.PatNum); if (SheetCur.SheetType == SheetTypeEnum.LabSlip) { FormS.IsForLab = true; //Changes label to "E-mail to Lab:" } else if (pat.Email != "") { FormS.EmailPatOrLabAddress = pat.Email; FormS.EmailPatOrLab = true; FormS.PaperCopies--; } } Referral referral = null; if (SheetCur.SheetType == SheetTypeEnum.ReferralSlip || SheetCur.SheetType == SheetTypeEnum.ReferralLetter) { FormS.Email2Visible = true; SheetParameter parameter = SheetParameter.GetParamByName(SheetCur.Parameters, "ReferralNum"); if (parameter == null) //it can be null sometimes because of old bug in db. { FormS.Email2Visible = false; //prevents trying to attach email to nonexistent referral. } else { long referralNum = PIn.Long(parameter.ParamValue.ToString()); referral = Referrals.GetReferral(referralNum); if (referral.EMail != "") { FormS.Email2Address = referral.EMail; FormS.Email2 = true; FormS.PaperCopies--; } } } else { FormS.Email2Visible = false; } FormS.ShowDialog(); if (FormS.DialogResult != DialogResult.OK) { return; } if (FormS.PaperCopies > 0) { SheetPrinting.Print(SheetCur, FormS.PaperCopies, RxIsControlled); } EmailMessage message; Random rnd = new Random(); string attachPath = FormEmailMessageEdit.GetAttachPath(); string fileName; string filePathAndName; //Graphics g=this.CreateGraphics(); if (FormS.EmailPatOrLab) { fileName = DateTime.Now.ToString("yyyyMMdd") + "_" + DateTime.Now.TimeOfDay.Ticks.ToString() + rnd.Next(1000).ToString() + ".pdf"; filePathAndName = ODFileUtils.CombinePaths(attachPath, fileName); SheetPrinting.CreatePdf(SheetCur, filePathAndName); //Process.Start(filePathAndName); message = new EmailMessage(); message.PatNum = SheetCur.PatNum; message.ToAddress = FormS.EmailPatOrLabAddress; message.FromAddress = PrefC.GetString(PrefName.EmailSenderAddress); message.Subject = SheetCur.Description.ToString(); //this could be improved EmailAttach attach = new EmailAttach(); string shortFileName = Regex.Replace(SheetCur.Description.ToString(), @"[^\w'@-_()&]", ""); attach.DisplayedFileName = shortFileName + ".pdf"; attach.ActualFileName = fileName; message.Attachments.Add(attach); FormEmailMessageEdit FormE = new FormEmailMessageEdit(message); FormE.IsNew = true; FormE.ShowDialog(); } if ((SheetCur.SheetType == SheetTypeEnum.ReferralSlip || SheetCur.SheetType == SheetTypeEnum.ReferralLetter) && FormS.Email2) { //email referral fileName = DateTime.Now.ToString("yyyyMMdd") + "_" + DateTime.Now.TimeOfDay.Ticks.ToString() + rnd.Next(1000).ToString() + ".pdf"; filePathAndName = ODFileUtils.CombinePaths(attachPath, fileName); SheetPrinting.CreatePdf(SheetCur, filePathAndName); //Process.Start(filePathAndName); message = new EmailMessage(); message.PatNum = SheetCur.PatNum; message.ToAddress = FormS.Email2Address; message.FromAddress = PrefC.GetString(PrefName.EmailSenderAddress); message.Subject = SheetCur.Description.ToString() + " to " + Referrals.GetNameFL(referral.ReferralNum); //this could be improved EmailAttach attach = new EmailAttach(); string shortFileName = Regex.Replace(SheetCur.Description.ToString(), @"[^\w,'@-_()&]", ""); attach.DisplayedFileName = shortFileName + ".pdf"; attach.ActualFileName = fileName; message.Attachments.Add(attach); FormEmailMessageEdit FormE = new FormEmailMessageEdit(message); FormE.IsNew = true; FormE.ShowDialog(); } //g.Dispose(); DialogResult = DialogResult.OK; }